CSS3实现渐变背景兼容问题


Posted in HTML / CSS onMay 06, 2020

我们在做一个渐变背景颜色的时候会用到linear-gradient() 函数用于创建一个线性渐变的 "图像"。它是css3中的语法,最低兼容IE10

background-image: linear-gradient(to right, #ff9000, #ff5000);

direction:用于指定渐变方向。它可以接受一个表示角度的值(可用的单位deg、rad、grad或turn)或者是表示方向的关键词(top、right、bottom、left、left top、top right、bottom right或者left bottom)。

color-start, color-end:分别表示起始颜色和终止颜色

CSS3实现渐变背景兼容问题

这是淘宝网导航栏的一个例子,它的渐变色实现如下:

background-image: linear-gradient(to right, #ff9000, #ff5000);

但是,linear-gradient()最低兼容IE10,要兼容IE8和IE9的话只能使用filter替代,如下:

background-image: linear-gradient(to right, #ff9000, #ff5000);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff9000', 
endColorstr='#ffff5000', GradientType=1);
-ms-filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff9000', 
endColorstr='#ffff5000', GradientType=1);

我们在使用filter实现渐变的时候要注意颜色的值不能填简写(如#000),一定要写完整,我们来看看#000和#000000的区别:

当为#000的时候

filter:progid:DXImageTransform.Microsoft.gradient
(startColorstr='#000',
 endColorstr='#ffff5000', 
GradientType=1)
;

执行结果:

CSS3实现渐变背景兼容问题

当为#000000的时候

filter:progid:
DXImageTransform.Microsoft.gradient
(startColorstr='#000000', 
endColorstr='#ffff5000', GradientType=1);

执行结果:

CSS3实现渐变背景兼容问题

接下来我们分析下filter里面值:

细心的小伙伴们可以看到filter里面的startColorstr和endColorstr颜色值多了两个ff,其实startColorstr和endColorstr并不是简单的代表颜色,它们的格式应该是 #AARRGGBB 。AA, RR, GG, BB 为十六进制正整数。取值范围为 00 - FF 。RR 指定红色值, GG 指定绿色值, BB 指定蓝色值。 AA 指定透明度。00 是完全透明。FF 是完全不透明。超出取值范围的值将被恢复为默认值。取值范围为#FF000000 - #FFFFFFFF 。AA跟我们之前学的rgba()中的a相似,都是设置透明度的。

GradientType=1表示方向,1表示水平方向,0表示垂直方向 

到此这篇关于CSS3实现渐变背景兼容问题的文章就介绍到这了,更多相关css3 渐变背景内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

HTML / CSS 相关文章推荐
CSS3中的元素过渡属性transition示例详解
Nov 30 HTML / CSS
CSS3等相关属性制作分页导航实现代码
Dec 24 HTML / CSS
使用css3匹配手机屏幕横竖状态
Jan 27 HTML / CSS
用CSS3写的模仿iPhone中的返回按钮
Apr 04 HTML / CSS
CSS3中几个新增加的盒模型属性使用教程
Mar 01 HTML / CSS
html5仿支付宝密码框的实现代码
Sep 06 HTML / CSS
html5 svg 中元素点击事件添加方法
Jan 16 HTML / CSS
深入解析HTML5 Canvas控制图形矩阵变换的方法
Mar 24 HTML / CSS
浅析border-radius如何兼容IE
Apr 19 HTML / CSS
HTML5公共页面提取作为公用代码的方法
Jun 30 HTML / CSS
html5 拖拽及用 js 实现拖拽功能的示例代码
Oct 23 HTML / CSS
Web前端:CSS最强总结 附详细代码
Mar 31 HTML / CSS
通过css3的filter滤镜改变png图片的颜色的示例代码
May 06 #HTML / CSS
基于ccs3的timeline时间线实现方法
Apr 30 #HTML / CSS
CSS3实现div从下往上滑入滑出效果示例
Apr 28 #HTML / CSS
深入浅析CSS3中的Flex布局整理
Apr 27 #HTML / CSS
纯CSS3实现移动端展开和收起效果的示例代码
Apr 26 #HTML / CSS
CSS实现聊天气泡效果
Apr 26 #HTML / CSS
css3 实现元素弧线运动的示例代码
Apr 24 #HTML / CSS
You might like
浅谈apache和nginx的rewrite的区别
2013/02/22 PHP
PHP统计目录大小的自定义函数分享
2014/11/18 PHP
学习php设计模式 php实现备忘录模式(Memento)
2015/12/09 PHP
PHP简单操作MongoDB的方法(安装及增删改查)
2016/05/26 PHP
如何实现JS函数的重载
2006/09/22 Javascript
读jQuery之十四 (触发事件核心方法)
2011/08/23 Javascript
Javascript生成json的函数代码(可以用php的json_decode解码)
2012/06/11 Javascript
js字符串日期yyyy-MM-dd转化为date示例代码
2014/03/06 Javascript
Javascript排序算法之合并排序(归并排序)的2个例子
2014/04/04 Javascript
JS 排序输出实现table行号自增前端动态生成的tr
2014/08/13 Javascript
JavaScript使用Max函数返回两个数字中较大数的方法
2015/04/06 Javascript
node.js入门实例helloworld详解
2015/12/23 Javascript
JavaScript中日期函数的相关操作知识
2016/08/03 Javascript
bootstrap 下拉多选框进行多选传值问题代码分析
2017/02/14 Javascript
js实现兼容PC端和移动端滑块拖动选择数字效果
2017/02/16 Javascript
javascript 通过键名获取键盘的keyCode方法
2017/12/31 Javascript
关于Webpack dev server热加载失败的解决方法
2018/02/22 Javascript
Vuex持久化插件(vuex-persistedstate)解决刷新数据消失的问题
2019/04/16 Javascript
JQuery常见节点操作实例分析
2019/05/15 jQuery
Vue-cli3项目引入Typescript的实现方法
2019/10/18 Javascript
Python字符编码与函数的基本使用方法
2017/09/30 Python
Python字典中的键映射多个值的方法(列表或者集合)
2018/10/17 Python
解决Python selenium get页面很慢时的问题
2019/01/30 Python
Django 多环境配置详解
2019/05/14 Python
简单了解python 邮件模块的使用方法
2019/07/24 Python
selenium WebDriverWait类等待机制的实现
2020/03/18 Python
HTML5 Notification(桌面提醒)功能使用实例
2014/03/17 HTML / CSS
这76道Java面试题及答案,祝你能成功通过面试
2016/04/16 面试题
我的画教学反思
2014/04/28 职场文书
电子商务专业毕业生求职信
2014/06/12 职场文书
2014年四风问题个人对照自查剖析材料
2014/09/15 职场文书
喋血孤城观后感
2015/06/08 职场文书
证婚人婚礼致辞
2015/07/28 职场文书
MySQL中distinct和count(*)的使用方法比较
2021/05/26 MySQL
Vue图片裁剪组件实例代码
2021/07/02 Vue.js
收音机爱好者玩机13年,简评其使用过的19台收音机
2022/04/30 无线电