CSS3 渐变(Gradients)

渐变效果

CSS3 渐变(gradients)可以让你在两个或多个指定的颜色之间显示平稳的过渡。

以前,你必须使用图像来实现这些效果。但是,通过使用 CSS3 渐变(gradients),你可以减少下载的时间和宽带的使用。此外,渐变效果的元素在放大时看起来效果更好,因为渐变(gradient)是由浏览器生成的。

CSS3 定义了两种类型的渐变(gradients):

线性渐变(Linear Gradients)- 向下/向上/向左/向右/对角方向

径向渐变(Radial Gradients)- 由它们的中心定义

浏览器支持

表中的数字指定了完全支持该属性的第一个浏览器版本。

属性

background-image

1.0

4.0

1.0

1.0

3.5

注意:IE8 及更早版本的 IE 浏览器不支持该属性。

CSS3 线性渐变

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

线性渐变的实例:

语法

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

线性渐变 - 从上到下(默认情况下)

下面的实例演示了从顶部开始的线性渐变。起点是红色,慢慢过渡到蓝色:

实例

从上到下的线性渐变:

#grad{background-image:linear-gradient(#e66465,#9198e5);}

尝试一下 »

线性渐变 - 从左到右

下面的实例演示了从左边开始的线性渐变。起点是红色,慢慢过渡到黄色:

实例

从左到右的线性渐变:

#grad{height:200px;background-image:linear-gradient(toright,red,yellow);}

尝试一下 »

线性渐变 - 对角

你可以通过指定水平和垂直的起始位置来制作一个对角渐变。

下面的实例演示了从左上角开始(到右下角)的线性渐变。起点是红色,慢慢过渡到黄色:

实例

从左上角到右下角的线性渐变:

#grad{height:200px;background-image:linear-gradient(tobottomright,red,yellow);}

尝试一下 »

使用角度

如果你想要在渐变的方向上做更多的控制,你可以定义一个角度,而不用预定义方向(to bottom、to top、to right、to left、to bottom right,等等)。

语法

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

角度是指水平线和渐变线之间的角度,逆时针方向计算。换句话说,0deg 将创建一个从下到上的渐变,90deg 将创建一个从左到右的渐变。

但是,请注意很多浏览器(Chrome、Safari、firefox等)的使用了旧的标准,即 0deg 将创建一个从左到右的渐变,90deg 将创建一个从下到上的渐变。换算公式 90 - x = y 其中 x 为标准角度,y为非标准角度。

下面的实例演示了如何在线性渐变上使用角度:

实例

带有指定的角度的线性渐变:

#grad{background-image:linear-gradient(-90deg,red,yellow);}

尝试一下 »

使用多个颜色节点

下面的实例演示了如何设置多个颜色节点:

实例

带有多个颜色节点的从上到下的线性渐变:

#grad{background-image:linear-gradient(red,yellow,green);}

尝试一下 »

下面的实例演示了如何创建一个带有彩虹颜色和文本的线性渐变:

实例

#grad{/*标准的语法*/background-image:linear-gradient(toright,red,orange,yellow,green,blue,indigo,violet);}

尝试一下 »

使用透明度(transparent)

CSS3 渐变也支持透明度(transparent),可用于创建减弱变淡的效果。

为了添加透明度,我们使用 rgba() 函数来定义颜色节点。rgba() 函数中的最后一个参数可以是从 0 到 1 的值,它定义了颜色的透明度:0 表示完全透明,1 表示完全不透明。

下面的实例演示了从左边开始的线性渐变。起点是完全透明,慢慢过渡到完全不透明的红色:

实例

从左到右的线性渐变,带有透明度:

#grad{background-image:linear-gradient(toright,rgba(255,0,0,0),rgba(255,0,0,1));}

尝试一下 »

重复的线性渐变

repeating-linear-gradient() 函数用于重复线性渐变:

实例

一个重复的线性渐变:

#grad{/*标准的语法*/background-image:repeating-linear-gradient(red,yellow10%,green20%);}

尝试一下 »

CSS3 径向渐变

径向渐变由它的中心定义。

为了创建一个径向渐变,你也必须至少定义两种颜色节点。颜色节点即你想要呈现平稳过渡的颜色。同时,你也可以指定渐变的中心、形状(圆形或椭圆形)、大小。默认情况下,渐变的中心是 center(表示在中心点),渐变的形状是 ellipse(表示椭圆形),渐变的大小是 farthest-corner(表示到最远的角落)。

径向渐变的实例:

语法

background-image: radial-gradient(shape size at position, start-color, ..., last-color);

径向渐变 - 颜色节点均匀分布(默认情况下)

实例

颜色节点均匀分布的径向渐变:

#grad{background-image:radial-gradient(red,yellow,green);}

尝试一下 »

径向渐变 - 颜色节点不均匀分布

实例

颜色节点不均匀分布的径向渐变:

#grad{background-image:radial-gradient(red5%,yellow15%,green60%);}

尝试一下 »

设置形状

shape 参数定义了形状。它可以是值 circle 或 ellipse。其中,circle 表示圆形,ellipse 表示椭圆形。默认值是 ellipse。

实例

形状为圆形的径向渐变:

#grad{background-image:radial-gradient(circle,red,yellow,green);}

尝试一下 »

不同尺寸大小关键字的使用

size 参数定义了渐变的大小。它可以是以下四个值:

closest-side

farthest-side

closest-corner

farthest-corner

实例

带有不同尺寸大小关键字的径向渐变:

#grad1{background-image:radial-gradient(closest-sideat60%55%,red,yellow,black);}#grad2{background-image:radial-gradient(farthest-sideat60%55%,red,yellow,black);}

尝试一下 »

重复的径向渐变

repeating-radial-gradient() 函数用于重复径向渐变:

实例

一个重复的径向渐变:

#grad{background-image:repeating-radial-gradient(red,yellow10%,green15%);}

尝试一下 »

html设置一个正方形渐变,CSS3 渐变相关推荐

  1. html5 css3 渐变,CSS3 渐变 — 径向渐变

    HTML5学堂(码匠):有了解上周CSS3线性渐变的大家想必能很快掌握CSS3的径向渐变,两者的实现方法大同小异,但CSS3的径向渐变比线性渐变稍微复杂些,颜色不再沿着一条直线轴变化,而是从一个起点朝 ...

  2. html渐变色css3渐变,css3渐变

    渐变 在两个或者多个指定的颜色之间显示平稳的过渡.渐变的效果是由浏览器生成的.渐变的类型主要分为两种:linear-gradient(线性渐变)和radial-gradient(径向渐变) 线性渐变是 ...

  3. html渐变做一个彩虹,使用CSS3渐变实现的彩虹边线按钮

    CSS 语言: CSSSCSS 确定 html, body { height: 100%; margin: 0; padding: 0; } body { display: flex; align-i ...

  4. 浏览器前缀/ css3 渐变 /

    浏览器私有前缀 为了浏览器兼容新的css3属性 -ms-       -ms-box-shadow    IE浏览器专属的CSS属性需添加-ms-前缀 -moz-       -moz-box-sha ...

  5. 工具推荐-css3渐变生成工具

    今天工作用到了css3渐变,但是写起来才发现太麻烦了,而却很浪费时间,所以在这里向大家推荐一个在线的css3 渐变生成工具 地址是:http://www.colorzilla.com/gradient ...

  6. 09.CSS3渐变、过渡、转换、动画

    CSS3渐变 (1).什么是渐变 CSS3 渐变(gradients)可以让你在两个或多个指定的颜色之间显示平稳的过渡. 以前,你必须使用图像来实现这些效果.但是,通过使用 CSS3 渐变(gradi ...

  7. gradient设置上下渐变_CSS3 渐变(Gradients)

    CSS3 渐变(Gradients) CSS3渐变功能使您可以创建从一种颜色到另一种颜色的渐变,而无需使用任何图像. 使用CSS3渐变 CSS3渐变功能提供了一种灵活的解决方案,可以在两种或多种颜色之 ...

  8. css3渐变放大CSS3 教程,css3渐变gradient – CSS3高级教程

    CSS3的渐变功能允许你在不使用任何图像的情况下创建从一种颜色到另一种颜色的渐变. 使用CSS3渐变 CSS3的渐变特性提供了一个灵活的解决方案来生成两个或多个颜色之间的平滑过渡.早些时候,为了达到这 ...

  9. CSS3渐变、过渡、转换、动画

    1.CSS3渐变 (1).什么是渐变 CSS3渐变(gradients)可以让你在两个或多个指定的颜色之间显示平稳的过渡. 以前,你必须使用图像来实现这些效果.但是,通过使用CSS3渐变(gradie ...

最新文章

  1. MySQL的常见存储引擎介绍与参数设置调优
  2. maven进阶:一个多模块项目
  3. 前端学习(1358) :渲染模板默认
  4. linux中磁盘的iused,Linux 磁盘与文件系统管理
  5. 重置 MySQL 自增列id(不删除原数据)
  6. django文件上传,只上传一张
  7. Java实验9 T6.将对象和数组存储在dat文件中
  8. 《Ubuntu学习笔记》——如何建立软链接
  9. git学习-pull命令
  10. 【UE4从零开始 082】全局光照
  11. pytdx 获取板块指数_板块指数指标详解 通达信源码指标
  12. SuperMap iClient3D for WebGL教程 水面特效制作
  13. 学习如何合理的配置服务器
  14. 利用51单片机和DS12C887时钟芯片制作万年历
  15. Centos系统下搭建Smokeping 方法
  16. STM32F407之电阻式触摸屏
  17. Golang 多版本管理神器 gvm
  18. python根据图片网址下载图片
  19. 基于PHP学生成绩查询系统设计与实现 开题报告
  20. 目标检测计算指标APmAP

热门文章

  1. 莫言系统腐化——“一坨”真的好吗?
  2. uni-app云打包
  3. 阿里云 mysql教程_mysql数据库菜鸟教程
  4. 扫地机器人隔板_定制墙上一字隔板客厅书货架置物架好不好?实话说如何啊 | 智能扫地机器人评测...
  5. html抢答器代码,基于FPGA的四路抢答器的Verilog HDL代码.doc
  6. Linux服务器迁移文件系统,DD方式迁移Linux系统.pdf
  7. MQTT.fx客户端的安装及开始
  8. 自研工业级机器视觉通用平台VisionBank
  9. 视频重播转换器:Replay Converter for Mac
  10. 网络:抓包分析ping的原理