码迷,mamicode.com
首页 > 其他好文 > 详细

怎么实现背景透明而文字不被透明

时间:2017-10-14 22:39:20      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:前言   die   pad   end   number   att   microsoft   tle   rgba   

前言:

   我们知道使用opacity可以实现透明效果,兼容语句是:filter:alpha(opacity=0~100);但是它具有父子继承特性,怎么实现我们想要的效果呢?

方法一:运用CSS3的属性rgba(R,G,B,A),IE8以上的版本可以达到我们的要求:

R:红色值。正整数 | 百分数

G:绿色值。正整数 | 百分数

B:蓝色值。正整数 | 百分数

A:Alpha透明度。取值0~1之间。

那么IE8及以下怎么办呢?再加一句:

filter:progid:DXImageTransform.Microsoft.gradient(startcolorstr=#7F000000,endcolorstr=#7F000000);
#7F000000的前两位数字控制透明度,取值16进制从00 -> FF(越小越透明),00表示完全透明,FF就是全不透明,后面六位是色值。
方法二:用opacity,但是让文字与div之间不再是父子关系,通过定位或margin值来实现我们想要的效果,这方法可以实现当我们不是纯色背景(图片)图片透明
的需求。
<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style>
        *{margin:0;padding:0;}
        .box{position:relative;margin:0 auto;width:300px;}
        .box1{
            width:300px;
            height:200px;
            background: green;
            opacity:.5;
        }
        p{
            width:300px;
            text-align:center;
            color:red;
            font:bold 20px/20px "微软雅黑";
            position:absolute;top:50%;}
    </style>
</head>
<body>
    <div class="box">
        <div class="box1"></div>
        <p>字体不被透明</p>
    </div>
</body>
</html>

 这是之前遇到的坑,希望对你有所帮助,有问题大家可以一起讨论...........

 

怎么实现背景透明而文字不被透明

标签:前言   die   pad   end   number   att   microsoft   tle   rgba   

原文地址:http://www.cnblogs.com/luyangdong/p/7668703.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!