镀铬径向css渐变光滑度

时间:2012-04-14 21:25:25

标签: google-chrome css3 safari

我正在使用chrome 18.0.1025.162并尝试做径向渐变

-webkit-radial-gradient(circle, rgba(100, 100, 100, 0.2), rgba(0, 0, 0, 0.9))

问题在于渐变是非常像素化的,颜色和alpha的过渡是块状而不是平滑的。这在Safari和Firefox中有所不同。 Safari& Firefox做得非常顺利

这是Chrome的错误吗?任何人都有同样的问题。它如此简单的渐变!!当然,像这样简单的事情不会是一个小故障

查看:http://jsfiddle.net/GyRLe/1/了解我的意思。

有解决方案吗?图像太可怕了:(

(好的,看看平滑度有多糟糕): 这是我使用它时得到的: http://i.imgur.com/UYB1d.png(Chrome)
http://i.imgur.com/tzGuq.png(Safari)(看起来有点前卫,但那是因为png,否则它接近完美的平滑度)

Firefox和Safari一样好,只是Chrome正在做得很糟糕 我需要alpha,因为我在背景中放置了重复样式图像

编辑:Chrome 20(Canary)也有这个可怕的问题!

Edit2:我们使用CSS的原因是我们不必使用图像!所以我已将此添加到http://code.google.com/p/chromium/issues/detail?id=123491&希望谷歌得到他们的行为直接,因为我认为铬是美好的

3 个答案:

答案 0 :(得分:3)

如果您不需要alpha值,使用rgb代替rgba看起来会更顺畅。

演示:http://jsfiddle.net/tKtV9/

答案 1 :(得分:1)

我知道它已经很久以前发布了,但我在使用Chrome 24时遇到了同样的问题(强烈绑定):

-webkit-radial-gradient(center, ellipse cover,  #XXXXXX 0%,#YYYYYY 100%);

但我意识到使用下面的代码几乎消失了:

-webkit-gradient(radial, center, 0px, center, 100%, color-stop(0%,#XXXXXX), color-stop(100%,#YYYYYY));

希望这有帮助。

编辑:我已经看到-webkit-gradient(radial,...)只是径向渐变显示的旧语法,因此它不应该是该问题的长期答案...

答案 2 :(得分:0)

在这种情况下没什么用,但我注意到添加了

width: x-value;
height: y-value;

有时可以提供帮助。当然,X值和Y值是您的尺寸。