iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >如何在CSS3中使用linear-gradient属性
  • 670
分享到

如何在CSS3中使用linear-gradient属性

2023-06-08 18:06:05 670人浏览 安东尼
摘要

本篇文章为大家展示了如何在css3中使用linear-gradient属性,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一、线性渐变在 Mozilla 下的应用语法:-moz-linear-grad

本篇文章为大家展示了如何在css3中使用linear-gradient属性,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

一、线性渐变在 Mozilla 下的应用

语法:

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

参数:其共有三个参数,第一个参数表示线性渐变的方向,top 是从上到下、left 是从左到右,如果定义成 left top,那就是从左上角到右下角。第二个和第三个参数分别是起点颜色和终点颜色。你还可以在它们之间插入更多的参数,表示多种颜色的渐变。如图所示:

如何在CSS3中使用linear-gradient属性

根据上面的介绍,我们先来看一个简单的例子:

html

<div class="example example1"></div>

CSS

.example {   width: 150px;   height: 80px; }

如无特殊说明,我们后面的示例都是应用这一段 html 和 css 的基本代码。

现在我们给这个div应用一个简单的渐变样式:

.example1 {   background: -moz-linear-gradient( top,#ccc,#000);}

效果如下:

如何在CSS3中使用linear-gradient属性

二、线性渐变在 Webkit 下的应用

语法:

-WEBkit-linear-gradient( [<point> || <angle>,]? <stop>, <stop> [, <stop>]* )//最新发布书写语法-webkit-gradient(<type>, <point> [, <radius>]?, <point> [, <radius>]? [, <stop>]*) //老式语法书写规则

参数:-webkit-gradient 是 webkit 引擎对渐变的实现参数,一共有五个。第一个参数表示渐变类型(type),可以是linear(线性渐变)或者radial(径向渐变)。第二个参数和第三个参数,都是一对值,分别表示渐变起点和终点。这对值可以用坐标形式表示,也可以用关键值表示,比如 left top(左上角)和left bottom(左下角)。第四个和第五个参数,分别是两个color-stop函数。color-stop 函数接受两个参数,第一个表示渐变的位置,0为起点,0.5为中点,1为结束点;第二个表示该点的颜色。如图所示:

如何在CSS3中使用linear-gradient属性

  如何在CSS3中使用linear-gradient属性

我们先来看一个老式的写法示例:

代码如下:

background: -webkit-gradient(linear,center top,center bottom,from(#ccc), to(#000));

效果如下所示:

如何在CSS3中使用linear-gradient属性

接着我们在来看一下新式的写法:

-webkit-linear-gradient(top,#ccc,#000);

这个效果我就不在贴出来了,大家在浏览器中一看就明白了,他们是否一致的效果。仔细对比,在 Mozilla 和 Webkit 下两者的学法都基本上一致了,只是其前缀的区别,当然哪一天他们能统一成一样,对我们来说当然是更好了,那就不用去处理了。将大大节省我们的开发时间哟。

三、线性渐变在 Opera 下的应用

语法:

代码如下:

-o-linear-gradient([<point> || <angle>,]? <stop>, <stop> [, <stop>]);

参数:-o-linear-gradient 有三个参数。第一个参数表示线性渐变的方向,top 是从上到下、left 是从左到右,如果定义成 left top,那就是从左上角到右下角。第二个和第三个参数分别是起点颜色和终点颜色。你还可以在它们之间插入更多的参数,表示多种颜色的渐变。(注:Opera 支持的版本有限,本例测试都是在 Opera11.1 版本下,后面不在提示),如图所示:

如何在CSS3中使用linear-gradient属性

示例代码:

background: -o-linear-gradient(top,#ccc, #000);

效果如图所示:

如何在CSS3中使用linear-gradient属性

四、线性渐变在 Trident (IE) 下的应用

语法:

filter: progid:DXImageTransfORM.Microsoft.gradient(GradientType=0, startColorstr=#1471da, endColorstr=#1C85FB);-ms-filter: "progid:DXImageTransform.Microsoft.gradient (GradientType=0, startColorstr=#1471da, endColorstr=#1C85FB)";

IE依靠滤镜实现渐变。startColorstr表示起点的颜色,endColorstr 表示终点颜色。GradientType 表示渐变类型,0 为缺省值,表示垂直渐变,1 表示水平渐变。如图所示:

如何在CSS3中使用linear-gradient属性

上面我们主要介绍了线性渐变在上述四大核心模块下的实现方法,接着我们主要针对线性渐变在 Mozilla、Webkit、Opera 三大模块下实现各种不同线性渐变实例:

从上面的语法中我们可以很清楚的知道,要创建一个线性渐变,我们需要创建一个起点和一个渐变方向(或角度),定义一个起始色:

-moz-linear-gradient( [<point> || <angle>,]? <stop>, <stop> [, <stop>]* )-webkit-linear-gradient( [<point> || <angle>,]? <stop>, <stop> [, <stop>]* )-o-linear-gradient( [<point> || <angle>,]? <stop>, <stop> [, <stop>]* )

具体应用如下:

background:-moz-linear-gradient(left,#ace,#f96);background:-webkit-gradient(linear,0 50%,100% 50%,from(#ace),to(#f96));background:-webkit-linear-gradient(left,#ace,#f96);background:-o-linear-gradient(left,#ace,#f96); 

效果如下:

如何在CSS3中使用linear-gradient属性

起始点(Starting Point)的工作方式类似于 background position。您可以设置水平和垂直位置为百分比,或以像素为单位,或在水平方向上可以使用left/center/right,在垂直方向上可以使用top/center/bottom。位置起始于左上角。如果你不指定水平或垂直位置,它将默认为center。其工作方式主要包含:Top &rarr; Bottom、Left &rarr; Right、bottom &rarr; top、right &rarr; left等,接着我们主要一种一种来看其实现的效果:

1、开始于center(水平方向)和top(垂直方向)也就是Top &rarr; Bottom:

background: -moz-linear-gradient(top, #ace, #f96); background: -webkit-gradient(linear,top,from(#ace),to(#f96));background: -webkit-linear-gradient(top, #ace, #f96);background: -o-linear-gradient(top, #ace, #f96);

效果:

如何在CSS3中使用linear-gradient属性

2、始于left(水平方向)和center(垂直方向)也是就Left &rarr; Right:

background: -moz-linear-gradient(left, #ace, #f96);background: -webkit-linear-gradient(left, #ace, #f96);background: -o-linear-gradient(left, #ace, #f96);

效果如下:

如何在CSS3中使用linear-gradient属性

3、起始于left(水平方向)和top(垂直方向):

background: -moz-linear-gradient(left top, #ace, #f96);background: -webkit-linear-gradient(left top, #ace, #f96);background: -o-linear-gradient(left top, #ace, #f96);

效果如下:

如何在CSS3中使用linear-gradient属性

4、Linear Gradient (with Even Stops):

background: -moz-linear-gradient(left, #ace, #f96, #ace, #f96, #ace); background: -webkit-gradient(linear, left top, right top, from(#ace), color-stop(0.25, #f96), color-stop(0.5, #ace), color-stop(0.75, #f96), to(#ace)); background: -webkit-linear-gradient(left, #ace, #f96, #ace, #f96, #ace); background: -o-linear-gradient(left, #ace, #f96, #ace, #f96, #ace);

效果如下:

如何在CSS3中使用linear-gradient属性

5、with Specified Arbitrary Stops:

 background: -moz-linear-gradient(left, #ace, #f96 5%, #ace, #f96 95%, #ace);   background: -webkit-gradient(linear, left top, right top, from(#ace), color-stop(0.05, #f96), color-stop(0.5, #ace), color-stop(0.95, #f96), to(#ace));   background: -webkit-linear-gradient(left, #ace, #f96 5%, #ace, #f96 95%, #ace);   background: -o-linear-gradient(left, #ace, #f96 5%, #ace, #f96 95%, #ace);

效果如下:

如何在CSS3中使用linear-gradient属性

6、角度(Angle):

正如上面看到的示例,如果您不指定一个角度,它会根据起始位置自动定义。如果你想更多的控制渐变的方向,您不妨设置角度试试。例如,下面的两个渐变具有相同的起点left center,但是加上一个30度的角度。

没有角度的示例代码:

background: -moz-linear-gradient(left, #ace, #f96);background: -webkit-linear-gradient(left,#ace,#f96);background: -o-linear-gradient(left, #ace, #f96);

加上30度的角度代码:

background: -moz-linear-gradient(left 30deg, #ace, #f96);background: -webkit-gradient(linear, 0 0, 100% 100%, from(#ace),to(#f96));background: -o-linear-gradient(30deg, #ace, #f96);

效果图如下:

如何在CSS3中使用linear-gradient属性如何在CSS3中使用linear-gradient属性

当指定的角度,请记住,它是一个由水平线与渐变线产生的的角度,逆时针方向。因此,使用0deg将产生一个左到右横向梯度,而90度将创建一个从底部到顶部的垂直渐变。我来看看你核心代码:

background: -moz-linear-gradient(<angle>, #ace, #f96);background: -webkit-gradient(<type>,<angle>, from(#ace), to(#f96));background: -webkit-linear-gradient(<angle>, #ace, #f96);background: -o-linear-gradient(<angle>, #ace, #f96);

我们来看看各角度的区别:

.deg0 {  background: -moz-linear-gradient(0deg, #ace, #f96);  background: -webkit-gradient(linear,0 50%,100% 50%,from(#ace),to(#f96));  background: -webkit-linear-gradient(0deg, #ace, #f96);  background: -o-linear-gradient(0deg, #ace, #f96);}     .deg45 {  background: -moz-linear-gradient(45deg, #ace, #f96);  background: -webkit-gradient(linear,0 100%,100% 0%,from(#ace),to(#f96));  background: -webkit-linear-gradient(45deg, #ace, #f96);  background: -o-linear-gradient(45deg, #ace, #f96);}.deg90 {  background: -moz-linear-gradient(90deg, #ace, #f96);  background: -webkit-gradient(linear,50% 100%,50% 0%,from(#ace),to(#f96));  background: -webkit-linear-gradient(90deg, #ace, #f96);  background: -o-linear-gradient(90deg, #ace, #f96);}.deg135 {  background: -moz-linear-gradient(135deg, #ace, #f96);  background: -webkit-gradient(linear,100% 100%,0 0,from(#ace),to(#f96));  background: -webkit-linear-gradient(135deg, #ace, #f96);  background: -o-linear-gradient(135deg, #ace, #f96);}.deg180 {  background: -moz-linear-gradient(180deg, #ace, #f96);  background: -webkit-gradient(linear,100% 50%,0 50%,from(#ace),to(#f96));  background: -webkit-linear-gradient(180deg, #ace, #f96);  background: -o-linear-gradient(180deg, #ace, #f96);}.deg225 {  background: -moz-linear-gradient(225deg, #ace, #f96);  background: -webkit-gradient(linear,100% 0%,0 100%,from(#ace),to(#f96));  background: -webkit-linear-gradient(225deg, #ace, #f96);  background: -o-linear-gradient(225deg, #ace, #f96);}.deg270 {  background: -moz-linear-gradient(270deg, #ace, #f96);  background: -webkit-gradient(linear,50% 0%,50% 100%,from(#ace),to(#f96));  background: -webkit-linear-gradient(270deg, #ace, #f96);  background: -o-linear-gradient(270deg, #ace, #f96);}.deg315 {  background: -moz-linear-gradient(315deg, #ace, #f96);  background: -webkit-gradient(linear,0% 0%,100% 100%,from(#ace),to(#f96));  background: -webkit-linear-gradient(315deg, #ace, #f96);  background: -o-linear-gradient(315deg, #ace, #f96);}.deg360 {  background: -moz-linear-gradient(360deg, #ace, #f96);  background: -webkit-gradient(linear,0 50%,100% 50%,from(#ace),to(#f96));  background: -webkit-linear-gradient(360deg, #ace, #f96);  background: -o-linear-gradient(360deg, #ace, #f96);}

效果如下:

如何在CSS3中使用linear-gradient属性

除了起始位置和角度,你应该指定起止颜色。起止颜色是沿着渐变线,将会在指定位置(以百分比或长度设定)含有指定颜色的点。色彩的起止数是无限的。如果您使用一个百分比位置,0%代表起点和100%是终点,但区域外的值可以被用来达到预期的效果。 这也是通过CSS3 Gradient制作渐变的一个关键所在,其直接影响了你的设计效果,像我们这里的示例都不是完美的效果,只是为了能给大家展示一个渐变的效果,大家就这样先用着吧。我们接着看一下不同的起址色的示例:

background: -moz-linear-gradient(top, #ace, #f96 80%, #f96);background: -webkit-linear-gradient(top,#ace,#f96 80%,#f96);background: -o-linear-gradient(top, #ace, #f96 80%, #f96);

效果如下:

如何在CSS3中使用linear-gradient属性

如果没有指定位置,颜色会均匀分布。如下面的示例:

background: -moz-linear-gradient(left, red, #f96, yellow, green, #ace);background: -webkit-linear-gradient(left,red,#f96,yellow,green,#ace);background: -o-linear-gradient(left, red, #f96, yellow, green, #ace);

效果如下

如何在CSS3中使用linear-gradient属性

7、渐变上应用透明度(Transparency):

透明渐变对于制作一些特殊的效果是相当有用的,例如,当堆叠多个背景时。这里是两个背景的结合:一张图片,一个白色到透明的线性渐变。我们来看一个官网的示例吧:

background: -moz-linear-gradient(right, rgba(255,255,255,0), rgba(255,255,255,1)),url(Http://demos.hacks.mozilla.org/openweb/resources/images/patterns/flowers-pattern.jpg);background: -webkit-linear-gradient(right, rgba(255,255,255,0), rgba(255,255,255,1)),url(http://demos.hacks.mozilla.org/openweb/resources/images/patterns/flowers-pattern.jpg);background: -o-linear-gradient(right, rgba(255,255,255,0), rgba(255,255,255,1)),url(http://demos.hacks.mozilla.org/openweb/resources/images/patterns/flowers-pattern.jpg);

接着看看效果吧

如何在CSS3中使用linear-gradient属性

上述内容就是如何在CSS3中使用linear-gradient属性,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网精选频道。

--结束END--

本文标题: 如何在CSS3中使用linear-gradient属性

本文链接: https://www.lsjlt.com/news/255076.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何在CSS3中使用linear-gradient属性
    本篇文章为大家展示了如何在CSS3中使用linear-gradient属性,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一、线性渐变在 Mozilla 下的应用语法:-moz-linear-grad...
    99+
    2023-06-08
  • CSS中线性渐变linear-gradient属性的示例分析
    小编给大家分享一下CSS中线性渐变linear-gradient属性的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! ...
    99+
    2024-04-02
  • 如何在css3中使用animation属性
    这篇文章给大家介绍如何在css3中使用animation属性,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。animation-name 动画名称,可以有多个值,用逗号隔开,表示绑定了多个动画animation-name...
    99+
    2023-06-08
  • css中的linear-gradient()怎么使用
    这篇文章主要介绍“css中的linear-gradient()怎么使用”,在日常操作中,相信很多人在css中的linear-gradient()怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操...
    99+
    2024-04-02
  • perspective属性如何在CSS3中使用
    perspective属性如何在CSS3中使用?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。CSS3的transform可以做2D的操作,当然也有3D。但需要再一个拥有pers...
    99+
    2023-06-08
  • 如何在CSS3中使用@media属性
    本篇文章给大家分享的是有关如何在CSS3中使用@media属性,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。//语法:@media mediatype an...
    99+
    2023-06-08
  • 如何在CSS3中使用all属性
    本篇文章给大家分享的是有关如何在CSS3中使用all属性,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、兼容性如下图:二、all是干嘛用的all属性实际上是所有CSS属性的缩...
    99+
    2023-06-08
  • 如何在CSS3中使用content属性
    这篇文章给大家介绍如何在CSS3中使用content属性,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。插入纯文字content:"插入的文章",或者content:none不插入内容html:XML...
    99+
    2023-06-09
  • css如何使用linear-gradient绘制三角形
    这篇文章将为大家详细讲解有关css如何使用linear-gradient绘制三角形,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。使用 linear-gradient 绘制...
    99+
    2024-04-02
  • box-shadow属性如何在CSS3中使用
    本篇文章给大家分享的是有关box-shadow属性如何在CSS3中使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。CSS Code复制内容到剪贴板E {box-sh...
    99+
    2023-06-09
  • CSS中的线性渐变linear-gradient怎么用
    这篇文章给大家介绍CSS中的线性渐变linear-gradient怎么用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。在CSS3出现之前,渐变效果只能通过图形软件设计图片来实现,可拓展...
    99+
    2024-04-02
  • 如何在CSS3中使用Transition动画属性
    这篇文章给大家介绍如何在CSS3中使用Transition动画属性,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。transition属性的值包括以下四个: &bull;transition-prope...
    99+
    2023-06-08
  • CSS3中如何使用content属性
    小编给大家分享一下CSS3中如何使用content属性,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!css属性【content】...
    99+
    2024-04-02
  • CSS3中resize属性如何使用
    本篇文章为大家展示了CSS3中resize属性如何使用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。CSS3新增了resize属性,该属性允许用户通过拖动的方式来修...
    99+
    2024-04-02
  • CSS3中linear-gradient线性渐变生成加号和减号的示例分析
    这篇文章主要为大家展示了“CSS3中linear-gradient线性渐变生成加号和减号的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“CSS3中lin...
    99+
    2024-04-02
  • CSS3如何使用resize属性
    这篇文章给大家分享的是有关CSS3如何使用resize属性的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 您可以使用CSS3resize属性删除或关闭HTML<texta...
    99+
    2024-04-02
  • CSS3如何使用transition属性
    这篇文章主要介绍了CSS3如何使用transition属性,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 您可以使用CSS3transit...
    99+
    2024-04-02
  • 怎么在html5中利用repeating-linear-gradient实现刻度尺
    怎么在html5中利用repeating-linear-gradient实现刻度尺?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。原理尺子刻度分成三种厘米刻度、半厘米刻度、毫米刻...
    99+
    2023-06-09
  • 如何使用CSS3@font-face属性
    本篇内容介绍了“如何使用CSS3@font-face属性”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!代码...
    99+
    2024-04-02
  • 怎么用CSS3中的gradient属性做出背景渐变效果
    小编给大家分享一下怎么用CSS3中的gradient属性做出背景渐变效果,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!   浏览器支持两种类型的渐变:   linear,用linear...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作