Используя собственные классы Bootstrap, у меня есть список элементов .list-group-item
, в котором есть некоторые доступные для клика параметры, которые отображаются как выпадающие списки в .dropdown-menu
. По умолчанию это работает отлично, даже если выпадающий список одного элемента .list-group-item
переместится над тем, который находится под ним.
То, что я добавил, - это объявление animation
, которое исчезает в .list-group-item
, используя анимацию @keyframes
, идущую от opacity:0
до opacity:1
. И как побочный эффект этого, каждый элемент .list-group-item
визуально отображается в выпадающем меню из предыдущего.
(на самом деле нет каких-либо объявлений z-index
, я использовал этот термин только в заголовке, чтобы проиллюстрировать возникновение проблемы)
Мне интересно, есть ли какой-то обходной путь для этой переполняющей проблемы, которая позволила бы мне сохранить анимацию затухания для элементов?
Пример можно увидеть на следующем скрипте (нет javascript, который включен или включен там, поскольку это не обязательно, поэтому оба раскрывающегося списка просто объявлены как открытые в HTML-коде, чтобы проиллюстрировать ситуацию):
https://jsfiddle.net/o8ysz4qp/2/
HTML:
<div class="list-group-item fade-in">
<div class="pull-right dropdown open">
<button class="btn btn-primary">
↓
</button>
<ul class="dropdown-menu">
<li><a href="#">One</a></li>
<li><a href="#">Two</a></li>
<li><a href="#">Three</a></li>
</ul>
</div>
<p>Lorem ipsum dolor sit amet</p>
</div>
<div class="list-group-item fade-in">
<div class="pull-right dropdown open">
<button class="btn btn-primary">
↓
</button>
<ul class="dropdown-menu">
<li><a href="#">One</a></li>
<li><a href="#">Two</a></li>
<li><a href="#">Three</a></li>
</ul>
</div>
<p>Lorem ipsum dolor sit amet</p>
</div>
CSS
.fade-in {
opacity: 0;
animation:fade-in .5s ease;
animation-fill-mode: forwards;
animation-delay:1s;
}
@keyframes fade-in {
from { opacity:0; }
to { opacity:1; }
}