CSS3渐变透明度在Safari中无法正确显示

问题描述:

这是一个难题。下面的梯度并不在Safari中正确显示(在Firefox和Chrome):CSS3渐变透明度在Safari中无法正确显示

background: linear-gradient(transparent 124px, #de6230); 

我也曾尝试:

background: linear-gradient(rgba(255,0,0,0) 124px, #de6230); 

测试它的Safari浏览器,你会看到这个问题:jsFiddle

我该如何解决这个问题?

+0

我可以看到这个问题,很有意思。可能是浏览器错误? –

+0

实际发生了什么? – LGSon

+0

第二个应该工作。 @LGSon - [检查出来](https://www.w3.org/TR/css3-color/#transparent),它呈现为'rgba(0,0,0,0)',这可能会增加一些黑色色调阴影渐变/ –

Try: background:linear-gradient(rgba(255,255,255,0)124px,#de6230);

编辑:对不起,OP,虽然它是正确的颜色,但仍然看起来不像你的渐变,灰色中间只是变成了白色中间。我找到的解决方案是:

background: linear-gradient(rgba(222,98,48,0) 124px, #de6230); 

222,98,48是#de6230的rgb值,所以这应该工作。它从0%alpha的颜色过渡到100%alpha的颜色。

+0

嗯,OP写他已经试过.... – LGSon

+0

OP写他们试过(255,0,0,0)不(255,255,255,0) –

+0

你是否跟我开玩笑...都有alpha 0,这意味着完全透明 – LGSon

尝试:

background: -webkit-linear-gradient(rgba(255,0,0,0) 124px, #de6230); 
background: -moz-linear-gradient(rgba(255,0,0,0) 124px, #de6230); 
background: -o-linear-gradient(rgba(255,0,0,0) 124px, #de6230); 
background: linear-gradient(rgba(255,0,0,0) 124px, #de6230); 

或更换背景背景图像

background-image: -webkit-linear-gradient(rgba(255,0,0,0) 124px, #de6230); 
background-image: -moz-linear-gradient(rgba(255,0,0,0) 124px, #de6230); 
background-image: -o-linear-gradient(rgba(255,0,0,0) 124px, #de6230); 
background-image: linear-gradient(rgba(255,0,0,0) 124px, #de6230); 

+0

嗯,OP写道,他已经试过.... – LGSon

+0

我编辑了我的答案 –

+0

让我们看看'background-image:'会有所作为 – LGSon