详解CSS3中使用gradient实现渐变效果的方法


Posted in HTML / CSS onAugust 18, 2015

CSS3 Gradient分为linear-gradient(线性渐变)和radial-gradient(径向渐变)。
线性渐变在Webkit下的应用

CSS Code复制内容到剪贴板
  1. -webkit-linear-gradient( [<point> || <angle>,]? <stop>, <stop> [, <stop>]* )//最新发布书写语法  

    第一个参数表示渐变类型(type),可以是linear(线性渐变)或者radial(径向渐变)。
    第二个参数和第三个参数,都是一对值,分别表示渐变起点和终点。这对值可以用坐标形式表示,也可以用关键值表示,比如 left
    top(左上角)和left bottom(左下角)。
    第四个和第五个参数,分别是两个color-stop函数。color-stop函数接受两个参数,第一个表示渐变的位置,0为起点,0.5为中点,1为结束点;第二个表示该点的颜色。

线性渐变在Mozilla下的应用

语法:

CSS Code复制内容到剪贴板
  1. -moz-linear-gradient( [<point> || <angle>,]? <stop>, <stop> [, <stop>]* )  

参数:

    其共有三个参数,第一个参数表示线性渐变的方向,top是从上到下、left是从左到右,如果定义成left
    top,那就是从左上角到右下角。第二个和第三个参数分别是起点颜色和终点颜色。你还可以在它们之间插入更多的参数,表示多种颜色的渐变。

css3中实现了背景渐变

CSS Code复制内容到剪贴板
  1. <gradient> = [   
  2.     <linear-gradient> | <radial-gradient> |   
  3.     <repeating-linear-gradient> | <repeating-radial-gradient> ]  

一:线性渐变  

 在CSS3中,可以使用 linear-gradient实现背景线性渐变。

CSS Code复制内容到剪贴板
  1. <linear-gradient> = linear-gradient(  [ [ <angle> | to <side-or-corner> ] ,]?   <color-stop>[, <color-stop>]+ )  <side-or-corner> = [left | rightright] || [top | bottombottom]  

在ff浏览器时需要将样式代码书写成"-moz-linear-gradient",chrome浏览器时需要写成"-webkit-linear-gradient"的形式。
详解CSS3中使用gradient实现渐变效果的方法

 这里颜色值也可以分好多段,如

CSS Code复制内容到剪贴板
  1. background-image: linear-gradient(top#eff6fb#d3e4f3 68%);  

详解CSS3中使用gradient实现渐变效果的方法

CSS Code复制内容到剪贴板
  1. background-image: linear-gradient( left#FF0000#FFA500 13.0%,#FFFF00 26.0%,#0000FF 39.0%,#008000 52.0%,#4B0082 65.0%,#EE82EE 78.0%)  

显示效果:
详解CSS3中使用gradient实现渐变效果的方法

渐变方向也指定关键字。

CSS Code复制内容到剪贴板
  1. background-image: linear-gradient(top left#eff6fb 10%, #d3e4f3 68%);  

效果:
详解CSS3中使用gradient实现渐变效果的方法

渐变方向也可以指定角度。

CSS Code复制内容到剪贴板
  1. background-image: linear-gradient(0deg, #eff6fb 10%, #d3e4f3 68%);  

0deg渐变开始在左侧,90deg的底部,180deg在右侧,270deg在顶部。因此,我们可以认为角度作为反??时针顺序。
如:
详解CSS3中使用gradient实现渐变效果的方法

透明度(Transparency):还支持透明渐变。这是相当有用的,例如,当堆叠多个背景时。这里是两个背景的结合:一张图片,一个白色到透明的线性渐变。

二:径向渐变

径向渐变类似于线性渐变

CSS Code复制内容到剪贴板
  1. <radial-gradient> = radial-gradient(   [ [ <shape> || <size> ] [ at <position> ]? , |     at <position>,    ]?   <color-stop> [ , <color-stop> ]+ )  

1.颜色
直接定义颜色渐变。background: -moz-radial-gradient(red, yellow, #1E90FF);

效果如图:
详解CSS3中使用gradient实现渐变效果的方法

指定位置颜色的渐变:background: -moz-radial-gradient(red 5%, yellow 25%, #1E90FF 50%);
效果如果:
详解CSS3中使用gradient实现渐变效果的方法

2.形状
起始位置一样,形状不一样。

CSS Code复制内容到剪贴板
  1. background-image: -moz-radial-gradient(bottombottom left,circle,redyellow#1E90FF);   
  2. background-image: -moz-radial-gradient(bottombottom left,ellipse,redyellow#1E90FF);  

效果如图:
详解CSS3中使用gradient实现渐变效果的方法

3.大小(Size):size的不同选项(closest-side, closest-corner, farthest-side, farthest-corner, contain or cover)指向被用来定义圆或椭圆大小的点。

三:重复渐变(Repeating Gradients)
重复一个渐变,可以使用-moz-repeating-linear-gradient和-moz-repeating-radial-gradient。

CSS Code复制内容到剪贴板
  1. .repeating_radial_gradient_example {       
  2. background: -moz-repeating-radial-gradient(blackblack 5pxwhite 5pxwhite 10px); }    
  3. .repeating_linear_gradient_example {      
  4.   background: -moz-repeating-linear-gradient(top left -45deg, redred 5pxwhite 5pxwhite 10px); }  

HTML / CSS 相关文章推荐
纯CSS3实现的阴影效果
Dec 24 HTML / CSS
css3一个简易的 LED 数字时钟实现方法
Jan 15 HTML / CSS
CSS3 实现发光边框特效
Nov 11 HTML / CSS
HTML5 canvas 基本语法
Aug 26 HTML / CSS
html5新增的属性和废除的属性简要概述
Feb 20 HTML / CSS
canvas使用注意点总结
Jul 19 HTML / CSS
HTML5之语义标签介绍
Jul 07 HTML / CSS
data:image data url 文件转为Blob上传后端的方法
Jul 16 HTML / CSS
AmazeUI 手机版页面的顶部导航条Header与侧边导航栏offCanvas的示例代码
Aug 19 HTML / CSS
简单介绍 http请求响应参数、无连接无状态、MIME、状态码、端口、telnet、curl
Mar 31 HTML / CSS
HTML5简单实现添加背景音乐的几种方法
May 12 HTML / CSS
HTML CSS 一个标签实现带动画的抖音LOGO
Apr 26 HTML / CSS
全方位了解CSS3的Regions扩展
Aug 07 #HTML / CSS
CSS3中Animation属性的使用详解
Aug 06 #HTML / CSS
利用CSS3的transition属性实现滑动效果
Aug 05 #HTML / CSS
详解CSS3中@media的实际使用
Aug 04 #HTML / CSS
CSS3的RGBA中关于整数和百分比值的转换
Aug 04 #HTML / CSS
CSS3中使用RGBA设置透明度的示例
Aug 04 #HTML / CSS
详解CSS中iconfont的使用
Aug 04 #HTML / CSS
You might like
php输出全球各个时区列表的方法
2015/03/31 PHP
php使用COPY函数更新配置文件的方法
2015/06/18 PHP
3种php生成唯一id的方法
2015/11/23 PHP
让你的CSS像Jquery一样做筛选的实现方法
2011/07/10 Javascript
JQuery切换显示的效果实例代码
2013/02/27 Javascript
js判断生效时间不得大于失效时间的思路及代码
2013/04/23 Javascript
FF IE浏览器修改标签透明度的方法
2014/01/27 Javascript
nodejs教程之环境安装及运行
2014/11/21 NodeJs
javaScript基础语法介绍
2015/02/28 Javascript
JavaScript中字符串拼接的基本方法
2015/07/07 Javascript
基于JavaScript实现鼠标悬浮弹出跟随鼠标移动的带箭头的信息层
2016/01/18 Javascript
jQuery事件的绑定、触发、及监听方法简单说明
2016/05/10 Javascript
基于JavaScript Array数组方法(新手必看篇)
2016/08/20 Javascript
基于js实现的限制文本框只可以输入数字
2016/12/05 Javascript
详解jQuery的表单验证插件--Validation
2016/12/21 Javascript
vue微信分享的实现(在当前页面分享其他页面)
2019/04/16 Javascript
独立部署小程序基于nodejs的服务器过程详解
2019/06/24 NodeJs
Python版的文曲星猜数字游戏代码
2013/09/02 Python
使用python加密自己的密码
2015/08/04 Python
用 Python 爬了爬自己的微信朋友(实例讲解)
2017/08/25 Python
python3利用tcp实现文件夹远程传输
2018/07/28 Python
浅谈Python脚本开头及导包注释自动添加方法
2018/10/27 Python
python制作填词游戏步骤详解
2019/05/05 Python
深入了解Python枚举类型的相关知识
2019/07/09 Python
Pycharm使用之设置代码字体大小和颜色主题的教程
2019/07/12 Python
python实现FTP文件传输的方法(服务器端和客户端)
2020/03/20 Python
简单了解pytest测试框架setup和tearDown
2020/04/14 Python
python文件排序的方法总结
2020/09/13 Python
泰国办公用品购物网站:OfficeMate
2018/02/04 全球购物
写clone()方法时,通常都有一行代码,是什么?
2012/10/31 面试题
见习报告格式要求
2014/11/04 职场文书
六一儿童节致辞
2015/07/31 职场文书
Oracle11g r2 卸载干净重装的详细教程(亲测有效已重装过)
2021/06/04 Oracle
redis cluster支持pipeline的实现思路
2021/06/23 Redis
我国拿下天问一号火星着陆区附近 22 个地理实体命名:平乐、西柏坡、古田、漠河等
2022/04/29 数码科技
vue css 相对路径导入问题级踩坑记录
2022/06/05 Vue.js