可以转换的CSS属性列表

时间:2014-04-05 10:39:49

标签: css css3 css-transitions

我正在研究CSS过渡,特别是哪些CSS属性可以过渡并且各自的浏览器支持。苦苦于在谷歌上找到任何全面的东西。

我相信并非所有CSS属性都是​​过渡性的。例如,background:不是,background-color:background-image:是。

这是否意味着CSS转换仅适用于长手语法?或许这个例子只是一个例外。

是否有人拥有可以转换的全面属性列表?

2 个答案:

答案 0 :(得分:4)

  

这是否意味着CSS转换仅适用于长手语法?或许这个例子只是一个例外。

它适用于速记属性,但仅适用于可动画的特定手绘组件。这在CSS Transitions spec中提到。

例如,如果您指定transition-property: background,它将起作用,但只有background-colorbackground-positionbackground-size,以及background-image中的渐变值,将进行动画处理,并根据为background转换指定的延迟,计时功能和持续时间进行动画制作。

我怀疑要求链接到属性列表可能是偏离主题的,但我可以说明显的是list of animatable properties and values found in the CSS Transitions module说:

  

以下定义定义CSS级别2修订版1([CSS21])和CSS颜色模块([CSS3COLOR])级别3中属性的动画行为。

因此,您只能在Transitions规范中找到与这些规范相对应的属性和值。

对于其他CSS3属性,无论是否 - 以及如何 - 它们都是可动画的,在各自的支持中有所描述。例如,border-radius的定义可以在Backgrounds and Borders module

  

动画:length, percentage, or calc

的两个值

background-image类似,border-radius是一个速记属性,由四个组成部分组成(每个角落一个)。您可以通过简单地指定transition-property: border-radius,以及恰好一个延迟,计时功能和持续时间,以完全相同的方式转换所有四个角。

答案 1 :(得分:0)

npm上有基于animatable-propertiesMDN list软件包。

console.log('First 10 properties by usage statistics:', animatable.popular()) console.log('All properties sorted alphabetically:', animatable.propertiesCSS)是一个数组,其中包含所有CSS格式的可设置动画的属性。

您还可以获得基于Chrome's anonymous usage statistics的使用流行度排序的列表。

<script src="https://unpkg.com/animatable-properties"></script>
{{1}}

该程序包还为每个属性提供语法,并能够验证该语法。