div 背景透明度 如何设置一个div的背景透明度
脚本之家
你读DIV背景颜色透明度的设置是否熟悉,这里和大家简单分享一下,通常我们通过DIV的style样式属性filter来设置DIV背景透明样式,也可根据alpha提供的参数进行组合控制。
本节向大家爱描述一下如何设置DIV背景颜色透明度,opacityOpacity设置或检索透明渐变的开始透明度,Opacity代表透明度等级,可选值从0到100,0代表完全透明,100代表完全不透明。Style参数指定了透明区域的形状特征。
设置DIV背景颜色透明度
通常我们通过DIV的style样式属性filter来设置DIV背景透明样式。可根据alpha提供的如下参数进行组合控制:
filter:Alpha(enabled=bEnabled,style=iStyle,
opacity=iOpacity,finishOpacity=iFinishOpacity,
startX=iPercent,startY=iPercent,
finishX=iPercent,finishY=iPercent);
各参数含义如下:
enabledEnabled设置或检索滤镜是否激活。
styleStyle设置或检索DIV背景透明渐变的样式。
opacityOpacity设置或检索透明渐变的开始透明度。
finishOpacityFinishOpacity设置或检索DIV背景透明渐变的结束透明度。
startXStartX设置或检索DIV背景透明渐变开始点的水平坐标。
startYStartY设置或检索DIV背景透明渐变开始点的垂直坐标。
finishXFinishX设置或检索DIV背景透明渐变结束点的水平坐标。
finishYFinishY设置或检索DIV背景透明渐变结束点的垂直坐标。
Opacity代表透明度等级,可选值从0到100,0代表完全透明,100代表完全不透明。Style参数指定了透明区域的形状特征。其中0代表统一形状;1代表线形;2代表放射状;3代表长方形。
Finishopacity是一个可选项,用来设置结束时的透明度,从而达到一种渐变效果,它的值也是从0到100。StartX和StartY代表渐变透明效果的开始坐标,finishX和finishY代表渐变透明效果的结束坐标。
从上面讲的我们可以看出,如果不设置透明渐变效果,那么只需设置opacity这一个参数就可以了。说了这么多,我们来看一个实例吧(见下图):
实现上面这种效果的代码如下:
<html>
<head>
<title>alpha</title>
<style>//*定义CSS样式*//
<!--
DIV{position:absolute;left:50;top:70;width:150;}
//*定义DIV区域内的样式(位置为绝对定位,left、top、width的坐标)*//
img{position:absolute;top:20;left:40;
filter:alpha(opacity=80)}
//*定义图片的样式,绝对定位,滤镜属性是透明度为80*//
-->
</style>
</head>
<body>
<DIV>
<pstylepstyle=“font-size:48;font-weight:bold;color:red;”>
Beautiful</p>//*定义字体属性,前景色为红色*//
</DIV>
<p><imgsrcimgsrc=“ss01076.jpg”></p>
//*导入一张图片*//
</body>
</html>
如果在上面的代码中稍做改动,则将产生另外多种效果。我们只修改img的样式属性,把head中的Img样式属性代码改为如下所示
img{position:absolute;top:20;left:40;
filter:alpha(opacity=0,finishopacity=100,
style=1,startx=0,starty=85,finishx=150,finishy=85);}
//*设置DIV背景透明渐变效果,起始坐标,终止渐变坐标,
并设置透明样式值(style=1)为 线形*//
这段代码产生的效果如左下图所示,右面的两幅图分别是把Alpha中的Style参数值为2和3后的效果,点击缩略图可放大。
Style=1 Style=2Style=3
以上是CSS的Alpha滤镜属性的应用,具体应用还需要您自己找个例子练一练。
Css-Tricks讲到了一些方法,看了一些大型门户网站的CSS,也是采用了这种方法,
http://css-tricks.com/rgba-browser-support/
也就是支持CSS3的浏览器就设置:
background:rgba(255,255,255,0~1),
而低版本的IE浏览器就采用微软的独有的滤镜来实现:
filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=1,startColorStr=#AARRGGBB,endColorStr=AARRGGBB);
使用方法:
GradientType: 渐变的方向 ,0为水平(默认),1为垂直。
startColorStr:AA为透明度,范围00~FF ..RRGGBB为十六进制颜色值,不熟悉颜色值的朋友可以用PS自带的拾色器来选择。
endColorStr:同上