1. rgba
首先它是一个属性值,语法为rgba(r,g,b,a)
- r为红色值, 正整数 | 百分数
- g为绿色值,正整数 | 百分数
- b为蓝色值,正整数 | 百分数
- a为alpha(透明度),值为0 ~ 1之间的小数, 0.0 (完全透明)到 1.0(完全不透明)
- 上面的正整数为十进制0 ~ 255之间的任意值,百分数为0% ~ 100%之间的任意值
2. opacity
opacity是一个属性,并非是属性值。
使用方法为:opacity:0~1;
俩者之间最大的区别在于:opacity属性的值,可以被其子元素继承。而RGBA后代元素不会继承不透明属性。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>opacity和rgba</title>
<style>
.opacity{width:100px;height:100px;background: red;opacity: 0.5}
.rgba{width:100px;height:100px;background:rgba(255,0,0,0.5);}
</style>
</head>
<body>
<div class="opacity">
<p>hello world1</p>
</div>
<div class="rgba">
<p>hello world2</p>
</div>
</body>
</html>
输出结果:不难看出,rgba的p元素文本内容没有被设置为透明
当我们需要制作透明的边框时 ,就使用ragb颜色,当我们需要背景图片透明时,需要使用alpha属性,当然,背景图片上的内容的透明度也会随之改变。