css控制背景颜色渐变以及浏览器的兼容写法(转载别人的)

2010-12-15 19:13:38|  分类: CSS+DIV |  标签:td  渐变  filter  style  startx  |字号 订阅

 
 

      渐变效果也是常用的效果之一,因为浏览器兼容性的原因,很多人都是用背景图片来达到渐变效果的,其实仅仅使用 CSS 就可以实现了。
.gradient {   
    /* Firefox 3.6 */   
    background-image: -moz-linear-gradient(top, #81a8cb, #4477a1);    
  
    /* Safari & Chrome */   
    background-image: -webkit-gradient(linear,left bottom,left top,color-stop(0, #4477a1),color-stop(1, #81a8cb));    
  
     /* IE6 & IE7 */   
    filter:  progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#81a8cb', endColorstr='#4477a1');   
  
    /* IE8 */   
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#81a8cb', endColorstr='#4477a1')";   


一、从上往下渐变 
body{
FILTER: progid:DXImageTransform.Microsoft.Gradient(gradientType=0,startColorStr=#ffffff,endColorStr=#000000);
}
 
二、从左上至右下渐变 
body{
FILTER: Alpha( style=1,opacity=25,finishOpacity=100,
startX=50,finishX= 100,startY=50,finishY=100); 
background-color: skyblue;
}

三、从左往右渐变
body{
FILTER: progid:DXImageTransform.Microsoft.Gradient(gradientType=1,startColorStr=#ffffff,endColorStr=#000000);
}

四、从上往下渐变
style="filter:progid:DXImageTransform.microsoft.gradient(gradienttype=0,startColorStr=blue,endColorStr=white);"

五、对角线渐变
<body style="FILTER: progid:DXImageTransform.Microsoft.Alpha( style=1,opacity=25,finishOpacity=100,startX=50,finishX=100,startY=50,
finishY=100); BACKGROUND-COLOR: green">

原理是使用Alpha 滤镜在每个表格上加上一个透明渐变,由table的背景颜色控制,单个td控制另一色渐变 
Alpha 滤镜 
语法:{FILTER:ALPHA(opacity=opacity,finishopacity=finishopacity,style=style,startx=startx,starty=starty,finishx=finishx,finishy=finishy)} 
Filter: Alpha(Opacity=100, FinishOpacity=0, Style=1, StartX=0, StartY=0, FinishX=0, FinishY=100);

'Alpha'属性是把一个目标元素与背景混合。设计者可以指定数值来控制混合的程度。这种“与背景混合”通俗地说就是一个元素的透明度。通过指定坐标,可以指定点、线、面的透明度。他们的参数含义分别如下: 
“opacity'代表透明度水准。默认的范围是从0 到 100,他们其实是百分比的形式。也就是说,0代表完全透明,100代表完全不透明。”finishopacity'是一个可选参数,如果想要设置渐变的透明效果,就可以使用他们来指定结束时的透明度。范围也是0 到 100。“style' 参数指定了透明区域的形状特征。其中0代表统一形状、1代表线形、2代表放射状、3代表长方形。”STARTX“和”STARTY“代表渐变透明效果的开始X和Y坐标。”FINISHX“和”FINISHY“代表渐变透明效果结束X和Y 的坐标。 
<body bgcolor="#EEEEEE"> 
<style type="text/css"> 
<!-- 
.xr td { 
font-family: "Tahoma"; 
font-size: 12px; 
font-weight: bold; 
text-align: center; 
Filter: Alpha(Opacity=100, FinishOpacity=0, Style=1, StartX=0, StartY=0, FinishX=0, FinishY=100); 
}

table { 
font-family: "Tahoma"; 
font-size: 12px; 

--> 
</style>

原文地址:https://www.cnblogs.com/zhicheng/p/2985474.html