CSS3渐变属性:线性渐变和径向渐变用法教程

2024-02-28 13:58

本文主要是介绍CSS3渐变属性:线性渐变和径向渐变用法教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在CSS3之前如果需要添加渐变效果,通常要设置背景图像来实现。而CSS3中增加了渐变属性,通过渐变属性可以轻松实现渐变效果。CSS3的渐变属性主要包括线性渐变和径向渐变,本文转自黑马程序员前端培训课程,下面我们详细介绍。

CSS3线性渐变

在线性渐变过程中,起始颜色会沿着一条直线按顺序过渡到结束颜色。运用CSS3中的“background-image: linear-gradient(参数值);”样式可以实现线性渐变效果,其基本语法格式如下。

background-image: linear-gradient(渐变角度,颜色值1,颜色值2...,颜色值n);

在上面的语法格式中,linear-gradient用于定义渐变方式为线性渐变,括号内用于设定渐变角度和颜色值,具体解释如下。
 

● 渐变角度

渐变角度指水平线和渐变线之间的夹角,可以是以deg为单位的角度数值或“to”加“left”“right”“top”和“bottom”等关键词。在使用角度设定渐变起点的时候,0deg对应“to top”, 90deg对应“to right”,180deg对应“to bottom”,270deg对应“to left”,整个过程就是以 bottom为起点顺时针旋转,具体如下图所示。
 

 颜色值

颜色值用于设置渐变颜色,其中“颜色值 1”表示起始颜色,“颜色值 n”表示结束颜色,起始颜色和结束颜色之间可以添加多个颜色值,各颜色值之间用“,”隔开。

下面通过案例来展示: 

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS3线性渐变用法-黑马程序员web前端开发高手班http://web.itheima.com</title><style>div {width: 200px;height: 200px;/* background-image: linear-gradient(30deg, #0f0, #00F); */background-image: linear-gradient(30deg, #0f0 50%, #00F 80%);}</style>
</head>
<body><div></div>
</body>
</html>

1632898456571_CSS3线性渐变.jpg

上面图中实现了绿色到蓝色的线性渐变。值得一提的是,在每一个颜色值后面还可以书写一个百分比数值,用于标示颜色渐变的位置,具体示例代码如下:

background-image: linear-gradient(30deg,#0f0 50%,#00F 80%);

在上面的示例代码中,可以看做绿色(#0f0)由50%的位置开始出现渐变至蓝色(#00f)位于80%的位置结束渐变。可以用Photoshop中的渐变色块进行类比,如下图所示。
 

1632898468539_CSS3线性渐变2.jpg

CSS3径向渐变

径向渐变是网页中另一种常用的渐变,在径向渐变过程中,起始颜色会从一个中心点开始,依据椭圆或圆形形状进行扩张渐变。运用CSS3中的“background-image: radial-gradient(参数值);”样式可以实现径向渐变效果,其基本语法格式如下。

background-image: radial-gradient(渐变形状 圆心位置,颜色值1,颜色值2...,颜色值n);

在上面的语法格式中,radial-gradient用于定义渐变的方式为径向渐变,括号内的参数值用于设定渐变形状、圆心位置和颜色值,对各参数的具体介绍如下。
 

1.渐变形状

渐变形状用来定义径向渐变的形状,其取值既可以是定义水平和垂直半径的像素值或百分比,也可以是相应的关键词。其中关键词主要包括两个值“circle”和“ellipse”,具体解释如下。

● 像素值/百分比:用于定义形状的水平和垂直半径,如“80px 50px”表示一个水平半径为80px,垂直半径为50px的椭圆形。

● circle:指定圆形的径向渐变。

● ellipse:指定椭圆形的径向渐变。
 

2.圆心位置

圆心位置用于确定元素渐变的中心位置,使用“at”加上关键词或参数值来定义径向渐变的中心位置。该属性值类似于CSS中background-position属性值,如果省略则默认为“center”。该属性值主要有以下几种。

● 像素值/百分比:用于定义圆心的水平和垂直坐标,可以为负值。

● left:设置左边为径向渐变圆心的横坐标值。

● center:设置中间为径向渐变圆心的横坐标值或纵坐标。

● right:设置右边为径向渐变圆心的横坐标值。

● top:设置顶部为径向渐变圆心的纵标值。

● bottom:设置底部为径向渐变圆心的纵标值。
 

3.颜色值

“颜色值1”表示起始颜色,“颜色值n”表示结束颜色,起始颜色和结束颜色之间可以添加多个颜色值,各颜色值之间用“,”隔开。

下面运用径向渐变来制作一个小球

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS3径向渐变用法-黑马程序员web前端开发高手班http://web.itheima.com</title><style>div {width: 200px;height: 200px;/* 设置径向渐变 */background-image: radial-gradient(ellipse at center, #0f0, #030);border-radius: 50%;}</style>
</head>
<body><div></div>
</body>
</html>

上面案例中为div定义了一个渐变形状为椭圆形,径向渐变位置在容器中心点,绿色(#0f0)到深绿色(#030)的径向渐变;同时使用“border-radius”属性将容器的边框设置为圆角。值得一提的是,同“线性渐变”类似,在“径向渐变”的颜色值后面也可以书写一个百分比数值,用于设置渐变的位置。

1632898479432_径向渐变.jpg

CSS3重复渐变

在网页设计中,经常会遇到在一个背景上重复应用渐变模式的情况,这时就需要使用重复渐变。重复渐变包括重复线性渐变和重复径向渐变,具体解释如下。
 

1.重复线性渐变

在CSS3中,通过“background-image: repeating-linear-gradient(参数值);”样式可以实现重复线性渐变的效果,其基本语法格式如下。

background-image: repeating-linear-gradient(渐变角度,颜色值1,颜色值2...,颜色值n);

在上面的语法格式中,“repeating-linear-gradient(参数值)”用于定义渐变方式为重复线性渐变,括号内的参数取值和线性渐变相同,分别用于定义渐变角度和颜色值。

下面通过一个案例对重复线性渐变进行演示,如下所示。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS3线性渐变用法-黑马程序员web前端开发高手班http://web.itheima.com</title><style>div {width: 200px;height: 200px;/* background-image: linear-gradient(30deg, #0f0, #00F); */background-image: linear-gradient(30deg, #0f0 50%, #00F 80%);}</style>
</head>
<body><div></div>
</body>
</html>

为div定义了一个渐变角度为90deg,红黄绿三色的重复线性渐变,效果如下所示。

1632898488726_重复渐变.jpg

2.重复径向渐变

在CSS3中,通过“background-image: repeating-radial-gradient(参数值);”样式可以实现重复线性渐变的效果,其基本语法格式如下。

background-image: repeating-radial-gradient(渐变形状圆心位置,颜色值1,颜色值2...,颜色值n);

在上面的语法格式中,“repeating-radial-gradient(参数值)”用于定义渐变方式为重复径向渐变,括号内的参数取值和径向渐变相同,分别用于定义渐变形状、圆心位置和颜色值。

下面通过一个案例对重复径向渐变进行演示

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS3重复径向渐变用法-黑马程序员web前端开发高手班http://web.itheima.com</title><style>div {width: 300px;height: 300px;background-image: repeating-radial-gradient(circle at 50% 50%, #E50743, #E8ED30 10%, #3FA62E 15%);}</style>
</head>
<body><div></div>
</body>
</html>
</html>

为div定义了一个渐变形状为圆形,径向渐变位置在容器中心点,红、黄、绿三色径向渐变。
 

1632898497305_重复径向渐变.jpg

这篇关于CSS3渐变属性:线性渐变和径向渐变用法教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

HTML5 中的<button>标签用法和特征

《HTML5中的<button>标签用法和特征》在HTML5中,button标签用于定义一个可点击的按钮,它是创建交互式网页的重要元素之一,本文将深入解析HTML5中的button标签,详细介绍其属... 目录引言<button> 标签的基本用法<button> 标签的属性typevaluedisabled

HTML5实现的移动端购物车自动结算功能示例代码

《HTML5实现的移动端购物车自动结算功能示例代码》本文介绍HTML5实现移动端购物车自动结算,通过WebStorage、事件监听、DOM操作等技术,确保实时更新与数据同步,优化性能及无障碍性,提升用... 目录1. 移动端购物车自动结算概述2. 数据存储与状态保存机制2.1 浏览器端的数据存储方式2.1.

基于 HTML5 Canvas 实现图片旋转与下载功能(完整代码展示)

《基于HTML5Canvas实现图片旋转与下载功能(完整代码展示)》本文将深入剖析一段基于HTML5Canvas的代码,该代码实现了图片的旋转(90度和180度)以及旋转后图片的下载... 目录一、引言二、html 结构分析三、css 样式分析四、JavaScript 功能实现一、引言在 Web 开发中,

SQL BETWEEN 语句的基本用法详解

《SQLBETWEEN语句的基本用法详解》SQLBETWEEN语句是一个用于在SQL查询中指定查询条件的重要工具,它允许用户指定一个范围,用于筛选符合特定条件的记录,本文将详细介绍BETWEEN语... 目录概述BETWEEN 语句的基本用法BETWEEN 语句的示例示例 1:查询年龄在 20 到 30 岁

Python打印对象所有属性和值的方法小结

《Python打印对象所有属性和值的方法小结》在Python开发过程中,调试代码时经常需要查看对象的当前状态,也就是对象的所有属性和对应的值,然而,Python并没有像PHP的print_r那样直接提... 目录python中打印对象所有属性和值的方法实现步骤1. 使用vars()和pprint()2. 使

CSS place-items: center解析与用法详解

《CSSplace-items:center解析与用法详解》place-items:center;是一个强大的CSS简写属性,用于同时控制网格(Grid)和弹性盒(Flexbox)... place-items: center; 是一个强大的 css 简写属性,用于同时控制 网格(Grid) 和 弹性盒(F

CSS实现元素撑满剩余空间的五种方法

《CSS实现元素撑满剩余空间的五种方法》在日常开发中,我们经常需要让某个元素占据容器的剩余空间,本文将介绍5种不同的方法来实现这个需求,并分析各种方法的优缺点,感兴趣的朋友一起看看吧... css实现元素撑满剩余空间的5种方法 在日常开发中,我们经常需要让某个元素占据容器的剩余空间。这是一个常见的布局需求

CSS Anchor Positioning重新定义锚点定位的时代来临(最新推荐)

《CSSAnchorPositioning重新定义锚点定位的时代来临(最新推荐)》CSSAnchorPositioning是一项仍在草案中的新特性,由Chrome125开始提供原生支持需... 目录 css Anchor Positioning:重新定义「锚定定位」的时代来了! 什么是 Anchor Pos

CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比

《CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比》CSS中的position属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布... css 中的 position 属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布局和层叠关

HTML5 getUserMedia API网页录音实现指南示例小结

《HTML5getUserMediaAPI网页录音实现指南示例小结》本教程将指导你如何利用这一API,结合WebAudioAPI,实现网页录音功能,从获取音频流到处理和保存录音,整个过程将逐步... 目录1. html5 getUserMedia API简介1.1 API概念与历史1.2 功能与优势1.3