• CSS3之背景色渐变


    在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

  • 相关阅读:
    LeetCode Array Easy 1. Two Sum
    关于VS2015 发布.net mvc 网站失败的问题
    2016计蒜之道复赛 百度地图的实时路况 floyd+cdq分治
    2016计蒜之道复赛 菜鸟物流的运输网络 网络流EK
    HDU5715 XOR 游戏 二分+字典树+dp
    HDU5697 刷题计划 dp+最小乘积生成树
    codeforces 687D Dividing Kingdom II 带权并查集(dsu)
    codeforces 687C
    codeforces 687B
    HDU 5693 D Game 区间dp
  • 原文地址:https://www.cnblogs.com/huntaheart/p/3533519.html
Copyright © 2020-2023  润新知