当前位置: 首页 > 面试题库 >

您应该如何在CSS3动画中为变换属性添加前缀?

陆伟
2023-03-14
问题内容

我有以下Sass片段,其工作方式像一个超级按钮,但我想知道是否需要为我的变换属性添加前缀,如果需要,请添加前缀吗?(如果没有,为什么不呢?)

@mixin expand-o-band() {
    0%   { opacity: 1; transform: scale(1); }
    100% { opacity: 0; transform: scale(2); }
}

@-webkit-keyframes expand-o-band { @include expand-o-band(); }
@-moz-keyframes expand-o-band { @include expand-o-band(); }
@-o-keyframes expand-o-band { @include expand-o-band(); }
@keyframes expand-o-band { @include expand-o-band(); }


.circle-thing {
    -webkit-animation: expand-o-band 1.5s infinite; /* Safari 4+ */
    -moz-animation:    expand-o-band 1.5s infinite; /* Fx 5+ */
    -o-animation:      expand-o-band 1.5s infinite; /* Opera 12+ */
    animation:         expand-o-band 1.5s infinite; /* IE 10+, Fx 29+ */
}

请注意,我并不是问要使用诸如autoprefixer之类的东西来帮我这样做,但是我需要html" target="_blank">添加到我的混入中以使其与最广泛的浏览器兼容吗?


问题答案:

鉴于:

我没有问使用类似autoprefixer的东西

这取决于[您要支持的 浏览器和版本

-ms-可以用于IE9(根本不支持IE9以下),但是,仅在IE10+中支持动画,因此,如果要动画化包含ms前缀的转换,则是多余的

-webkit- 可用于Chrome 35、31,Safari和android浏览器

@mixin expand-o-band() {
    0%   { 
       opacity: 1; 
       -ms-transform: scale(1); /* <--- not necessary */
       -webkit-transform: scale(1); 
       transform: scale(1); 
    }
    100% { 
       opacity: 0; 
       -ms-transform: scale(2);  /* <--- not necessary */
       -webkit-transform: scale(2); 
       transform: scale(2); 
    }
}

通常,强烈建议使用诸如autoprefixer之类的解决方案,因为它们使您可以编写简洁的CSS,然后清楚地定义希望支持的浏览器及其(旧版)版本。这样做的好处是,您的源中不太可能包含以后可能与您(以及您的最终用户群)无关的项目,并且消除了正确包含正确的实现的担忧。



 类似资料:
  • 正如苹果文档所说:“变换指定应用于接收器的变换,相对于其边界中心。 @属性(非原子)CGAffineTransform变换 讨论转换的原点是中心属性的值,如果更改了,则是层的anchorPoint属性。(使用层属性获取底层Core Animation层对象。)默认值为CGAffineTransformIdentity。 可以设置对此属性的更改的动画。使用beginAnimations:contex

  • 本文最初发表于[博客园](),并在GitHub上持续更新前端的系列文章。欢迎在GitHub上关注我,一起入门和进阶前端。 以下是正文。 前言 本文主要内容: 过渡:transition 2D 转换 transform 3D 转换 transform 动画:animation 过渡:transition transition的中文含义是过渡。过渡是CSS3中具有颠覆性的一个特征,可以实现元素不同状态

  • 我正在尝试在我的java spring项目中的swagger定义中添加新的属性。我已阅读文档并特别 https://springfox.github.io/springfox/docs/snapshot/#plugins 例如,我有这个定义: 我想要: 你能帮我在定义中添加meteo属性吗?在本例中,我的目标是以编程方式添加attribute,而不使用注释。

  • 我如何添加一些自定义属性? 到目前为止,我使用了以下语法 ...但是它不能读取文件,因为它不能识别“changetype”属性。 如何添加该属性?

  • 问题内容: 我试图让CSS动画属性在完成后保留,这可能吗? 这就是我想要实现的目标… 当用户登陆页面时,该元素应该被隐藏,在3秒钟(或任何其他时间)之后,该元素应淡入,动画完成后应留在该页面上。 这是一个小提琴尝试… 这是保存代码… 我知道如何使用jQuery ..就像这样… 问题答案: 我认为您正在寻找CSS3属性 animation-fill-mode CSS属性指定CSS动画在执行之前和之后

  • #animated_div{ width:76px; height:47px; background:#92B901; color:#ffffff; position:relative; font-weight:bold; font-size:20px; padding:10px; animation:animated_div 5s 1;