方法一:CSS3的background rgba

filter:progid:DXImageTransform.Microsoft.gradient(enabled='true',startColorstr='#7F000000',endColorstr='#7F000000');background:rgba(0,0,0,0.5);

常用的方法是rgba来实现背景透明度 兼容ie6 ie7 ie8的做法是用ie的滤镜实现

有个小问题就是通过这种方法实现背景透明度的话在ie系列下如果元素需要绑定事件,鼠标移动到透明区域总是不能准确获取元素。

方法二:opacity

在实际案例中opacity我们通常用在改变元素的透明度,而不是背景透明度。

opacity:0.5;filter: alpha(opacity=50);*zoom:1;

IE4-IE7使用filter: alpha(opacity=50),但要同时使该元素拥有hasLayout;

这种方法实现的话里面包含的元素也会被改变透明度。

有幸看了一下163的代码发现有个方法可以让子元素100%透明度的办法,就是设置position: relative;

<!DOCTYPE>
<html>
<head>
<title>opacity</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style>
body{background-color: red;}
.box{opacity:0.5;filter: alpha(opacity=50);*zoom:1;background-color: #000;width: 500px;height: 500px;text-align: center;line-height: 500px;font-size: 2em; color: #fff;}
.box p{position: relative;}
</style>
</head>
<body>
<div class="box">
<p>文字123文字123文字</p>
</div>
</body>
</html>

最终解决方法

如果产品需求只是简单的改变背景透明度,方法一就足够了。

但是如果还需要给有背景透明的的元素再绑定事件的话就要做一下调整了。

支持CSS3的浏览器用rgba,ie就用filter: alpha(opacity=50),子元素设置position: relative;

.box{background-color:#000;filter:alpha(opacity=50);background:rgba(0,0,0,0.5);}
.box p{position:relative;}

CSS控制元素背景透明度总结的更多相关文章

  1. css设置元素背景透明度的2种方式

    更新记录 本文迁移自Panda666原博客,原发布时间:2021年7月9日. 设置元素的背景的透明度可以使用2种方式:方式1:opacity属性.方式2:使用rgba值.两种方式有一点差异,opaci ...

  2. CSS 控制元素 上下左右居中

    不说废话,直接 搞起..... 首先,我们将题目 <css控制元素上下左右居中> 分析一下哈,我是将其分成了4部分信息: 1.CSS控制: 只用 CSS 来达成目的 2.元素:  不只是d ...

  3. CSS只改变背景透明度,不改变子元素透明度

    一般情况下,我们可以使用css的opcity属性改变某个元素的透明度,但是其元素下的子元素的透明度也会被改变,即使对子元素重新定义也没有用,例如: <div style="opacit ...

  4. css控制元素 水平垂直居中

    控制元素居中核心代码为 position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; css: /* 容器 */ .w ...

  5. css 设置元素背景为透明

    要设置某一元素的背景为透明,在 chrome .firefox.opera 下是这样的: rgba 中的最后一个参数 0.4 就是想要的透明度,范围在0-1之间. 在 ie 中一般是这样的: filt ...

  6. css控制元素高度自适应

    可以采用元素定位 + padding 的方式使特定元素高度自适应. css 样式: html,body{ height:100%; margin:; padding:; } .wrap { heigh ...

  7. css父元素背景覆盖其子元素背景

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. CSS 设置背景透明度,不影响子元素

    由于 opacity 属性能被子元素继承,使用它设置父元素背景透明度时也会影响子元素. 解决方法: 1> 使用 RGBA Example .classname { /* RGBa, 透明度0.6 ...

  9. CSS控制超链接

    一.伪类 CSS控制元素的某种状态---偽类(用于向某些选择器添加特殊的效果)    偽类的语法:元素标签 偽类名称{属性:属性值;} 二.超链接        a:link:未访问的链接       ...

随机推荐

  1. C++数组排序泛型算法

    //数组排序泛型算法 #include <vector> #include <iostream> #include <algorithm> //内置泛型算法头文件 ...

  2. ClickHouse 分布式高可用集群搭建(转载)

    一.ClickHouse安装方式: 源码编译安装 Docker安装 RPM包安装 为了方便使用,一般采用RPM包方式安装,其他两种方式这里不做说明. 二.下载安装包 官方没有提供rpm包,但是Alti ...

  3. Kubernetes 学习25 创建自定义chart及部署efk日志系统

    一.概述 1.我们说过在helm架构中有这么几个关键组件,helm,tiller server,一般托管运行于k8s之上,helm能够通过tiller server在目标k8s集群之上部署应用程序,而 ...

  4. LibreOJ #525. 「LibreOJ β Round #4」多项式

    二次联通门 : LibreOJ #525. 「LibreOJ β Round #4」多项式 官方题解 : /* LibreOJ #525. 「LibreOJ β Round #4」多项式 由于会有多种 ...

  5. 洛谷P3178[HAOI]2015 树上操作

    题目 树剖裸题,这个题更可以深刻的理解树剖中把树上的节点转换为区间的思想. 要注意在区间上连续的节点,一定是在一棵子树中. #include <bits/stdc++.h> #define ...

  6. UOJ#470. 【ZJOI2019】语言 虚树,线段树合并

    原文链接www.cnblogs.com/zhouzhendong/p/UOJ470.html 前言 做完情报中心来看这个题突然发现两题有相似之处然后就会做了. 题解 首先,我们考虑将所有答案点对分为两 ...

  7. Chrome浏览器控制台[DOM] Password field is not contained in a form:

    [DOM] Password field is not contained in a form: ( [DOM]密码字段不包含在form表单中) 解决方案:添加一层form标签 <div cla ...

  8. Java与设计模式之单例模式(下) 安全的单例模式

          关于单例设计模式,<Java与设计模式之单例模式(上)六种实现方式>介绍了6种不同的单例模式,线程安全,本文介绍该如何保证单例模式最核心的作用——“实现该模式的类有且只有一个实 ...

  9. P5049 旅行(数据加强版)(基环树)

    做法 把环找出来,如果在环上(u,v)两点的时候,u的其他子树都走完了,v上第一个还有除v存在的子树没走完的 祖先,祖先的最小子节点小于v,则回去 Code #include<bits/stdc ...

  10. WEB甘特图(机器运行状态图)

    前台框架使用BootStrap轻量级框架AdminLTE 后台框架使用的是Spring.SpringMVC 初此使用数据库SQL Server故只能用JDBC连接 请勿见怪!jsp页面重复添加元素过多 ...