如何在一个元素上设置mix-blend-mode,而不是它的子元素?将子项设置为默认值normal似乎不起作用:
http://jsfiddle.net/uoq916Ln/1/
发布于 2016-11-04 21:03:33
如何避免mix-blend-mode影响孩子的解决方案:
mix-blend-mode;inner元素。将其设置为绝对位置,并将其放在其他元素之上;Live example
html
<div class="bkdg">
<div class="blend">
<div class="inner">
<h1>Header</h1>
</div>
</div>
</div>css
.blend {
position: relative; /* Make position relative */
width: 100%;
height: 100%;
}
.blend::before { /* Apply blend mode to this pseudo element */
content: '';
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
z-index: 1;
background-color: green;
mix-blend-mode: multiply;
}
.inner { /* This is our content, must have absolute position */
position: absolute;
z-index: 2;
}
h1 {
color: white;
}发布于 2015-07-27 00:13:22
有人评论说,整个区块都是用效果渲染的,这就是为什么你会有这个问题。我可以通过从块中删除h1,绝对位置和z索引1来完成你想要做的事情。
html
<div class="bkdg">
<h1>Header</h1>
<div class="blend">
</div>
</div>css
.blend {
background-color: green;
mix-blend-mode: multiply;
width: 700px;
height: 35px;
}
h1 {
color: white;
position: absolute;
top: -15px; left: 10px;
z-index: 1;
}https://stackoverflow.com/questions/31629541
复制相似问题