web前端入门——CSS3背景颜色渐变属性(gradients)

css3 渐变

CSS3 渐变(gradient)可以让你在两个或多个指定的颜色之间显示平稳的过渡。 以前,你必须使用图像来实现这些效果,现在通过使用 CSS3 的渐变(gradients)即可实现。此外,渐变效果的元素在放大时看起来效果更好,因为渐变(gradient)是由浏览器生成的。

线性渐变
语法:

background: linear-gradient(direction, color-stop1, color-stop2, ...);

说明:

direction:默认为to bottom,即从上向下的渐变;

stop:颜色的分布位置,默认均匀分布,例如有3个颜色,各个颜色的stop均为33.33%。

1. 单一方向渐变:

	left 		从左边开始
	right		从右边开始
	top			从上边开始
	bottom   	从底部开始
	注意: 需要添加兼容前缀

	to left 到左边(结束位置)
	to right 到右边
	to top	到顶部
	to bottom 到底部
	注意: 不要添加兼容前缀

2. 对角渐变:

	left top	左上开始
	left bottom 左下开始
	right top	右上开始
	注意: 带兼容前缀
			
	to left top 到左上(结束位置)
	注意: 不带兼容前缀

3. 角度的渐变
10deg 10度

4. 默认情况下颜色趋于均分
可以指定颜色分布的百分比,让颜色按照百分比进行渐变
blue 10% 到10% 都是蓝色
red 10px 到10px都是红色

  • 示例1:to left、top right、to bottom、to top
    在这里插入图片描述
  • 示例2:to right bottom、top right top、top left bottom、top left top
    在这里插入图片描述
  • 示例3:使用角度渐变linear-gradient(10deg, red, blue)
角度是指水平线和渐变线之间的角度,逆时针方向计算。

换句话说,0deg 将创建一个从下到上的渐变,90deg 将创建一个从左到右的渐变。

但是,请注意很多浏览器(Chrome,Safari,fiefox等)的使用了旧的标准,即 0deg 将创建一个从左到右的渐变,90deg 将创建一个从下到上的渐变。

换算公式 90 - x = y 其中 x 为标准角度,y为非标准角度。

在这里插入图片描述

径向渐变(一定要加浏览器前缀)
径向渐变不同于线性渐变,线性渐变是从“一个方向”向“另一个方向”的颜色渐变,而径向渐变是从“一个点”向四周的颜色渐变
语法:

background: radial-gradient(center, shape, size, start-color, ..., last-color);
     
说明:

center:渐变起点的位置,可以为百分比,默认是图形的正中心。

shape:渐变的形状,ellipse表示椭圆形,circle表示圆形。默认为ellipse,如果元素形状为正方形的元素,则ellipse和circle显示一样。

size:渐变的大小,即渐变到哪里停止,它有四个值。 closest-side:最近边; farthest-side:最远边; closest-corner:最近角; farthest-corner:最远角。

渐变位置:

	默认从中心到四周

	left	从左边到四周的渐变
	right
	top
	bottom
				
	left top	从左上角到四周的渐变
	left bottom	
	right top
	...
				
	10px 30px	距离左边10px 距离上边30px

形状:

	默认椭圆	ellipse
	正圆		circle
	注意: 元素是正方形,则都是正圆

大小:

	size:渐变的大小,即渐变到哪里停止,它有四个值。 
		closest-side:最近边; 
		farthest-side:最远边; 
		closest-corner:最近角; 
		farthest-corner:最远角。
  • 示例1:多颜色节点均匀分布
div { background: -webkit-radial-gradient(50% 50%, farthest-corner, red, green, blue); } 
div { background: -webkit-radial-gradient(center, farthest-corner, red, green, blue); }
  • 示例2:多颜色节点均匀分布
div { background: radial-gradient(circle, red, yellow, green); } 
div { background: radial-gradient(ellipse, red, yellow, green); }
  • 示例3:设置渐变形状
circle:渐变为最大的圆形; ellipse:根据元素形状渐变,元素为正方形是显示效果与circle无异

在这里插入图片描述

  • 示例4:不同尺寸的渐变
div { background: radial-gradient(60% 40%, closest-side, blue, green, yellow, black); } 
div { background: radial-gradient(60% 40%, farthest-side, blue, green, yellow, black); }
div { background: radial-gradient(60% 40%, closest-corner, blue, green, yellow, black); }
div { background: radial-gradient(60% 40%, farthest-corner, blue, green, yellow, black);}

在这里插入图片描述

重复性渐变

1.重复性线性渐变

div { background: repeating-linear-gradient(red, yellow 10%, green 20%); }

2.重复性径向渐变

div { background: repeating-radial-gradient(red, yellow 10%, green 20%); }

在这里插入图片描述

  • 6
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在CSS中,可以通过使用渐变gradient)来实现背景颜色的平稳过渡。渐变效果的元素在放大时看起来效果更好,因为渐变是由浏览器生成的。线性渐变的语法如下:background: linear-gradient(direction, color-stop1, color-stop2, ...);其中direction表示渐变的方向,默认为从上向下的渐变,而color-stop表示颜色的分布位置,默认均匀分布。例如,有3个颜色,各个颜色的stop均为33.33%。 而重复性径向渐变的语法如下:background: repeating-radial-gradient(color1, color2, ...);其中color1, color2等表示颜色节点,可以通过百分比来设置颜色的相对位置。 另外,CSS还提供了设置渐变大小的属性size,它有四个值可选:closest-side(最近边)、farthest-side(最远边)、closest-corner(最近角)和farthest-corner(最远角)。 总结起来,CSS背景颜色渐变的百分比可以通过设置color-stop来实现,通过百分比来控制颜色的相对位置。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [web前端入门——CSS3背景颜色渐变属性(gradients)](https://blog.csdn.net/qq_39347364/article/details/105034488)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端技术迷

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值