关于css设置层透明

之前自己做UI的时候,需要用到透明,于是百度了下,找到了点方法,达到了效果,并没深究,但是近几天在做UI的时候发现透明层中的子节点中的元素的不透明不大好控制

于是稍作研究下,在此记录下:


当然,达到透明,很多一般使用三种方式:

1、直接使用透明图片,这个确实比较直接省事,不过往往需要再制作图片,个人认为,可维护性不好

2、使用如下代码设置透明度,可是你会发现这种方式不能对其子节点的元素设置不透明

filter: alpha(opacity = 50);
-moz-opacity: 0.5;
-khtml-opacity: 0.5;
opacity: 0.5;
3、这种方法仅仅使用简短的代码,即可以实现设置透明度,也可以实现其中的文字以及节点中的元素设置不透明

   首先需要先对需要透明的层设置如下样式:

background: rgba(255,255,255,0.5) none repeat scroll !important;/* 确保火狐等浏览器的透明度,同事达到设置其子节点中的元素不透明 */
background:#fff;filter: alpha(opacity = 50);/* 为IE浏览器设置滤镜来达到透明的效果 */


然后对其子节点设置如下样式:
position: relative;/* 用来设置IE浏览器中其子节点中的元素不透明 */

如此,就可以实现设置透明度,也可以实现其中的文字以及节点中的元素设置不透明了。


你可能感兴趣的:(UI,css,透明度)