css3渐变之线性渐变

  css3定义了两种类型的渐变,即线性渐变和径向渐变。这里我要说的是线性渐变。

  为了创建一个线性渐变,你必须至少定义两种颜色结点。颜色结点即你想要呈现平稳过渡的颜色。同时,你也可以设置一个起点和一个方向(或一个角度)。

  语法:background: linear-gradient(direction, color-stop1, color-stop2, ...);

  注意:线性渐变默认是从上到下。

  从上到下的渐变:

  #grad {

       background: -webkit-linear-gradient(red, blue); /*Safari与chrome*/

       background: -o-linear-gradient(red, blue); /*opera*/

       background: -moz-linear-gradient(red, blue); /* Firefox */

       background: linear-gradient(red, blue); /* 标准的语法 */

     }

  从左到右的渐变:

  #grad {

      background: -webkit-linear-gradient(left, red , blue); /*Safari与chrome*/

      background: -o-linear-gradient(right, red, blue); /*opera*/

      background: -moz-linear-gradient(right, red, blue); /* Firefox*/

      background: linear-gradient(to right, red , blue); /* 标准的语法 */

      }

  对角的线性渐变,如从右上角到左下角的渐变。

  #grad {

      background: -webkit-linear-gradient(top right, red , blue); /*Safari与chrome*/

      background: -o-linear-gradient(top right, red, blue); /*opera*/

      background: -moz-linear-gradient(top right, red, blue); /* Firefox*/

      background: linear-gradient(to bottom left, red , blue); /* 标准的语法 */

      }

  如果想要对渐变做更精确的控制,可以使用角度。

  语法:background: linear-gradient(angle, color-stop1, color-stop2);

          

  0deg 将创建一个从下到上的渐变,90deg 将创建一个从左到右的渐变。

  注意:有些浏览器使用了旧的标准,如Safari浏览器(个人亲测)。即 0deg 将创建一个从左到右的渐变,90deg 将创建一个从下到上的渐变。换算公式 90 - x = y 其中 x 为标准角度,y为非标准角度。

  最后,说一下浏览器的支持情况,因为该属性并不是所有浏览器都支持,因此某些浏览器需要写上前缀才能支持。

  

  表中的数字指定了完全支持该属性的第一个浏览器版本。后边跟 -webkit-、-moz- 或 -o- 的数字指定了需加上前缀才能支持属性的第一个版本。

  注意:

    1、渐变的方向问题:如right与to right是完全相反的方向,right表示从右往左,而to right则表示从左往右。其他的也是如此,如left与to left、bottom与to bottom等等。

    2、渐变的角度问题:有些浏览器沿用了旧的标准,如0deg 将创建一个从左到右的渐变,90deg 将创建一个从下到上的渐变。换算公式 90 - x = y 其中 x 为标准角度,y为非标准角度。

    3、浏览器支持情况:对于某些旧版本的浏览器需要写上相应的前缀。

  

时间: 2024-10-01 03:36:02

css3渐变之线性渐变的相关文章

CSS3之渐变(线性渐变,径向渐变)

渐变 一.           线性渐变 1         线性渐变格式 linear-gradient([<起点> || <角度>,]? <点>, <点>-) 只能用在背景上 2         IE filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff',endColorstr='#ff0000',GradientType='1'); <style>

Canvas使用渐变之-线性渐变详解

在canvas里面,除了使用纯色,我们还能把填充和笔触样式设置为渐变色:线性渐变和径向渐变. 线性渐变 createLinearGradient(x0,y0,x1,y1)  返回 CanvasGradient 四个参数分别是渐变色起始坐标x,起始坐标y,结束坐标x,结束坐标y. 渐变色沿着两点之间的一条线来进行渐变. 径向渐变 createRadialGradient(x0,y0,r0,x1,y1,r1) 返回CanvasGradient 六个参数分别是 起点圆心坐标(x0,y0) 起点圆心半径

CSS3中颜色线性渐变实战

css3线性渐变可以设置3个参数值:方向.起始颜色.结束颜色.最简单的模式只需要定义起始颜色和结束颜色,起点.终点和方向默认自元素的顶部到底部.下面举例说明: CSS Code复制内容到剪贴板 .test{ background:linear-gradient(red, blue); } 上述代码的效果如图所示. 最简单的线性渐变效果 如果要在一些旧版本的浏览器(除IE)下可以正常显示如图5.9的效果,则需要添加兼容代码: CSS Code复制内容到剪贴板 .test { background:

CSS3 渐变分为线性渐变和径向渐变

这种事情,我的心理很不爽快,因为这其实是一件很小的事情.我觉得这个完全不存在这一点点的时间.如果说确实没有计划也应该提前说明,而不是等着我去问.这个细节让人很不舒服.还有签定的合同,所有之前提到的福利待遇,并没有写到合同里面.所有的场景都让我觉得我到底是入职了还是没有入职呢?我是应该信任这家公司呢?还是应该相信白字黑字.我还是觉得白字黑字靠谱.再给自己一点点时间去适应,还是希望自己稳定下来.可以说这样说,虽然我选择了这里,可是我对我现在这份工作依然忐忑不安. 在团队中,总不可避免的以家长的姿态自

css3线性渐变

css3渐变分为线性渐变(linear-gradient)和径向渐变(radial-gradient).下面简单介绍下linear-gradient的应用. 以下都是在webkit内核浏览器下进行测试,firefox和opera只需更改下前缀即可,IE下则有特定的滤镜来实现. -webkit-linear-gradient( [<point> || <angle>,]? <stop>, <stop> [, <stop>]* )//最新发布书写语法

再说CSS3渐变——线性渐变

渐变背景一直以来在Web页面中都是一种常见的视觉元素.但一直以来,Web设计师都是通过图形软件设计这些渐变效果,然后以图片形式或者背景图片的形式运用到页面中.Web页面上实现的效果,仅从页面的视觉效果上来看,与设计并无任何差异. 事实上这种方法是比较麻烦的,因为首先需要设计师进行设计,然后进行切图,在通过样式应用到页面中.另外,在实际应用中可扩展性差,还直接影响页面性能. 值得庆幸的是,W3C组织将渐变设计收入到CSS3标准中,让广大的前端设计师直接受益,可以直接通过CSS3的渐变属性制作类似渐

css3的背景颜色渐变@线性渐变

背景颜色渐变之线性渐变 语法形式: firefox浏览器 background:-moz-linear-gradient(position/deg,startColor,endColor); opera浏览器    background: -o-linear-gradient(position/deg,startColor,endColor); safari和chrome浏览器    background: -webkit-linear-gradient(position/deg,startCo

CSS3渐变——线性渐变

渐变背景一直以来在Web页面中都是一种常见的视觉元素.但一直以来,Web设计师都是通过图形软件设计这些渐变效果,然后以图片形式或者背景图片的形式运用到页面中.Web页面上实现的效果,仅从页面的视觉效果上来看,与设计并无任何差异. 事实上这种方法是比较麻烦的,因为首先需要设计师进行设计,然后进行切图,在通过样式应用到页面中.另外,在实际应用中可扩展性差,还直接影响页面性能. 值得庆幸的是,W3C组织将渐变设计收入到CSS3标准中,让广大的前端设计师直接受益,可以直接通过CSS3的渐变属性制作类似渐

进度条-线性渐变

/* 进度条 */div.progress { width: 600px; margin: 10px auto; height: 20px; line-height: 20px; font-size: 14px; background: #F7F7F7; border-radius: 4px; box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);}div.progress div.bar { float: left; width: 60%; backgr