【发布时间】:2014-11-12 17:14:36
【问题描述】:
#wrapper {
padding: 20px;
background-image: url('http://s492610445.online.de/images/background.jpg')
}
#a {
padding: 25px;
background: #000;
opacity: 0.7;
}
h2 { font-family: sans-serif; color: #fff; margin: 5px 0; }
<div id="wrapper">
<h2>orig. Image</h2>
<img src="http://s492610445.online.de/cat/pizza.png" />
<div id="a">
<h2>Image in tag with 0.7 opacity</h2>
<img src="http://s492610445.online.de/cat/pizza.png" />
</div>
</div>
我对 CSS 规则感到困惑。我正在对页面进行一些调整,我看到了一些我以前见过的新东西。有一个黑色背景的PNG,当父标签也有黑色背景并且不透明度值 PNG 的黑色部分也会变得透明。这怎么可能?
【问题讨论】:
-
你有没有注意到不那么黑的部分也变成了透明的。这是预期的行为。
-
也许适合你。在 Photoshop 中尝试相同的操作。你会看到,这是有区别的。看起来,浏览器正在将整个 div(具有不透明度规则)预先组合成一个 png,而不是让它变得透明。对我来说,这不是例外行为。
-
好的,然后是 Photoshop 示例。在 Photoshop 中打开 Pizza.png。在其后面放置一个纯黑色图层。将两个图层都放在图层集中。设置不透明度 图层集 的不透明度为 70%。将 background.jpg 放在图层集后面并观察结果。
标签: css png transparency alpha