加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

css3渐变背景的兼容问题怎样处理?

发布时间:2022-03-03 08:47:29 所属栏目:编程 来源:互联网
导读:对于CSS3实现渐变背景的内容,我们之前也了解了很多,我们知道实现渐变背景并不困难,但是因为浏览器的版本问题,css3渐变背景的兼容问题大家要注意,对此这篇文章就给大家分享一下css3渐变背景的兼容问题的解决方法。 我们在做一个渐变背景颜色的时候会用到
  对于CSS3实现渐变背景的内容,我们之前也了解了很多,我们知道实现渐变背景并不困难,但是因为浏览器的版本问题,css3渐变背景的兼容问题大家要注意,对此这篇文章就给大家分享一下css3渐变背景的兼容问题的解决方法。
 
  我们在做一个渐变背景颜色的时候会用到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:分别表示起始颜色和终止颜色
 
 
 
  这是淘宝网导航栏的一个例子,它的渐变色实现如下:
 
  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)
  ;
  执行结果:
 
 
 
  当为#000000的时候
 
  filter:progid:
  DXImageTransform.Microsoft.gradient
  (startColorstr='#000000',
  endColorstr='#ffff5000', GradientType=1);
  执行结果:
 
 
 
  接下来我们分析下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相似,都是设置透明度的。
 
 

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读