详解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在触屏上为按钮实现激活效果
Sep 27 HTML / CSS
一款纯css3实现的动画加载导航
Oct 08 HTML / CSS
css3实现画半圆弧线的示例代码
Nov 06 HTML / CSS
CSS3属性 line-clamp控制文本行数的使用
Mar 19 HTML / CSS
html5定制表单_动力节点Java学院整理
Jul 11 HTML / CSS
HTML 5 标签、属性、事件及浏览器兼容性速查表 附打包下载
Oct 20 HTML / CSS
基于HTML5超酷摄像头(HTML5 webcam)拍照功能实现代码
Dec 13 HTML / CSS
HTML中fieldset标签概述及使用方法
Feb 01 HTML / CSS
Html5+JS实现手机摇一摇功能
Apr 24 HTML / CSS
canvas与html5实现视频截图功能示例
Dec 15 HTML / CSS
浅谈Html5多线程开发之WebWorkers
May 02 HTML / CSS
详解HTML5布局和HTML5标签
Oct 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无限分类代码,支持数组格式化、直接输出菜单两种方式
2011/05/18 PHP
php获取通过http协议post提交过来xml数据及解析xml
2012/12/16 PHP
基于递归实现的php树形菜单代码
2014/11/19 PHP
php中session定期自动清理的方法
2015/11/12 PHP
PHP中session跨子域的三种实现方法
2016/07/25 PHP
基于php中echo用逗号和用点号的区别详解
2018/01/23 PHP
PHP多线程模拟实现秒杀抢单
2018/02/07 PHP
js中的escape及unescape函数的php实现代码
2007/09/04 Javascript
获取鼠标在div中的相对位置的实现代码
2013/12/30 Javascript
纯js写的分页表格数据为json串
2014/02/18 Javascript
jQuery事件用法实例汇总
2014/08/29 Javascript
javascript实现可键盘控制的抽奖系统
2016/03/10 Javascript
浅谈JavaScript 数据属性和访问器属性
2016/09/01 Javascript
JS中用childNodes获取子元素换行会产生一个子元素
2016/12/08 Javascript
vue项目中做编辑功能传递数据时遇到问题的解决方法
2016/12/19 Javascript
基于jQuery实现数字滚动效果
2017/01/16 Javascript
JSON键值对序列化和反序列化解析
2017/01/24 Javascript
ajax实现加载页面、删除、查看详细信息 bootstrap美化页面!
2017/03/14 Javascript
JS实现图片居中悬浮效果
2017/12/25 Javascript
vue webpack打包优化操作技巧
2018/02/22 Javascript
layui获取选中行数据的实例讲解
2018/08/19 Javascript
JS实现的冒泡排序,快速排序,插入排序算法示例
2019/03/02 Javascript
Vue两种组件类型:递归组件和动态组件的用法
2020/08/06 Javascript
使用python接入微信聊天机器人
2020/03/31 Python
HTML5 Canvas的事件处理介绍
2015/04/24 HTML / CSS
全球领先的鞋类零售商:The Walking Company
2016/07/21 全球购物
美国最大的珠宝商之一:Littman Jewelers
2016/11/13 全球购物
主持人演讲稿
2014/05/13 职场文书
一份文言文检讨书
2014/09/13 职场文书
销售工作决心书
2015/02/04 职场文书
大学生自荐信范文
2015/03/05 职场文书
酒店人事专员岗位职责
2015/04/07 职场文书
行政答辩状范文
2015/05/21 职场文书
祝福语集锦:送给毕业同学祝福语
2019/11/21 职场文书
《吸血鬼幸存者》新内容发布 追加多个全新模式
2022/04/07 其他游戏
oracle delete误删除表数据后如何恢复
2022/06/28 Oracle