【发布时间】:2013-04-08 09:01:26
【问题描述】:
我想创建一个仅由类名驱动的展开/折叠动画(javascript 用于切换类名)。
我正在上一节课max-height: 4em; overflow: hidden;
还有另一个max-height: 255em;(我也试过none这个值,根本没有动画)
这个动画:transition: max-height 0.50s ease-in-out;
我使用 CSS 过渡在它们之间切换,但浏览器似乎正在为所有这些额外的 em 设置动画,因此它会在折叠效果中产生延迟。
有没有一种方法(本着同样的精神 - 使用 css 类名)没有那种副作用(我可以降低像素数,但这显然有缺点,因为它可能会切断合法性text - 这就是价值大的原因,所以它不会切断合法的长文本,只会切断可笑的长文本)
查看 jsFiddle - http://jsfiddle.net/wCzHV/1/(点击文本容器)
【问题讨论】:
-
不完美的解决方案:jsfiddle.net/wCzHV/2 这可以接受吗?
-
@Passerby - 可能有负边距,但您的示例似乎不支持具有任意高度或暴露预设数量的行(这些东西在原始文件中都得到支持并且是必不可少的)
-
这就是为什么我不将其作为答案发布的原因。这个问题已经在 SO 上被问过,我想说在纯 CSS 中实现几乎是不可能的(如果你不想硬编码一些值)。如果你真的需要这样做,请使用 JS。
-
我担心它可能不可能,这太糟糕了,我讨厌看到它几乎可以工作
标签: css css-transitions css-animations