CSS 实现图片透明度渐变效果

html-css013

CSS 实现图片透明度渐变效果,第1张

实现图片的透明度渐变效果,效果如下:

先说下我的实现,并没有用什么黑科技,而是通过两层图层堆叠的方式来做的。下面一层就是单纯的 svg 图片,上面覆盖了一层遮罩,并设置遮罩的背景色为蓝色到透明色的从左到右渐变。这样,看上去就是一个图片从右到左渐渐变得透明的效果。

这是我比较粗暴的方法,后来在网上看到一种更加优雅的方式:

大体上差不多,重点是 CSS 的 background-image 属性可以设置多张图片,用逗号隔开 。因为我不知道这个属性有这个能力才会额外加了个渐变透明图层来实现效果。

1、准备好初始化的代码

<html>

<head>

<meta charset="utf-8"/>

<style>

</style>

</head>

<body>

<div></div>

</body>

</html>

2、初始化样式

div{

border:1px red solid

width:800px

height:800px

background-color:blue

}

3、运行结果为

4、设置背景颜色半透明的样式代码background-color:rgba(0,0,255,0.5)

5、运行结果为

透明原理:把背景颜色设置为rgb的方式,然后再加一个透明度就可以设置为半透明了。

注意:设置背景颜色时哪里应该写成rgba。