css3中“渐变”兼容性解决方案

  这次是简单的谈一下我们常见的渐变在各个浏览器下的兼容性问题,算一个比较简单的问题。
 我们熟知的浏览器有Chrome、Firefox、Opera、Safari以及ie系列。最基础的background:#cccccc属性表示页面呈现#cccccc色,当然这个在任何浏览器下面都是满足的。但是随着我们对颜色要求的提高,引入了渐变linear-gradient,不同的浏览器对于它的认知需要加不同的前缀。通过上面的例子我们可以知道firefox:-moz-、chrome/safari/opera:-webkit-、ie:-ms-、当然ie很多版本都不接受,于是可以采取滤镜的方式处理。
重点说明一下ie的滤镜效果:
filter:alpha(opacity=100 finishopacity=50 style=1 startx=0,starty=0,finishx=0,finishy=150) progid:DXImageTransform.Microsoft.gradient(startcolorstr=#ffffff,endcolorstr=#000000,gradientType=0);
-ms-filter:alpha(opacity=100 finishopacity=50 style=1 startx=0,starty=0,finishx=0,finishy=150) progid:DXImageTransform.Microsoft.gradient(startcolorstr=#ffffff,endcolorstr=#000000,gradientType=0);

style=0:统一形状;style=1:线性;style=2:放射状;style=3:矩形;
startx/starty/finishx/finishy:起始和终点的坐标;
gradient=1:横向渐变;gradient=0:纵向渐变。

-webkit-linear-gradient(top,#ffffff,#000000);
linear:渐变类型
top:起始点
#ffffff:起始颜色
#000000:终点颜色
支持浏览器:Webkit(-webkit-),Gecko(-moz-),presto(-o-),Trident(-ms-)
方向:
上文中'top'为起始点,同时也蕴含'to bottom'
<angle>:0deg表示方向从左到右,90deg表示方向从下向上。可用负值表示,与正值相反方向。
top类:给予起始方向便可。两个方向的只要加上两方向属性,如left top。

ps:其他的不满足这些变化的浏览器还是比较少的。对于这种情况可以采取定义一个适合的过度色用最基本的background:#red之类的表示。

——lankongclub

上一篇:Linux内核高性能优化【生产环境实例】


下一篇:Nginx 实现 10w+ 并发之 Linux 内核优化