Подтвердить что ты не робот

Twitter Bootstrap 100% высота аккордеона "прыжок"

Я пытаюсь реализовать аккордеон высотой 100%, используя компонент Collash Bootstrap collapse, точно так, как описано в этом question.

Я вручную устанавливаю высоты элементов .accordion-inner, как описано в этом .

Тем не менее, я испытываю "оживляющее" поведение при расширении/сгибании панелей. Я удалил все элементы /margin/border из элементов .accordion-inner, чтобы исключить эту возможность.

Это наиболее заметно в IE10, однако проблема также проявляется в Chrome.

Смотрите пример.

Любые идеи, что вызывает это "скачкообразное" поведение?

4b9b3361

Ответ 1

Позднее стороне, но:

У меня была аналогичная проблема, и я заметил, что если бы я удалил верхний край от элемента ниже коллапсирующего и заменил его padding-top, переход был плавным.

Итак - проверьте наличие полей на соседних элементах и ​​попробуйте заменить их дополнением, если это возможно.

Ответ 2

Я думаю, что "прыжок", который вы видите, связан с переходами CSS для класса .collapse.

Если вы посмотрите на этот SO-поток Отключив анимацию Twitter-загрузки Bootstrap Navbar, вы можете увидеть, как отключить переход с помощью переопределяющего класса CSS 'no- переход". Это не останавливает анимацию все вместе, но она ускоряет ее, так что скачок менее заметен...

Добавьте no-transition к вашим элементам аккордеона.

<div id="collapseOne" class="accordion-body collapse in no-transition">

Добавьте CSS..

.no-transition {
  -webkit-transition: height 0.001s;
  -moz-transition: height 0.001s;
  -ms-transition: height 0.001s;
  -o-transition: height 0.001s;
  transition: height 0.001s;
}

Обновлен плункер.. http://plnkr.co/edit/xnvDGcDd21iCu69wKSub?p=preview

Ответ 3

HTML:

<td><a data-toggle="collapse" href="#text1" aria-expanded="false" aria-controls="#text1"</a>
<div class="collapse" id="text1" aria-expanded="true" style="padding-top:5px"><img src="..."></div>

CSS

 .collapse.in{
    padding-bottom:5px;
 }

Ответ 4

У меня было это странное поведение, когда аккордеон расширялся до гораздо большей высоты, чем фактический видимый контент, а затем сворачивал (прыгал) обратно до фактической видимой высоты содержимого.

Оказывается, что у моего тела аккордеона для этой панели было несколько пустых элементов html, которые в моем случае были несколькими divs с классом col-sm-4 и ничего внутри них. Как только я прокомментировал их, это прыгающее поведение прекратилось. Надеюсь, это поможет кому-то с подобной проблемой.