Div透明。里面的文字不透明

时间:2013-04-22 10:34:50

标签: css transparency

是否可以使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 */
}

1 个答案:

答案 0 :(得分:6)

Opacity设置di​​v内的所有内容,无法覆盖它。

使用rgba着色背景的方法:

#four {
    background: rgba(255, 0, 0, .3);
...
}

这使用红色,绿色,蓝色和alpha值(非常像Photoshop)而不是十六进制来计算颜色,因为它是背景颜色,它不会影响子元素。

http://jsfiddle.net/5Jmzh/1/

:)