css - 动画需要哪些前缀?

标签 css css-animations

问我一个问题。当我使用 -webkit- 前缀(或另一个前缀)创建动画时,我只需要使用此前缀编写属性,或者我必须添加所有前缀。

例如

@-webkit-keyframes bounce {
    0% {
        -webkit-transform: scale(0);
    }
    100% {
        -webkit-transform: scale(1);
    }
}

@-webkit-keyframes bounce {
    0% {
        -webkit-transform: scale(0);
        -moz-transform: scale(0);
        -ms-transform: scale(0);
        -o-transform: scale(0);
        transform: scale(0);
    }
    100% {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
}

最佳答案

因为只有 WebKit 浏览器可以应用 @-webkit-keyframes 规则,所以在这些规则中包含任何其他前缀是没有任何意义的。

您想为 @keyframes 规则包含其他前缀,而不是其中的属性。里面的属性在适当的地方使用匹配的前缀:

@-webkit-keyframes bounce {
    0% { -webkit-transform: scale(0); }
    100% { -webkit-transform: scale(1); }
}

@-moz-keyframes bounce {
    0% { -moz-transform: scale(0); }
    100% { -moz-transform: scale(1); }
}

@-o-keyframes bounce {
    0% { -o-transform: scale(0); }
    100% { -o-transform: scale(1); }
}

@keyframes bounce {
    0% { transform: scale(0); }
    100% { transform: scale(1); }
}

(没有@-ms-keyframes,也没有必要在@keyframes中使用-ms-transform。)

关于css - 动画需要哪些前缀?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14015135/

相关文章:

html - 动态左浮动 UL 在左浮动 DIV 内

html - 如何使用 calc(100%-50px) 从顶部减去像素?

jquery - 查找鼠标当前指向的 html 元素的 font-family?

html - 加载新元素时为元素添加动画

jquery - 使用 css 关键帧将跨度文本更改为图标

html - 如果选择器不再匹配,如何将 CSS3 动画运行到最后?

jquery - 根据视口(viewport)稍微向上或向下移动一个 div

html - 如何解决上传到 html 文件时图像颜色褪色的问题

jquery - Firefox 不会在使用 jQuery AJAX 加载的内容上呈现 CSS 样式

css - 动画中的剪辑路径和 SVG 矩形