`
cugbmao09
  • 浏览: 35083 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

CSS3渐变的奥秘

    博客分类:
  • CSS3
 
阅读更多

 

渐变

基于CSS的渐变相较于图片的渐变,最大的优点是便于修改,同时支持无级缩放,过渡更加自然!目前,实现CSS渐变的只有基于webkit内核和Gecko内核的浏览器,代表浏览器是Chrome、Safari和Firefox,基于Presto内核的Opera浏览器暂时不支持(升级后的11.10版本添加了对渐变的支持),基于Trident的IE虽然可以通过滤镜的方式实现,但并不提倡!

同时,不同内核实现渐变的语法不同,均为私有属性,目前运用于产品中,还不现实,但就像前言说的,体验一下CSS3的神奇之处,还是很有意思的!

测试基于

  • safari 4.03
  • chrome 6.0.408.1
  • firefox 3.63

注意:CSS代码中还利用了rgba控制颜色的透明度,最后一位即为透明度!

webkit实现语法(Chrome、Safari)

更新:webkit小组宣布,在css3渐变上,将采用Mozilla的语法,但由于以下语法在08年提出,已经较为广泛的使用,所以在新的Webkit引擎中,保留了下列语法,但是建议使用Mozilla语法。

详细语法

-webkit-gradient(type, start_point, end_point, / color-stop...)
-webkit-gradient(type, inner_center, inner_radius, outer_center, outer_radius, / color-stop...)

实例一:线性渐变

//线性渐变
width:100px;
height:100px;
border: 1px solid #666;
background: -webkit-gradient(linear, left top, left bottom , from(#09F), to(#0FF));

实例二:多个径向渐变

//多个径向渐变
width: 100px;
height: 100px;
border: 1px solid #666;
background:
-webkit-gradient(radial, 70 70, 15, 70 90, 40, from(#00c9ff), to(rgba(0, 201, 255, 0)), color-stop(80%, #00b5e2)),
-webkit-gradient(radial, 70 20, 5, 80 24, 20, from(#E9D916), to(rgba(233, 217, 22, 0)), color-stop(80%, #CEC013)),
-webkit-gradient(radial, 10 90, 20, 15 100, 60, from(#F6C), to(rgba(252, 129, 231, 0)), color-stop(90%, #F0C));

效果如下:

webkit下的CSS3渐变

 

处理线性渐变,chrome和safari表现一致,但是在多个径向渐变的演示中,safari下的形状边缘有明显锯齿(非图片压缩导致),同时背景呈灰色,chrome没有这些问题!

Gecko实现语法(Firefox)

详细语法

-moz-linear-gradient( [<point> || <angle>,]? <stop>, <stop> [, <stop>]* )
-moz-radial-gradient( [<position> || <angle>,]? [<shape> || <size>,]? <stop>, <stop>[, <stop>]* )

实例三:线性渐变

//线性渐变
width:100px;
height:100px;
border: 1px solid #666;
background: -moz-linear-gradient(top, #09F, #0FF);

实例四:径向渐变

//径向渐变 以距离圆形最远的边为参考半径
width: 100px;
height: 150px;
border: 1px solid #666;
background: -moz-radial-gradient(30px 30px 45deg, circle farthest-side, #58ff00 0%, rgba(222, 255, 0, 0) 100%);
//径向渐变 以距离圆形最远的角为参考半径
width: 150px;
height: 100px;
border: 1px solid #666;
background: -moz-radial-gradient(30px 30px 45deg, circle farthest-corner, #58ff00 0%, rgba(222, 255, 0, 0) 100%);

实例五:径向渐变(椭圆)

width: 500px;
height: 100px;
border: 1px solid #666;
background: -moz-radial-gradient(30px 30px 45deg, ellipse farthest-corner, #58ff00 0%, rgba(222, 255, 0, 0) 100%);

实例六:多个径向渐变

//多个径向渐变
width: 100px;
height: 100px;
border: 1px solid #666;
background:
-moz-radial-gradient(30px 30px, circle farthest-corner, #58ff00 0%, rgba(222, 255, 0, 0) 30%),
-moz-radial-gradient(50px 70px, circle farthest-corner, #F30 0%, rgba(255, 159, 34, 0) 60%),
-moz-radial-gradient(80px 10px, circle farthest-corner, #03F 0%, rgba(222, 255, 0, 0) 80%);

效果如下:

Gecko内核的CSS3渐变

看上去,Gecko内核对渐变有更多的控制,不但可以控制渐变形状,还可以根据盒模型自动设置半径!

分享到:
评论

相关推荐

    【代码】CSS那些事儿书中源码.rar

    - **CSS3新特性**:如渐变(Gradients)、阴影(Box Shadow和Text Shadow)、过渡(Transitions)和动画(Animations),以及伪类和伪元素的使用。 - **CSS预处理器**:可能会涉及到Sass、Less等预处理器,解释了...

    css那些事儿绝对正版书中源代码.zip

    CSS3引入了许多新的特性,如阴影、渐变、过渡和动画,为网页增添了动态效果。这些视觉效果的实现,可以极大地提升用户体验。同时,CSS3还提供了多列布局、媒体查询等,进一步增强了布局的灵活性。 再者,可能还会...

    div+css经典案例源码

    4. **颜色与背景**:掌握颜色值、渐变、背景图像和背景重复等概念,为网页增添视觉吸引力。 5. **字体与文本**:学习调整字体、字号、行高、字母间距等,以优化文本可读性。 6. **响应式设计**:理解媒体查询@media...

    精通CSS

    在探讨CSS的奥秘时,我们不可避免地会遇到背景图像这一强大的设计工具。背景图像不仅能够提升网页的视觉吸引力,还能帮助设计师实现各种创意布局。正如《精通CSS》一书中所言,背景图像的引入改变了网页设计的游戏...

    商务企业网站CSS模板113450_html网站模板_网页源码移动端前端_H5模板_自适应响应式源码.rar

    CSS3的引入更是增强了其表现力,例如阴影效果、渐变、动画和过渡等,使得网页更具动态性和交互性。 其次,HTML5作为第五代超文本标记语言,是构建网页的基础。它的新特性,如离线存储、音频视频处理、画布(Canvas...

    商务企业网站CSS模板313430_html网站模板_网页源码移动端前端_H5模板_自适应响应式源码.rar

    在这个模板中,CSS3被广泛运用,提供了丰富的样式控制,如动画效果、渐变色、阴影等,使网页更具视觉吸引力。同时,通过合理的CSS布局,如Flexbox或Grid,可以实现灵活的多设备适配,让网页在不同屏幕尺寸下保持一致...

    黑色海洋探索网页模板是一款太空海底探索html5网站模板下载。_html网站模板_网页源码移动端前端_H5模板_自适应.rar

    CSS3还提供了阴影、渐变、圆角等视觉特效,使得设计更加立体和精致。 JavaScript作为客户端脚本语言,在这个模板中起到了关键作用,它实现了动态交互功能,如滑动效果、下拉菜单、轮播图等。使用JavaScript库或框架...

    海底生物展示网站模板是一款简洁好看的海底世界HTML5网站模板。.zip

    在这款模板中,可能运用了CSS3的渐变、阴影、边框半径等特性,来创造出深海的神秘感和立体效果。同时,JavaScript可能被用于实现交互功能,如图像滑动展示、悬浮按钮特效等,以增强用户互动体验。 此外,考虑到响应...

    5日学会动态HTML

    你将学习如何使用CSS3的新特性,如媒体查询,为不同设备提供适配的界面。 第三天:JavaScript入门与DOM操作 JavaScript是实现动态效果的核心语言,它可以监听用户行为,修改HTML和CSS。DOM是网页内容的结构化表示,...

    十六进制色

    #### 3. 十六进制色彩在设计中的应用 在网页设计中,十六进制色彩代码被广泛用于定义背景色、文本色、按钮色等元素的颜色。例如,HTML和CSS中可以这样使用: ```html body { background-color: #FFC0CB; /* Pink...

    Caique-Meu-Projeto

    CSS3引入了许多新特性,如阴影(box-shadow)、渐变(gradients)、过渡(transitions)、动画(animations)和多列布局(multi-column layout)。这些增强了用户体验,让网页更具吸引力和交互性。同时,CSS3还支持...

    homage-to-the-square:根据约瑟夫·阿尔伯斯(Josef Albers)的绘画系列

    例如,使用CSS渐变创建颜色过渡: ```css .square:hover { background-image: linear-gradient(to bottom, #FF0000, #00FF00); transition: background 0.5s ease; } ``` 最后,考虑到这个项目名为"homage-to-...

    网站

    2. **颜色和背景**:CSS允许我们设置文本颜色、背景颜色、渐变背景,甚至可以设置背景图片和背景重复方式,为网页增添视觉吸引力。 3. **字体和文本样式**:可以指定字体家族、大小、颜色、行高、对齐方式等,以...

    jquery老黄历特效.zip

    2. **CSS样式**:为了让老黄历看起来古色古香,CSS可以用来设置字体、颜色、背景、边框等样式,甚至可以通过CSS3动画来增强视觉效果。比如,可以使用渐变背景、阴影效果来模拟纸质质感,或者使用动画效果使日期滑动...

    colmar_academy

    此外,还将涉及到CSS3的新特性,如渐变、阴影、过渡和动画效果,以及响应式设计,使网页能在不同设备上展现出良好的用户体验。 "colmar_academy-master"这个文件名暗示了这是一个项目的源代码仓库,其中包含了完成...

    星梦奇缘

    在这个被称为“星梦奇缘”的项目中,遮罩应用无疑扮演了关键的角色,让我们一同深入探讨这一技术的奥秘。 1. **遮罩的基本原理** 遮罩的工作原理类似于现实生活中的剪纸艺术,它通过定义一个透明度区域来决定哪些...

Global site tag (gtag.js) - Google Analytics