背景混合模式问题与固定的背景附件

问题描述:

我在我的CSS文件中设置以下样式,以将我的html背景设置为舒缓渐变。但是,如果内容的高度不是屏幕的100%,则会出现问题,渐变将被切断并重复。因此,我添加了background-attachment: fixed;行,以便渐变填充页面。但现在混合模式不起作用。之前,由于background-blend-mode: screen;,我有一个舒缓的光色组合,但现在颜色更亮。我怎样才能解决这个问题?我正在使用最新版本的Mozilla Firefox。背景混合模式问题与固定的背景附件

body { 
    background: 
     linear-gradient(
      cyan, 
      transparent 
     ), 
     linear-gradient(
      -45deg, 
      magenta, 
      transparent 
     ), 
     linear-gradient(
      45deg, 
      orange, 
      transparent 
     ); 
    background-blend-mode: screen; 
    background-attachment: fixed; //added later to fill the background 
} 

Here is the jsfiddle link.

预计输出

Expected output

什么我得到

What I am getting

+0

这是为我工作以及对铬。你正在使用哪种浏览器? – 2014-10-06 13:39:05

+0

Mozilla Firefox 32.0.3 – 2014-10-06 13:40:14

+0

它似乎正确地为我工作,但是如果您可以发布一张不合适的外观的照片,这将有所帮助。不知道颜色差异有多“明亮”。我也使用FF 32.0.3。 – CJdriver 2014-10-06 13:47:18

这个你的问题就解决了

html{ 
    width:100%; 
    height:100%; 
} 
body { 
    background: 
     linear-gradient(
      cyan, 
      rgba(255,255,255,0) 
     ), 
     linear-gradient(
      -45deg, 
      magenta, 
      rgba(255,255,255,0) 
     ), 
     linear-gradient(
      45deg, 
      orange, 
      rgba(255,255,255,0) 
     ); 
    background-blend-mode: screen; 
} 
+2

当我需要在页面中滚动时,这将无法正常工作。 – 2014-10-06 14:03:44

+0

您正在设置整个“文档”的高度。 这工作正常。 不是'

'的高度。 – AvrilAlejandro 2014-10-06 17:47:50

好吧,它看起来像你的CSS中的'透明'是黑色透明的。如果您将其设置为白色透明,那么您将获得所需的外观。正如瓦尔斯所说,如果再次遇到这个问题,黑透明是未来参考的标准。

看看小提琴。应该把你全部弄清楚。

小提琴。 http://jsfiddle.net/f90vwhw3/3/

CSS来解决:

body { 
     background: 
       linear-gradient(
         cyan , 
         rgba(255,255,255,0) 
       ), 
       linear-gradient(
         -45deg, 
         magenta, 
         rgba(255,255,255,0) 
       ), 
       linear-gradient(
         45deg, 
         orange, 
         rgba(255,255,255,0) 
       ); 
     background-blend-mode: screen; 
     background-attachment: fixed; 
} 
+0

黑色透明是* transparent的标准* – vals 2014-10-06 19:34:13

+0

@vals我意识到这一点。我应该用不同的措辞,但白色透明解决它。没有很好地解释我的答案。 – CJdriver 2014-10-07 00:19:30

+0

对不起,我没有很好地解释自己。你的答案没问题。我只是清楚地表明透明的透明呈黑色透明遵循w3c标准 – vals 2014-10-07 05:21:58