zoukankan      html  css  js  c++  java
  • css背景透明文字不透明

    测试背景透明度为0.3。文字不透明:

    background-color: #000;
    /* 一、CSS3的opacity */
    opacity: 0.3;  /* 兼容浏览器为:firefox,chrome,IE9+  文字也跟着透明*/
    /* 二、CSS3的rgba */
    background: rgba(0, 0, 0, 0.3); /* 兼容浏览器为:firefox,chrome,IE9+  其中IE8,IE7,IE6解析为背景全透明  文字不透明 */
     /* 三、IE专属滤镜 */ 
    filter:alpha(opacity=30);
    *zoom: 1;
    /* 兼容浏览器为:IE6,7,8,9(需触发haslayout)* 文字透明 当设置div里面元素的属性为rel相对定位,文字不透明*/
    /*或*/
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#4d000000,endColorstr=#4d000000);
    *zoom: 1;  /*兼容浏览器也是IE6,7,8,9 无须设置rel 文字不透明*/
    /*其中startColorstr的组成,前面是00~FF 00表示完全透明相当于opacity=0;FF表示1完全不透明相当于opacity=100 */
    var s=0xFF; alert(parseInt(s));FF的十六进制为255;
    /*换算0.3的透明度:255*0.3=76.5~=77*/ var s=77;alert(s.toString(16)); //77转16进制为4d

    当要使得文字不透明,使用二,三时,ie9两个属性都支持一起使用会重复降低不透明度。

    解决方案一:只针对ie7,8使用滤镜,其他用rgba处理。

    注意:据说是IEtester不支持滤镜,所以测试不到ie6的效果

            .box {
                background: rgba(0, 0, 0, 0.3);
            }
    
            @media screen\,screen9  {
                /* 只支持IE6、7、8 */
                .box {
                    background-color: #000;
                    filter: alpha(opacity=30);
                    *zoom: 1;
                }
            }
    
            .box p { position: relative; }

    解决方案二:使用:root .test{filter:none;}可以去除IE9下的滤镜 (推荐使用,代码量少)

    其中.test为添加filter的class。

  • 相关阅读:
    atitit.为什么技术的选择方法java超过.net有前途
    HDU 4022 Bombing STL 模拟题
    定制XP引导屏幕背景图像和替换windows这句话
    《STL源代码分析》---stl_heap.h读书笔记
    2015在大型多人在线游戏市场报告
    于Unity3D调用安卓AlertDialog
    jQuery整理笔记5----jQuery大事
    推断字符串数组里面是空的
    软测试-数据结构
    2014第18周三
  • 原文地址:https://www.cnblogs.com/zhaojieln/p/4334536.html
Copyright © 2011-2022 走看看