Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 通过CSS添加CSS背景图像层_Html_Css - Fatal编程技术网

Html 通过CSS添加CSS背景图像层

Html 通过CSS添加CSS背景图像层,html,css,Html,Css,我有一个DOM元素: <div style="background-image: url(layer1.png)">...</div> 因此,我需要有所有3层作为背景图像的DIV。 纯HTML5 CSS3有可能吗?不,不可能。将会发生什么: 您的div{}规则的优先级低于内联css,因此您的内联cssbackground image将覆盖以前的规则,而不是附加到它 解决方案: 使用子元素或:before/:after应用layer1.png .wrapper{ 高度:

我有一个DOM元素:

<div style="background-image: url(layer1.png)">...</div>
因此,我需要有所有3层作为背景图像的DIV。
纯HTML5 CSS3有可能吗?

不,不可能。将会发生什么:

您的
div{}
规则的优先级低于内联css,因此您的内联css
background image
将覆盖以前的规则,而不是附加到它

解决方案:

使用子元素或
:before
/
:after
应用
layer1.png

.wrapper{
高度:200px;
宽度:300px;
背景图像:径向梯度(rgba(255,255,255,0.85)0%,rgba(236,245,245,0.19)75%,rgba(236,245,245,0)100%);
位置:相对位置;
}
.包装部{
位置:绝对位置;
左:10%;
排名前10%;
宽度:80%;
身高:80%;
}
身体{
背景色:黑色;
}

不,不可能。将会发生什么:

您的
div{}
规则的优先级低于内联css,因此您的内联css
background image
将覆盖以前的规则,而不是附加到它

解决方案:

使用子元素或
:before
/
:after
应用
layer1.png

.wrapper{
高度:200px;
宽度:300px;
背景图像:径向梯度(rgba(255,255,255,0.85)0%,rgba(236,245,245,0.19)75%,rgba(236,245,245,0)100%);
位置:相对位置;
}
.包装部{
位置:绝对位置;
左:10%;
排名前10%;
宽度:80%;
身高:80%;
}
身体{
背景色:黑色;
}

内联样式将完全替换CSS为该元素定义的属性

您可以做的是创建一个父元素和子元素作为层,然后在
z-index
的帮助下对其进行分层,然后使用
opacity
使其具有一定的透明度

HTML


内联样式完全替换CSS为该元素定义的属性

您可以做的是创建一个父元素和子元素作为层,然后在
z-index
的帮助下对其进行分层,然后使用
opacity
使其具有一定的透明度

HTML


只需将下一层添加到子层并更改不透明度。是否要使用Css将新的html元素添加到DOM中?不,我只想让div的background image属性包含所有三层。但是layer1.png是一个DB结果,第2层和第3层应该可以通过CSS编辑。我只是不想用DOM属性覆盖CSS值。只需将下一层添加到子层并更改不透明度。是否要使用CSS向DOM中添加新的html元素?不,我只想让div的背景图像属性包含所有三层。但是layer1.png是一个DB结果,第2层和第3层应该可以通过CSS编辑。我只是不想用DOM属性覆盖CSS值。谢谢,但我问题的主要原因是使用背景混合模式值,为此我需要一个DOM中的所有层。可以使用CSS变量吗?我不知道正确的方法,使用javascript编辑DOM值在这方面似乎太麻烦了。@Martin然后用内联cssThank编写所有背景,但我问题的主要原因是使用背景混合模式值,为此我需要一个DOM中的所有层。可以使用CSS变量吗?我不知道正确的方法,使用javascript编辑DOM值在这方面似乎太麻烦了。@Martin然后用内联css编写所有背景
div {
  background-image: url('layer2.png'),radial-gradient( rgba(255, 255, 255, 0.85) 0%, rgba(236, 245, 245, 0.19) 75%, rgba(236, 245, 245, 0) 100%);
}
<div class="layers">
  <div class="layer1" style="opacity: 0.2; background-image: url(foo.png);"> </div>
  <div class="layer2" style="opacity: 0.4;"></div>
  <div class="layer3" style="opacity: 0.2;"></div>
</div>
.layers{
  position:relative;
  width: 100px;
  height: 100px;
}

.layer1, .layer2, .layer3{
  position:absolute;
  top:0px;
  left:0px;
  width: 100%;
  height: 100%;
}

.layer1{ background-color: red; z-index: 0;}
.layer2{ background-color: orange; z-index: -1;}
.layer3{ background-color: pink; z-index: -2; }