如何让这个渐变在chrome中工作?

时间:2012-12-07 20:13:32

标签: css gradients

对,我不知道如何让这个渐变在chrome中起作用:

background: linear-gradient(to bottom, rgb(25, 130, 185) 0%, rgb(3, 100, 150) 50%, rgb(1, 77, 117) 100%) repeat scroll 0% 0% transparent;

我理解chrome我需要使用一些webkit特定的规则吗?

5 个答案:

答案 0 :(得分:0)

您需要使用-webkit-供应商前缀(所有浏览器to bottom应为top

background: -webkit-linear-gradient(top, rgb(25, 130, 185) 0%, rgb(3, 100, 150) 50%, rgb(1, 77, 117) 100%) repeat scroll 0% 0% transparent;

答案 1 :(得分:0)

用于镀铬

-webkit-linear-gradient

另外,使用top而不是bottom

答案 2 :(得分:0)

我相信你仍然需要针对Chrome的webkit特定规则。试试这个语法:

background: -webkit-gradient(linear, left top, left bottom, from(#000), to(#000));

那应该适合你。

http://robertnyman.com/2010/02/15/css-gradients-for-all-web-browsers-without-using-images/

答案 3 :(得分:0)

我认为webkit前缀版本只是-webkit-linear-gradient。你的问题可能是你的第一个arg是“到底”而不仅仅是“底部”?

background: linear-gradient(to bottom, rgb(25, 130, 185) 0%, rgb(3, 100, 150) 50%, rgb(1, 77, 117) 100%) repeat scroll 0% 0% transparent;
background: -webkit-linear-gradient(top, rgb(25, 130, 185) 0%, rgb(3, 100, 150) 50%, rgb(1, 77, 117) 100%) repeat scroll 0% 0% transparent;

在此处查看此操作:http://jsfiddle.net/KAD2E/

答案 4 :(得分:0)

除了基于Webkit的浏览器之外的所有最新浏览器都删除了前缀并实现了最新语法:Fx(常规和ESR),IE 10,Opera 12.10。

对于Chrome和Safari,您仍需要旧的语法,前缀为。

原始语法(-webkit-gradient(linear,...))不再需要,因为几乎不再需要使用它的浏览器。

最后一点:标准的执行方式必须始终是声明的最后一个属性。这样,对于实现它的浏览器,它总是优先于可能有错误的旧行为。

所以写它的正确方法是:

background: -webkit-linear-gradient(top, rgb(25, 130, 185) 0%, rgb(3, 100, 150) 50%, rgb(1, 77, 117) 100%) repeat scroll 0% 0% transparent;
background: linear-gradient(to bottom, rgb(25, 130, 185) 0%, rgb(3, 100, 150) 50%, rgb(1, 77, 117) 100%) repeat scroll 0% 0% transparent;

来源:linear-gradient on the MDN