我创建了我的新作品集,我在CSS中有渐变的问题。我使用CSS Gradient Generator将渐变透明转换为紫色转换为紫色。当然,在我的代码中,旧版浏览器也有多行,但W3C行看起来像这样:
background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(42,28,80,0.29) 29%,rgba(42,28,80,1) 100%);
我在Firefox上遇到了非常奇怪的行为。 http://i.stack.imgur.com/8cN1M.jpg
为该代码带来bug:
background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(42,28,80,1) 29%,rgba(42,28,80,1) 100%);
http://i.stack.imgur.com/Utrgr.jpg
看起来渐变不知道如何在rgba(255,255,255,0)到紫色之间进行转换,当它下面有图像时。我将背景中的图像更改为正常颜色,渐变效果很好。有可能解决吗?
答案 0 :(得分:3)
我还设法在低于Firefox 36的版本上修复它。
Firefox有问题在白色透明和颜色之间产生漂亮的过渡,最简单的修复方法是将第一个alpha-0颜色更改为与alpha-1相同的颜色,所以这个:
background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(42,28,80,1) 100%);
应改为:
background: linear-gradient(to right, rgba(42,28,80,0) 0%, rgba(42,28,80,1) 100%);
答案 1 :(得分:2)
这已在Firefox 36中由bug 591600
修复从Firefox 36开始,渐变将使用预乘颜色,这将使透明工作转换为您希望的方式。