背景颜色渐变 css3 ---- 转自:至尊宝的BLOG http://blog.sina.com.cn/zzbnie

本文主要是介绍背景颜色渐变 css3 ---- 转自:至尊宝的BLOG http://blog.sina.com.cn/zzbnie,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

背景颜色渐变 css3

一. Webkit浏览器

      (1) 第一种写法:

            background:-webkit-gradient(linear ,10% 10%,100% 100%,

                                                              color-stop(0.14,rgb(255,0,0)),

                                                              color-stop(0.5,rgb(255,255,0)),

                                                              color-stop(1,rgb(0,0,255)) );

             第一个参数:表示的是渐变的类型

                                  linear线性渐变

             第二个参数:分别对应x,y方向渐变的起始位置

             第三个参数:分别对应x,y方向渐变的终止位置

             第四/五/N个参数:设置渐变的位置及颜色

      (2)第二种写法:这种写法比较简单,而且效果比较自然

            background:-webkit-gradient(linear, 0 0, 0 100%, from(#2074af), to(#2c91d2));

             第一个参数:表示的是渐变的类型

                                   linear线性渐变

             第二个参数:分别对应x,y方向渐变的起始位置

             第三个参数:分别对应x,y方向渐变的终止位置

             第四个参数:设置了起始位置的颜色

             第五个参数:设置了终止位置的颜色

二.Mozilla浏览器

      (1)第一种写法:

           background:-moz-linear-gradient(10 10 90deg,

                                                                   rgb(25,0,0) 14%,

                                                                   rgb(255,255,0) 50%,

                                                                   rgb(0,0,255) 100%);

           第一个参数:设置渐变起始位置及角度

           第二/三/四/N个参数:设置渐变的颜色和位置

      (2)第二种写法:这种写法比较简单,而且效果比较自然

           background:-moz-linear-gradient(top, #FFC3C8,#FF9298);

           第一个参数:设置渐变的起始位置

           第二个参数:设置起始位置的颜色

           第三个参数:设置终止位置的颜色

三.IE 浏览器

     IE浏览器实现渐变只能使用IE自己的滤镜去实现

          filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffff,endColorstr=#9fffff,grandientType=1);

          第一个参数:渐变起始位置的颜色

          第二个参数:渐变终止位置的颜色

          第三个参数:渐变的类型

                                  0 代表竖向渐变        1  代表横向渐变  

     P.S.这里设置背景的时候不需要给background设置,直接用filter即可,不要和其他的浏览器混淆

IE浏览器下的渐变背景 

IE浏览器下渐变背景的使用需要使用IE的渐变滤镜。如下代码: 

filter: progid:DXImageTransform.Microsoft.gradient(startcolorstr=red,endcolorstr=blue,gradientType=1); 

相关说明: 
上面的滤镜代码主要有三个参数,依次是:startcolorstr, endcolorstr, 以及gradientType。 
其中gradientType=1代表横向渐变,gradientType=0代表纵向淅变。startcolorstr=”色彩” 代表渐变渐变起始的色彩,endcolorstr=”色彩” 代表渐变结尾的色彩。 

上面代码实现的是红色至蓝色的渐变,但是不含透明度变化,这是由于IE目前尚未支持opacity属性以及RGBA颜色,要实现IE下的透明度变化,还是需要使用IE滤镜,IE的透明度滤镜功能比较强大,这种强大反而与Firefox或是Safari浏览器下的css-gradient背景渐变的用法类似。例如下面的使用: 

filter:alpha(opacity=100 finishopacity=0 style=1 startx=0,starty=5,finishx=90,finishy=60) 

其中各个参数的含义如下: 
opacity表示透明度,默认的范围是从0 到 100,他们其实是百分比的形式。也就是说,0代表完全透明,100代表完全不透明。 
finishopacity 是一个可选参数,如果想要设置渐变的透明效果,就可以使用他们来指定结束时的透明度。范围也是0 到 100。 
style用来指定透明区域的形状特征: 
0 代表统一形状 
1 代表线形 
2 代表放射状 
3 代表矩形。 
startx 渐变透明效果开始处的 X坐标。 
starty 渐变透明效果开始处的 Y坐标。 
finishx 渐变透明效果结束处的 X坐标。 
finishy 渐变透明效果结束处的 Y坐标。 

综合上述,实现IE下含透明度变化红蓝垂直渐变的代码如下: 

.gradient{ 
width:300px; 
height:150px; 
filter:alpha(opacity=100 finishopacity=50 style=1 startx=0,starty=0,finishx=0,finishy=150) progid:DXImageTransform.Microsoft.gradient(startcolorstr=red,endcolorstr=blue,gradientType=1); 
-ms-filter:alpha(opacity=100 finishopacity=50 style=1 startx=0,starty=0,finishx=0,finishy=150) progid:DXImageTransform.Microsoft.gradient(startcolorstr=red,endcolorstr=blue,gradientType=1); 


<div class="gradient"></div> 

三、Firefox浏览器下的渐变背景 

对于Firefox浏览器下(Firefox 3.6+)渐变背景的实现需使用CSS3渐变属性,-moz-linear-gradient属性,在之前文章我详细介绍了Firefox3.6下渐变背景的实现,您有兴趣可以狠狠地点击这里:CSS渐变之CSS3 gradient在Firefox3.6下的使用。这里我就不再具体讲述了,对于本文开头提到的要实现的效果的实现可以参见下面的代码: 

.gradient{ 
width:300px; 
height:150px; 
background:-moz-linear-gradient(top, red, rgba(0, 0, 255, 0.5)); 


<div class="gradient"></div> 

四、chrome/Safari浏览器下的渐变背景实现 

对于webkit核心的浏览器,如Chrome/Safari浏览器下渐变背景的实现也是使用CSS3 渐变方法,css-gradient,具体为-webkit-gradient,使用语Firefox浏览器是有一些差异的。我在上上一篇文章对此进行了非常详细的介绍,您可以狠狠地点击这里:CSS gradient渐变之webkit核心浏览器下的使用。具体使用就不详述了,参见下面的代码: 

.gradient{ 
width:300px; 
height:150px; 
background:-webkit-gradient(linear, 0 0, 0 bottom, from(#ff0000), to(rgba(0, 0, 255, 0.5))); 


<div class="gradient"></div> 

五、综合 – 兼容性的渐变背景效果 

相关代码如下: 

.gradient{ 
width:300px; 
height:150px; 
filter:alpha(opacity=100 finishopacity=50 style=1 startx=0,starty=0,finishx=0,finishy=150) progid:DXImageTransform.Microsoft.gradient(startcolorstr=red,endcolorstr=blue,gradientType=0); 
-ms-filter:alpha(opacity=100 finishopacity=50 style=1 startx=0,starty=0,finishx=0,finishy=150) progid:DXImageTransform.Microsoft.gradient(startcolorstr=red,endcolorstr=blue,gradientType=0); 
background:red;  
background:-moz-linear-gradient(top, red, rgba(0, 0, 255, 0.5)); 
background:-webkit-gradient(linear, 0 0, 0 bottom, from(#ff0000), to(rgba(0, 0, 255, 0.5))); 


<div class="gradient"></div> 
 
 
最后来个例子:
 

效果如图:

css3渐变背景

代码如下:

background: rgb(30,87,153);
background: -moz-linear-gradient(top,  rgba(30,87,153,1) 0%, rgba(32,124,202,1) 50%, rgba(41,137,216,1) 50%, rgba(125,185,232,1) 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(30,87,153,1)), color-stop(50%,rgba(32,124,202,1)), color-stop(50%,rgba(41,137,216,1)), color-stop(100%,rgba(125,185,232,1)));
background: -webkit-linear-gradient(top,  rgba(30,87,153,1) 0%,rgba(32,124,202,1) 50%,rgba(41,137,216,1) 50%,rgba(125,185,232,1) 100%);
background: -o-linear-gradient(top,  rgba(30,87,153,1) 0%,rgba(32,124,202,1) 50%,rgba(41,137,216,1) 50%,rgba(125,185,232,1) 100%);
background: -ms-linear-gradient(top,  rgba(30,87,153,1) 0%,rgba(32,124,202,1) 50%,rgba(41,137,216,1) 50%,rgba(125,185,232,1) 100%);
background: linear-gradient(top,  rgba(30,87,153,1) 0%,rgba(32,124,202,1) 50%,rgba(41,137,216,1) 50%,rgba(125,185,232,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e5799', endColorstr='#7db9e8',GradientType=0 );

效果二透明由有到无的透明效果

css3渐变背景

background: -moz-linear-gradient(top,  rgba(30,87,153,1) 0%, rgba(125,185,232,0) 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(30,87,153,1)), color-stop(100%,rgba(125,185,232,0)));

background: -webkit-linear-gradient(top,  rgba(30,87,153,1) 0%,rgba(125,185,232,0) 100%);
background: -o-linear-gradient(top,  rgba(30,87,153,1) 0%,rgba(125,185,232,0) 100%);
background: -ms-linear-gradient(top,  rgba(30,87,153,1) 0%,rgba(125,185,232,0) 100%);
background: linear-gradient(top,  rgba(30,87,153,1) 0%,rgba(125,185,232,0) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e5799', endColorstr='#007db9e8',GradientType=0 );

这篇关于背景颜色渐变 css3 ---- 转自:至尊宝的BLOG http://blog.sina.com.cn/zzbnie的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/629318

相关文章

Java实现Excel与HTML互转

《Java实现Excel与HTML互转》Excel是一种电子表格格式,而HTM则是一种用于创建网页的标记语言,虽然两者在用途上存在差异,但有时我们需要将数据从一种格式转换为另一种格式,下面我们就来看看... Excel是一种电子表格格式,广泛用于数据处理和分析,而HTM则是一种用于创建网页的标记语言。虽然两

详解Java如何向http/https接口发出请求

《详解Java如何向http/https接口发出请求》这篇文章主要为大家详细介绍了Java如何实现向http/https接口发出请求,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 用Java发送web请求所用到的包都在java.net下,在具体使用时可以用如下代码,你可以把它封装成一

vue解决子组件样式覆盖问题scoped deep

《vue解决子组件样式覆盖问题scopeddeep》文章主要介绍了在Vue项目中处理全局样式和局部样式的方法,包括使用scoped属性和深度选择器(/deep/)来覆盖子组件的样式,作者建议所有组件... 目录前言scoped分析deep分析使用总结所有组件必须加scoped父组件覆盖子组件使用deep前言

VUE动态绑定class类的三种常用方式及适用场景详解

《VUE动态绑定class类的三种常用方式及适用场景详解》文章介绍了在实际开发中动态绑定class的三种常见情况及其解决方案,包括根据不同的返回值渲染不同的class样式、给模块添加基础样式以及根据设... 目录前言1.动态选择class样式(对象添加:情景一)2.动态添加一个class样式(字符串添加:情

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一

React实现原生APP切换效果

《React实现原生APP切换效果》最近需要使用Hybrid的方式开发一个APP,交互和原生APP相似并且需要IM通信,本文给大家介绍了使用React实现原生APP切换效果,文中通过代码示例讲解的非常... 目录背景需求概览技术栈实现步骤根据 react-router-dom 文档配置好路由添加过渡动画使用

Python如何实现 HTTP echo 服务器

《Python如何实现HTTPecho服务器》本文介绍了如何使用Python实现一个简单的HTTPecho服务器,该服务器支持GET和POST请求,并返回JSON格式的响应,GET请求返回请求路... 一个用来做测试的简单的 HTTP echo 服务器。from http.server import HT

使用Vue.js报错:ReferenceError: “Vue is not defined“ 的原因与解决方案

《使用Vue.js报错:ReferenceError:“Vueisnotdefined“的原因与解决方案》在前端开发中,ReferenceError:Vueisnotdefined是一个常见... 目录一、错误描述二、错误成因分析三、解决方案1. 检查 vue.js 的引入方式2. 验证 npm 安装3.

vue如何监听对象或者数组某个属性的变化详解

《vue如何监听对象或者数组某个属性的变化详解》这篇文章主要给大家介绍了关于vue如何监听对象或者数组某个属性的变化,在Vue.js中可以通过watch监听属性变化并动态修改其他属性的值,watch通... 目录前言用watch监听深度监听使用计算属性watch和计算属性的区别在vue 3中使用watchE

python解析HTML并提取span标签中的文本

《python解析HTML并提取span标签中的文本》在网页开发和数据抓取过程中,我们经常需要从HTML页面中提取信息,尤其是span元素中的文本,span标签是一个行内元素,通常用于包装一小段文本或... 目录一、安装相关依赖二、html 页面结构三、使用 BeautifulSoup javascript