У меня есть следующие CSS:CSS3 переход на высоту авто идет на высоту 0 первой
.foo
{
height:100px;
overflow:hidden;
-webkit-transition: height 200ms;
-moz-transition: height 200ms;
-o-transition: height 200ms;
transition: height 200ms;
}
.foo.open
{
height:auto;
}
Когда .foo
имеет автоматическую высоту, она будет высотой ~ 550px в зависимости от содержания.
Я добавляю класс open
с помощью jQuery, и я ожидал бы увидеть изменение высоты от 100px до ~ 550px в 200 мс с использованием переходов CSS3.
Однако, что именно происходит, это то, что высота изменяется от 100px до 0px, а затем перескакивает до ~ 550 пикселей.
Если я вместо этого изменить .open
, чтобы height:550px
затем works fine этого, однако длина содержание будет меняться и поэтому необходимо установить высоту для автоматического, а не фиксированной высоте пикселя.
Почему закрытие div вместо того, чтобы сдвигаться до ~ 550 пикселей, и как я могу решить эту проблему с анимацией?
возможно дубликат [CSS высота перехода: 0; to height: auto;] (http://stackoverflow.com/questions/3508605/css-transition-height-0-to-height-auto) –