我想使用 css 转换制作一个可扩展的块。
.box {
width: 300px;
max-height: 30px;
overflow: hidden;
background: #aaa;
-webkit-transition: max-height 400ms ease-in-out;
-moz-transition: max-height 400ms ease-in-out;
-ms-transition: max-height 400ms ease-in-out;
-o-transition: max-height 400ms ease-in-out;
transition: max-height 400ms ease-in-out;
}
.box.open {
max-height: 999px;
}
这是工作示例:http: //jsfiddle.net/qswgK/。
当我展开块时,它会很好地向下滑动,但是当我想折叠它时,它会出现一些延迟。这在最新版本的 Chrome、Firefox、Opera 和 IE 中很明显。为什么会发生这种情况,我可以在不使用 javascript 动画的情况下避免这种情况吗?
PS如果使用高度动画而不是最大高度,折叠效果很好,但我需要折叠和展开具有未知展开高度的块。