【发布时间】:2013-12-20 02:50:23
【问题描述】:
当我放大使用 CSS3 的 transition 属性的页面时,例如宽度、高度、填充、边距等,当你放大和缩小时元素会发生变化。有没有办法禁用它?
JSFiddle:http://jsfiddle.net/forestka/fPBjB/
更新的 JSFiddle:http://jsfiddle.net/forestka/8jBjk/2/
【问题讨论】:
标签: html css css-transitions
当我放大使用 CSS3 的 transition 属性的页面时,例如宽度、高度、填充、边距等,当你放大和缩小时元素会发生变化。有没有办法禁用它?
JSFiddle:http://jsfiddle.net/forestka/fPBjB/
更新的 JSFiddle:http://jsfiddle.net/forestka/8jBjk/2/
【问题讨论】:
标签: html css css-transitions
在 stackoverflow 上查看这个答案:
https://stackoverflow.com/a/20549817/1985601
“它的工作原理是在您单击按钮时添加过渡 css,当您缩放浏览器窗口时,它会删除该 css。
这适用于 Firefox 和 Chrome,但不适用于 IE。在 Firefox 上,当您缩放时,过渡照常继续,并且缩放不会影响它。在 Chrome 上,转换快进到其最终状态。”
【讨论】:
在您的转换属性中指定all
你可以做类似的事情
transition: opacity 1s ease;
注意这里 (MDN) transition-property 在您使用 速记 版本时使用,因此您指定:
transition-property: all;
更具体地说,当您更改缩放时,左侧属性会更改,这就是触发转换的原因。请注意,当您使用 font-size 之类的东西时,没有动画,因为它不会在缩放时改变。
您可以将转换绑定到 ready 之类的事件并使用 javascript 触发它。
【讨论】:
all;如果您转换 left 属性(我需要这样做),也会发生同样的事情。