【发布时间】:2013-11-30 06:08:34
【问题描述】:
我们计划了很多动画,并且正在寻找一种更简洁的方式来处理所有浏览器。像这样的sass-y会很棒:
@each $browser in '-webkit-', '-moz-', '-o-', '-ms-' {
@#{$browser}keyframes rotate {
from { #{$browser}transform: rotate(0deg);}
to { #{$browser}transform: rotate(360deg);}
}
}
除了@#{$vendor}keyfr... 产生错误,需要@ 之后的数字或函数。有没有办法强制@ 进入css?
否则,有没有人想出一种更简洁的方法来使用@each、@mixin 或其他任何可以避免列出每个浏览器的每个动画(即下面)的方法?
@-webkit-keyframes rotate {
from { -webkit-transform: rotate(0deg);}
to { -webkit-transform: rotate(360deg);}
}
@-moz-keyframes rotate {
from { -moz-transform: rotate(0deg);}
to { -moz-transform: rotate(360deg);}
}
@-o-keyframes rotate {
from { -o-transform: rotate(0deg);}
to { -o-transform: rotate(360deg);}
}
@-ms-keyframes rotate {
from { -ms-transform: rotate(0deg);}
to { -ms-transform: rotate(360deg);}
}
【问题讨论】:
-
如果您使用 Compass:stackoverflow.com/a/17621055/557612 我个人更喜欢在后期处理阶段使用 autoprefixer。
标签: css cross-browser sass css-animations vendor-prefix