【问题标题】:CSS Opacity inheritance issue [duplicate]CSS不透明度继承问题[重复]
【发布时间】:2012-04-21 16:06:57
【问题描述】:

可能重复:
CSS Opacity Property

我正在一个具有透明度的图像上创建一个图层,但我在那里遇到了问题。

当我在图层上写下任何文本时,它们也会获得相同的透明度。

我认为是因为继承问题,并添加了“位置:相对”来重置我的子 div,但它根本不起作用。

我只想重置子div的不透明度(下面的#TXT)。

这是我的代码。

<!DOCTYPE html>
<html>
<header>
    <meta charset="UTF-8">
    <style type="text/css">
        *{margin: 0; padding:0; background-color: #555;}
        #wrapper {
            margin:0 auto; 
            background-color: white;
            width: 922px;
            height:349px;
            margin-top: 150px;
            -webkit-box-shadow: 0px 0px 7px 7px #333;
            -moz-box-shadow: 0px 0px 7px 7px #333;
            }   

        #ImgSection {
            width: 922px;
            height: 349px;
            background-color: white;
            position: absolute;
            background: url("brand-new-car.jpg") -50px -200px no-repeat;
            }

        #TxtSection {
            width: 322px;
            height: 349px;
            background-color: #222;
            opacity: .5;        
            float: right;
            -webkit-box-shadow: inset 3px 0px 3px 0px black;
            -moz-box-shadow: inset 3px 0px 3px 0px black;
            }

            #TXT{
            position: relative;
            font-size: 50px;
            opacity: 1;
            }

    </style>
    <script type="text/javascript">

    </script>
</header>
<body>
    <div id="wrapper">
        <div id="ImgSection"></div>
        <div id="TxtSection">
            <div id="TXT">dsdsad</div>
        </div>
    </div>
</body>
</html>

图片brand-new-car.jpg的大小是1024x768。

我想知道如何重置#TXT 的不透明度。

请帮忙。

提前致谢。

【问题讨论】:

标签: html css opacity


【解决方案1】:

您好,我提到了一个属性,您可以通过它增加和减少背景的不透明度,并且不会影响文本颜色,简单地看 css,基本上您必须在背景 alpa 中使用 rgb 颜色来获得不透明度。

背景:rgba(146,146,146,0.1);

或查看示例:- http://jsfiddle.net/8LFLd/3/

【讨论】:

    【解决方案2】:

    如果您想以透明方式进行图像处理,因为 hsla 或 rgba 仅适用于颜色,您将不得不改变自己的方式。您必须修改 HTML,取出文本包装器,然后将其放置在图像层上。这是唯一的出路。

    在这里,您可以找到支持相同 hack 的 Chris Coyier。 http://css-tricks.com/non-transparent-elements-inside-transparent-elements/

    【讨论】:

      【解决方案3】:

      您无法重置不透明度。它被所有后代继承。

      但是:

      • 您可以对文本和边框使用 rbga/hsla/alpha-png 背景和 rgba/hsla 颜色,以达到类似的效果(但需要更多工作)。

      【讨论】:

        猜你喜欢
        • 2012-03-01
        • 2013-11-02
        • 1970-01-01
        • 1970-01-01
        • 2016-04-28
        • 2011-07-08
        • 1970-01-01
        • 2019-08-06
        • 1970-01-01
        相关资源
        最近更新 更多