在css2时代,页面背景色渐变,按钮背景渐变效果主要是通过图片实现,css3中可通过 gradient 实现背景色渐变,图片作为一种资源,每次在页面加载时都要从服务器下载,这样如果页面很大需要渐变的效果很多的话,势必会造成网络堵塞,给页面加载造成压力,然而如果用css3的gradient写的话,在页面加载css文件时就会通过解析css代码实现渐变效果,就像解析css2代码一样。

但是美中不足的时,各浏览器虽然支持CSS3的gradient,却不能达成统一意见,完美的写法是在gradient前加上各浏览器的前缀,如-webkit-,-moz  -,IE8以上浏览器可通过IE自带的滤镜实现渐变功能。尽管如此,像低于IE8浏览器的这些古董,虽然已被世界范围内的市场淘汰,但作为中国的IT程序员,我们依然不能放弃,因为IE6,7还占据着中国的半壁江山,最后只能通过图片来实现。虽然这样会对编码的复杂度带来一些影响,但是对于完美支持css3的浏览器还是会带来全新的体验。                    
一. Webkit浏览器
      (1) 第一种写法:
            background:-webkit-gradient(linear ,10% 10%,100% 100%,color-stop(0.14,rgb(255,0,0)), color-stop(0.5,rgb(255,255,0)), color-stop(1,rgb(0,0,255)) );
             第一个参数:表示的是渐变的类型
      linear线性渐变
             第二个参数:分别对应x,y方向渐变的起始位置
             第三个参数:分别对应x,y方向渐变的终止位置
             第四/五/N个参数:设置渐变的位置及颜色
      (2)第二种写法:这种写法比较简单,而且效果比较自然
            background:-webkit-gradient(linear, 0 0, 0 100%, from(#2074af), to(#2c91d2));
             第一个参数:表示的是渐变的类型
             linear线性渐变
             第二个参数:分别对应x,y方向渐变的起始位置
             第三个参数:分别对应x,y方向渐变的终止位置
             第四个参数:设置了起始位置的颜色
             第五个参数:设置了终止位置的颜色

二.Mozilla浏览器
      (1)第一种写法:
           background:-moz-linear-gradient(10 10 90deg, rgb(25,0,0) 14%,    rgb(255,255,0) 50%,    rgb(0,0,255) 100%);
           第一个参数:设置渐变起始位置及角度
           第二/三/四/N个参数:设置渐变的颜色和位置
      (2)第二种写法:这种写法比较简单,而且效果比较自然
           background:-moz-linear-gradient(top, #FFC3C8,#FF9298);
           第一个参数:设置渐变的起始位置
           第二个参数:设置起始位置的颜色
           第三个参数:设置终止位置的颜色
三.IE 浏览器
     IE浏览器实现渐变只能使用IE自己的滤镜去实现
          IE9   filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffff,endColorstr=#9fffff,grandientType=1);

   IE8   -ms-filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffff,endColorstr=#9fffff,grandientType=1);
          第一个参数:渐变起始位置的颜色
          第二个参数:渐变终止位置的颜色
          第三个参数:渐变的类型
          0 代表竖向渐变        1  代表横向渐变  
     P.S.这里设置背景的时候不需要给background设置,直接用filter即可,不要和其他的浏览器混淆

  gradient中除了线性渐变linear以外,还有一种径向渐变radial,但是径向渐变应用的地方很少,我在项目开发中到现在还没用过,关于gradient渐变,给大家推荐一个网站:http://www.w3cplus.com/content/css3-gradient

CSS3之背景色渐变的更多相关文章

  1. css 背景色渐变---和背景色透明

    1 背景色渐变 background:#fb0000; background: -webkit-gradient(linear, left top, left bottom, color-stop(0 ...

  2. 透明、圆角、阴影效果、背景色渐变、<a></a>去外层虚线、!!!表格标签<table>

    表格标签 <table> 代表表格 width:指表格的宽度           一种是像素 (浏览器缩小的时候出现滚动条)           一种是百分比(跟着浏览器的大小而大小) b ...

  3. CSS3的线性渐变(linear-gradient)

    CSS3渐变(gradient)可分为线性渐变(linear-gradient)和径向渐变(radial-gradient).今天给大家说一说线性渐变. 以webkit内核浏览器为例, 语法: div ...

  4. 谈谈一些有趣的CSS题目(十三)-- 巧妙地制作背景色渐变动画!

    开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...

  5. css中的背景色渐变以及背景图的定位

    单纯的背景色渐变: background: -webkit-gradient(linear, 0 0, 0 100%, color-stop(0, #fff), color-stop(1, #ddd) ...

  6. CSS3下的渐变文字效果实现

    如下,第一种方法已实践 一.方法一:借助mask-image属性 可以狠狠地点击这里:CSS3下的渐变文字效果方法一demo 如果您手头上的浏览器是Chrome或是Safari,则您可以在demo页面 ...

  7. CSS3透明背景+渐变样式

    CSS3透明背景+渐变样式 转载自博文:<CSS3透明背景+渐变样式> http://blog.csdn.net/netbug_nb/article/details/44343809 效果 ...

  8. css3背景颜色渐变属性 兼容性测试基础环境为:windows系统;IE6.0+, Firefox4.0+, Chrome4.0+, Safari4.0+, Opera15.0+

    css3背景颜色渐变属性 兼容性测试基础环境为:windows系统:IE6.0+, Firefox4.0+, Chrome4.0+, Safari4.0+, Opera15.0+ 语法: <li ...

  9. jquery animate()背景色渐变的处理

    jquery animate函数不能处理背景色渐变,需要使用jquery.color插件 gitHub地址:https://github.com/jquery/jquery-color/ 使用代码: ...

随机推荐

  1. 2015第14周五Tomcat版本

    首先看tomcat官方文档,列出的不同版本的主要差别: Servlet Spec JSP Spec EL Spec WebSocket Spec Apache Tomcat version Actua ...

  2. MFC调用c#的dll

    一.使用 /clr 编译 MFC 可执行文件或规则 DLL 1.打开“项目属性”对话框,方法是右键单击“解决方案资源管理器”中的项目并选择“属性”. 2.展开“配置属性”旁边的节点并选择“常规”.在右 ...

  3. 提高xshell使用效率

    1.快速命令集. 2.鼠标复制粘贴设置. 3.配色方案. 4.esc切换到英文输入. 设置入口:

  4. 第14/15讲- Android资源管理

    第14/15讲 Android资源管理 Android中的资源是指非代码部分,比如图片.MP3,字符串,XML文件等.在一个android工程中,res和assets是用来保存资源文件的. res和a ...

  5. 最简单的XML转数组

    /** * 最简单的XML转数组 * @param string $xmlstring XML字符串 * @return array XML数组 */ function simplest_xml_to ...

  6. VS 项目(c#)引用了 DLL文件,也写了Using,但是编译时提示:未能找到类型或命名空间名称

    1. 在项目上点右键-->属性-->应用程序-->目标框架-->修改为.NET Framework 4. 而我原来的设置是.NET Framework 4 Client Pro ...

  7. qt坐标系统

    #说明:坐标系统是由 QPainter控制的QPaintDevice是那些能够让 QPainter 进行绘制的“东西”(准确的术语叫做,二维空间)# 的抽象层(其子类有QWidget. QPixmap ...

  8. FZU 2102 Solve equation(水,进制转化)&& FZU 2111(贪心,交换使数字最小)

    C Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status Pra ...

  9. freemarker报错之三

    1.错误描写叙述 Expression students is undefined on line 30, column 24 in student.ftl. The problematic inst ...

  10. Java之Static静态修饰符详解

    Java之Static静态修饰符详解 Java之Static静态修饰符详解 一.特点 1.随着类的加载而加载,随着类的消失而消失,生命周期最长 2.优先于对象存在 3.被所有类的对象共享 4.可以直接 ...