是否有“官方”/标准CSS3渐变语法?

时间:2010-04-12 11:26:18

标签: css css3 standards gradient

我知道有-webkit-gradient-moz-linear-gradient。但是定义渐变的标准方法是什么?

就像:-webkit-border-radius-moz-border-radius一样,标准是border-radius

3 个答案:

答案 0 :(得分:15)

2011年的更新,Mozilla syntax现在是adopted的'正式',CSS3 Image Values and Replaced Content Working DraftWebkit has been updated也使用此语法,现在已将其合并到最新版本的Chrome和Safari中。

答案 1 :(得分:4)

目前还没有,据我所知,您提供的两个示例是目前唯一可用的编码渐变。大多数CSS3改进记录在CSS3.info

答案 2 :(得分:2)

由于它在2011年2月到2012年1月之间发生了变化,因此linear-gradient语法尚未对浏览器进行“标准化”,这是好事:

来自 CSS图像值和替换的内容模块级别3

  

W3C Working Draft 17 February 2011

     

<强> 5.1.1。 'linear-gradient()'语法

<linear-gradient> = linear-gradient(
[ 
  [ [top | bottom] || [left | right] ] 
  | 
  <angle>
,]? 
<color-stop>[, <color-stop>]+
);
     

W3C Working Draft 12 January 2012

     

<强> 4.1.1。线性渐变()语法

<linear-gradient> = linear-gradient(
  [ [ <angle> | to <side-or-corner> ] ,]? 
  <color-stop>[, <color-stop>]+
)

回答你的问题:

  

不,没有标准指定渐变的方法。

这是因为没有标准

即使您认为 “标准”是您提出问题时 生效的“标准”,那么没有浏览器支持“标准”,因为“标准”已更改,并且没有浏览器支持新标准。