是否可以使div透明但保持文本不透明?
(我能想象的唯一解决方案是将文本放在div之外,并尝试使用z-index将其放在div的顶部。但这会非常复杂,因为我有一个非常复杂的菜单)
以下是简化案例:http://jsfiddle.net/5Jmzh/3/
HTML:
<ul class="menu">
<li>first</li>
<li id="second"> second </li>
<li>third</li>
</ul>
CSS:
#second {
background:red;
opacity: 0.3;
filter: alpha(opacity = 30); /* A lower value makes the element more transparent */
}
答案 0 :(得分:6)
Opacity设置div内的所有内容,无法覆盖它。
使用rgba着色背景的方法:
#four {
background: rgba(255, 0, 0, .3);
...
}
这使用红色,绿色,蓝色和alpha值(非常像Photoshop)而不是十六进制来计算颜色,因为它是背景颜色,它不会影响子元素。
:)