CSS3实现线性渐变用法示例代码详解


Posted in HTML / CSS onAugust 07, 2020

前言

演示下太老版本浏览器的渐变实现了[IE9-];
IE9以前,渐变都是通过滤镜实现的,大体的写法就是这样;

.testDiv {
		width:400px;
		height:400px;
		border:1px solid #f00;
		/*
		IE滤镜写法;
		gradientType : 1代表水平方向 , 0 代表垂直线性渐变 ;
		startColorstr是起始颜色,endColorstr是结束颜色;
		颜色支持十六进制的写法或者英文单词
		当然也支持透明度[十六进制]

		#AAFF0000[AA是透明度(00是完全透明,FF是完全不透明)],后六位是标准的十六进制颜色写法;
		 */
		
		/*IE6~7*/

	    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ccff7700", endColorstr="#eeccc222", GradientType=1);
	    /*IE8*/
	    -ms-filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ccff7700", endColorstr="#eeccc222", GradientType=1);
	    

	}

效果图就是这样: 水平渐变且颜色比较淡,设置了透明

CSS3实现线性渐变用法示例代码详解

本文主要扯下CSS3下原生实现渐变效果的!!![主流的浏览器和移动端浏览器都可以任性使用]

CSS3线性渐变兼容性

CSS3实现线性渐变用法示例代码详解

标准语法(包含两个参数,第一个参数可以是角度或者英文方向,第二个是渐变起始,可以多个颜色值!)

gradient : ([方向或者角度] , 起始值颜色)
firefox/chrome/ms/opera 四者的写法已经标准化,较前一些版本需要带前缀
firefox(-moz-)/chrome(-webkit-)/microsoft(-ms)/opera(-o-) [四种前缀对应四种解析引擎,我那样写只是曾经的代表浏览器,…比如现在opera都跑去用google的blink引擎]

###渐变角度(deg是degree的缩写,角度的意思)

自下而上: to top = 0deg || 360deg
自上而下: top bottom = 180deg || -180deg
自左到右: top left = -90deg || 270deg
自右到左: to right = 90deg || -270deg
右下角到左上角: to top left = 315deg || -45deg
左下角到右上角: to top right = -315deg || 45deg
右上角到左下角: to bottom left = 225deg || -135deg
左上角到右下角:to bootom right = 135deg || -225deg
温馨提示: 建议用角度比较标准化,英文方向的safari有些解析后和其他浏览器好像不一样

效果图

CSS3实现线性渐变用法示例代码详解

CSS3实现线性渐变用法示例代码详解

CSS3实现线性渐变用法示例代码详解

代码

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <style type="text/css" media="screen">
    div {
        width: 200px;
        height: 200px;
        border: 1px solid #ccc;
        box-sizing: border-box;
        text-align: center;
        line-height: 200px;
        float: left;
        margin: 10px;
    }
    /*
			我这里的类命名都是简写:
			u :up,
			d:down,
			l:left,
			r:right,
			b:bottom,
			2: to;
			角度正数是顺时针,负的逆时针;角度是代表到某个角度的时候开始往其他范围扩散哦;
			以前刚搞的时候也挺懵,其实自己多写写就晓得了;
			截止我写这篇文章,渐变的标准规范更加完善了,许多都不需要带前缀了;
			而为了兼顾移动端,webkit这种还不能丢掉

		*/
    
    .u2d {
        background: -webkit-linear-gradient(180deg, #590BCC, #18CC6C);
        background: linear-gradient(180deg, #590BCC, #18CC6C);
    }
    
    .d2u {
        background: -webkit-linear-gradient(0deg, #590BCC, #18CC6C);
        background: linear-gradient(0deg, #590BCC, #18CC6C);
    }
    
    .l2r {
        background: -webkit-linear-gradient(90deg, #590BCC, #18CC6C);
        background: linear-gradient(90deg, #590BCC, #18CC6C);
    }
    
    .r2l {
        background: -webkit-linear-gradient(-90deg, #590BCC, #18CC6C);
        background: linear-gradient(-90deg, #590BCC, #18CC6C);
    }
    
    .rb2lu {
        background: -webkit-linear-gradient(-45deg, #590BCC, #18CC6C);
        background: linear-gradient(-45deg, #590BCC, #18CC6C);
    }
    
    .lb2ru {
        background: -webkit-linear-gradient(45deg, #590BCC, #18CC6C);
        background: linear-gradient(45deg, #590BCC, #18CC6C);
    }
    
    .ru2lb {
        background: -webkit-linear-gradient(-135deg, #590BCC, #18CC6C);
        background: linear-gradient(-135deg, #590BCC, #18CC6C);
    }
    
    .lu2rd {
        background: -webkit-linear-gradient(135deg, #590BCC, #18CC6C);
        background: linear-gradient(135deg, #590BCC, #18CC6C);
    }
    
    .mclg1 {
        background: -webkit-linear-gradient(135deg, #D6C4F0, #F6B5B5,#18CC6C,#1AB25E);
        background: linear-gradient(135deg, #D6C4F0, #F6B5B5,#18CC6C,#1AB25E);
    }
    
    .mclg2 {
        background: -webkit-linear-gradient(135deg, #1FB4DC ,#18CC6C , #8B1A1A,#677C67,#BED128);
        background: linear-gradient(135deg, #1FB4DC ,#18CC6C , #8B1A1A,#677C67,#BED128);
    }
    
    .mclg3 {
        background: webkit-linear-gradient(135deg, #590BCC, #18CC6C,#B5D821,#22CB33,#BA8787,#050201);
        background: linear-gradient(135deg, #590BCC, #18CC6C,#B5D821,#22CB33,#BA8787,#050201);
    }
    
    .mclg4 {
        background: -webkit-linear-gradient(-135deg, rgba(20,20,20,.9) ,rgba(50,50,50,.6),rgba(60,125,70,.7), rgba(150,150,150,.8),rgba(200,200,200,.9),rgba(80,125,6,.75),rgba(175,75,75,.5));
        background: linear-gradient(-135deg, rgba(20,20,20,.9) ,rgba(50,50,50,.6),rgba(60,125,70,.7), rgba(150,150,150,.8),rgba(200,200,200,.9),rgba(80,125,6,.75),rgba(175,75,75,.5));
    }
    </style>
</head>

<body>
    <div class="u2d">自上而下</div>
    <div class="d2u">自下而上</div>
    <div class="l2r">自左到右</div>
    <div class="r2l">自右到左</div>
    <div class="rb2lu">右下角到左上角</div>
    <div class="lb2ru">左下角到右上角</div>
    <div class="ru2lb">右上角到左下角</div>
    <div class="lu2rd">左上角到右下角</div>
    <div class="mclg1">四种颜色渐变</div>
    <div class="mclg2">五种颜色渐变</div>
    <div class="mclg3">六种颜色渐变</div>
    <div class="mclg4">其中颜色带透明的渐变</div>
</body>

</html>

总结

CSS3的出现,让线性渐变不用只依赖PS实现了…前端的小伙伴也能自行做出各种挺炫的渐变效果!!!哈哈哈哈哈~~~

到此这篇关于CSS3实现线性渐变用法示例代码详解的文章就介绍到这了,更多相关css3 线性渐变内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

HTML / CSS 相关文章推荐
CSS教程:CSS3圆角属性
Apr 02 HTML / CSS
介绍CSS3使用技巧5个
Apr 02 HTML / CSS
深入CSS3 动画效果的总结详解
May 09 HTML / CSS
css3+jq创作含苞待放的荷花
Feb 20 HTML / CSS
CSS类名支持中文命名的示例
Apr 04 HTML / CSS
HTML5的一个显示电池状态的API简介
Jun 18 HTML / CSS
详解HTML5中rel属性的prefetch预加载功能使用
May 06 HTML / CSS
详解移动端html5页面长按实现高亮全选文本内容的兼容解决方案
Dec 03 HTML / CSS
Canvas高级路径操作之拖拽对象的实现
Aug 05 HTML / CSS
导出HTML5 Canvas图片并上传服务器功能
Aug 16 HTML / CSS
Canvas 文本填充线性渐变的使用详解
Jun 22 HTML / CSS
uniapp+Html5端实现PC端适配
Jul 15 HTML / CSS
CSS3 input框的实现代码类似Google登录的动画效果
Aug 04 #HTML / CSS
纯CSS3+DIV实现小三角形边框效果的示例代码
Aug 03 #HTML / CSS
纯CSS3实现鼠标滑过按钮动画第二节
Jul 16 #HTML / CSS
css3实现小箭头各种图形效果
Jul 08 #HTML / CSS
基于CSS3的animation属性实现微信拍一拍动画效果
Jun 22 #HTML / CSS
CSS3为背景图设置遮罩并解决遮罩样式继承问题
Jun 22 #HTML / CSS
CSS3 box-shadow属性实例详解
Jun 19 #HTML / CSS
You might like
Cappuccino 卡布其诺咖啡之制作
2021/03/03 冲泡冲煮
首页四格,首页五格For6.0(GBK)(UTF-8)[12种组合][9-18][版主安装测试通过]
2007/09/24 PHP
解决PHP4.0 和 PHP5.0类构造函数的兼容问题
2013/08/01 PHP
PHP代码优化技巧小结
2015/09/29 PHP
php中替换字符串函数strtr()和str_repalce()的用法与区别
2016/11/25 PHP
PHP字典树(Trie树)定义与实现方法示例
2017/10/09 PHP
PHP智能识别收货地址信息实例
2019/01/05 PHP
gearman管理工具GearmanManager的安装与php使用方法示例
2020/02/27 PHP
JavaScript setTimeout和setInterval的使用方法 说明
2010/03/25 Javascript
JavaScript的模块化:封装(闭包),继承(原型) 介绍
2013/07/22 Javascript
javascript实现跨域的方法汇总
2015/06/25 Javascript
深入解读JavaScript中的Hoisting机制
2015/08/12 Javascript
Hammer.js+轮播原理实现简洁的滑屏功能
2016/02/02 Javascript
jQuery实现的简单分页示例
2016/06/01 Javascript
获取url中用&amp;隔开的参数实例(分享)
2017/05/28 Javascript
深入浅析Node.js单线程模型
2017/07/10 Javascript
Node.js中环境变量process.env的一些事详解
2017/10/26 Javascript
vue中如何实现后台管理系统的权限控制的方法步骤
2019/09/05 Javascript
在vue中使用Echarts画曲线图的示例
2020/10/03 Javascript
Linux下将Python的Django项目部署到Apache服务器
2015/12/24 Python
pyenv命令管理多个Python版本
2017/03/26 Python
http请求 request失败自动重新尝试代码示例
2018/01/25 Python
Python基于Logistic回归建模计算某银行在降低贷款拖欠率的数据示例
2019/01/23 Python
python实现鸢尾花三种聚类算法(K-means,AGNES,DBScan)
2019/06/27 Python
python字典的遍历3种方法详解
2019/08/10 Python
基于numpy中的expand_dims函数用法
2019/12/18 Python
用 Python 制作地球仪的方法
2020/04/24 Python
美国最好的保健品打折网店:Swanson
2017/08/04 全球购物
全球速卖通西班牙站:AliExpress西班牙
2017/10/30 全球购物
原材料检验岗位职责
2014/03/15 职场文书
2015年家长学校工作总结
2015/04/22 职场文书
停发工资证明范本
2015/06/12 职场文书
车辆安全隐患排查制度
2015/08/05 职场文书
CocosCreator入门教程之网络通信
2021/04/16 Javascript
浅谈MySQL之浅入深出页原理
2021/06/23 MySQL
深入浅出的讲解:信号调制到底是如何实现的
2022/02/18 无线电