CSS中设置透明度的2个属性:opacity,RGBA以及它们的区别

你好,我是云桃桃。

一个希望帮助更多朋友快速入门 WEB 前端的程序媛。

云桃桃-大专生,一枚程序媛,感谢关注。回复 “前端基础题”,可免费获得前端基础 100 题汇总,回复 “前端工具”,可获取 Web 开发工具合集

287篇原创内容-更多前端系列内容可以go公众.h:云桃桃

后台回复“前端工具”可获取开发工具,持续更新中

后台回复“前端基础题”可得到前端基础100题汇总,持续更新中

后台回复“前端电子书”可获取20+本精选电子书

前言

透明度在网页设计中扮演着重要的角色,透明度的合理运用可以提升网页设计的美感和功能性,增强用户体验,突出重点内容,同时也为设计师提供了更多的创作空间和可能性。

那我们一起来看看吧。

2 个透明度属性

可以表示透明度的,有 2 个属性,分别是opacityrgba

一、opacity 属性

用于设置元素的不透明度,取值范围为 0.0(完全透明)到 1.0(完全不透明)。在写小数值时,一般来说,保留 1~2 位小数即可。

需要注意的是:

  • 该属性可以继承,即子元素会继承父元素的透明度。所以,下面案例中文字的颜色也带上透明度了。

  • 该属性只对块级元素有效,对行内元素无效。

那,来看 3 个小案例吧。

1、透明度的 div

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Opacity Example</title><style>/* 清除浮动样式 */.clearfix::after {content: '';display: table;clear: both;}.container {margin-top: 50px;}.container div {float: left;width: 200px;height: 200px;font-size: 26px;text-align: center;line-height: 200px;margin-right: 30px;color: #333;font-weight: bold;}.container div {background-color: #f00;}.container .div1 {opacity: 1;}.container .div2 {opacity: 0.7;}.container .div3 {opacity: 0.3;}.container .div4 {opacity: 0.1;}</style></head><body><h1>opacity属性的透明度</h1><div class="container clearfix"><div class="div1">opacity:1</div><div class="div2">opacity:0.7</div><div class="div3">opacity:0.3</div><div class="div4">opacity:0.1</div></div></body>
</html>

效果如下,其内部的文字也自动带上透明度了:

图片

2、透明度的图像

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Opacity Example</title><style>/* 清除浮动样式 */.clearfix::after {content: '';display: table;clear: both;}img {display: block;width: 100%;}.container {margin-top: 50px;}.container div {float: left;width: 200px;font-size: 16px;text-align: center;margin-right: 30px;color: #333;font-weight: bold;}.container div {border: 1px solid #333;}.container .img1 {opacity: 1;}.container .img2 {opacity: 0.7;}.container .img3 {opacity: 0.3;}.container .img4 {opacity: 0.1;}</style></head><body><div class="container clearfix"><div class="div1"><img class="img1" src="img/tree.png" alt="" /><p>opacity:1</p></div><div class="div2"><img class="img2" src="img/tree.png" alt="" /><p>opacity:0.7</p></div><div class="div3"><img class="img3" src="img/tree.png" alt="" /><p>opacity:0.3</p></div><div class="div4"><img class="img4" src="img/tree.png" alt="" /><p>opacity:0.1</p></div></div></body>
</html>

效果如下:

图片

3、带交互的透明度图像

这种交互也比较常见的,比如,jd 的这个,把鼠标放在图片放上去之后,是有一点点不透明度的。

图片

怎么做呢?就是配合 hover。来看代码。

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Opacity Example</title><style>/* 清除浮动 */.clearfix::after {content: '';display: table;clear: both;}img {display: block;width: 100%;}.container {margin-top: 50px;}.container div {float: left;width: 200px;margin-right: 30px;}.container img {transition: all 0.3s; /* 添加过渡效果 */}.container div {border: 1px solid #333;}.container div p {margin: 10px 10px;line-height: 24px;height: 48px;color: #333;font-size: 14px;/* 设置超出2行显示省略号 */word-break: break-all;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;}.container div:hover img {opacity: 0.5;}</style></head><body><div class="container clearfix"><div><img src="img/tree.png" alt="" /><p>摩天手(Mofii) sweet无线复古朋克键鼠套装 办公键鼠套装 鼠标 电脑键盘 笔记本键盘 白绿色</p></div><div><img src="img/tree.png" alt="" /><p>摩天手(Mofii) sweet无线复古朋克键鼠套装 办公键鼠套装 鼠标 电脑键盘 笔记本键盘 白绿色</p></div><div><img src="img/tree.png" alt="" /><p>摩天手(Mofii) sweet无线复古朋克键鼠套装 办公键鼠套装 鼠标 电脑键盘 笔记本键盘 白绿色</p></div><div><img src="img/tree.png" alt="" /><p>摩天手(Mofii) sweet无线复古朋克键鼠套装 办公键鼠套装 鼠标 电脑键盘 笔记本键盘 白绿色</p></div></div></body>
</html>

效果如下。

图片

二、rgba 属性

第一个 opacity属性会同时改变元素及其子级内容的透明度,但有时候我们只需要改变作用元素的透明度,那 rgba 属性就派上用场了。

rgba 是 CSS 中用来表示颜色的一种方式,它由红色(R)、绿色(G)、蓝色(B)和透明度(A)四个通道组成。其中,R、G、B 通道表示颜色的三原色分量,取值范围为 0 到 255,

A 通道表示透明度,取值范围为 0 到 1,0 表示完全透明,1 表示完全不透明,在写小数值时,应该保留合理的小数位数,一般来说,保留 1~2 位小数即可。

rgba 可以单独控制元素的背景颜色或文本颜色的透明度,而不影响其内容的透明度。这对于需要让元素半透明而保持内容不变的情况非常有用,例如半透明的背景色或文本颜色。

ok,我们通过一个例子来对比一下 opacity 和 rgba。代码如下:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Opacity Example</title><style>/* 清除浮动样式 */.clearfix::after {content: '';display: table;clear: both;}.mb-50 {margin-bottom: 50px;}.container div {float: left;width: 200px;height: 200px;font-size: 26px;text-align: center;line-height: 200px;margin-right: 30px;color: #333;font-weight: bold;}.container1 div {background-color: #f00;}.container1 .div1 {opacity: 1;}.container1 .div2 {opacity: 0.7;}.container1 .div3 {opacity: 0.3;}.container1 .div4 {opacity: 0.1;}.container2 .div1 {background: rgba(255, 0, 0, 1);}.container2 .div2 {background: rgba(255, 0, 0, 0.7);}.container2 .div3 {background: rgba(255, 0, 0, 0.3);}.container2 .div4 {background: rgba(255, 0, 0, 0.1);}</style></head><body><div class="mb-50"><h1>opacity属性的透明度</h1><div class="container container1 clearfix"><div class="div1">opacity:1</div><div class="div2">opacity:0.7</div><div class="div3">opacity:0.3</div><div class="div4">opacity:0.1</div></div></div><div><h1>rgba属性的透明度</h1><div class="container container2 clearfix"><div class="div1">rgba:1</div><div class="div2">rgba:0.7</div><div class="div3">rgba:0.3</div><div class="div4">rgba:0.1</div></div></div></body>
</html>

效果如下:

图片

是不是一目了然了,rgba并不影响子级的透明度。

OK,本文完。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/651275.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

什么是停车场车牌识别系统,停车场车牌识别系统工作原理是什么

在现代城市中&#xff0c;随着机动车辆数量的急剧增加&#xff0c;停车场道闸系统的智能化管理变得尤为重要。传统的人工管理方式不仅效率低下&#xff0c;而且容易出错&#xff0c;无法满足日益增长的车辆管理需求。车牌识别技术的引入&#xff0c;为停车场道闸系统带来了革命…

python 编程小技巧:# type: 类型注释语法

# type: 是 Python 3.5 引入的一种类型注释语法&#xff0c;用于在代码中指定变量、函数、方法等对象的类型信息&#xff0c;以便 IDE 和类型检查工具等工具能够更好地理解和分析代码。具体来说&#xff0c;# type: 后面可以跟一个类型注释&#xff0c;用于指定对象的类型&…

小程序变更主体还要重新备案吗?

小程序迁移变更主体有什么作用&#xff1f;小程序迁移变更主体的作用可不止变更主体这一个哦&#xff01;还可以解决一些历史遗留问题&#xff0c;比如小程序申请时主体不准确&#xff0c;或者主体发生合并、分立或业务调整等情况。这样一来&#xff0c;账号在认证或年审时就不…

42-巩固练习(二)

42-1 函数的递归 1、问&#xff1a;关于递归的描述错误的是&#xff08;&#xff09; A.存在限制条件&#xff0c;当满足这个限制条件的时候。递归便不再维续 B.每次递归调用之后越来越接近这个限制条件 C.递归可以无限递归下去 D.递归层次太深&#xff0c;会出现栈溢出现…

看完这个视频,发誓再也不当榜一大哥了

最近在AI界有个视频很火&#xff0c;网友看完之后表示&#xff1a;十年前担心网友是抠脚大汉&#xff0c;十年后担心网友是抠脸大汉。 软件简介 该视频使用的软件为DeepFacelive,一个可以在直播过程和视频通话时进行实时换脸的本地工具。DeepFaceLive 建立在 DeepFaceLab 的基…

以太网口硬件知识分享

一、了解网口通信基本原理 实现网络通信实质上是PHY与MAC及RJ45接口实现信号传输。MAC 就是以太网控制器&#xff0c;MAC属于数据链路层&#xff0c;主要负责把数据封装成帧&#xff0c;对帧进行界定实现帧同步。对MAC地址和源MAC地址及逆行相应的处理并对错误帧进行处理。PHY…

Linux vi\vim编辑器

vi/vim编辑器 一、vi\vim 编辑器的三种工作模式1.命令模式&#xff08;Command mode&#xff09;2.输入模式&#xff08;Insert mode&#xff09;3.底线命令模式&#xff08;Last line mode&#xff09; 二、参考 vi\vim 是 visual interface 的简称&#xff0c;是 Linux 中最经…

免费预约即将截止,5月7日上海TCT亚洲3D打印展参观指南,收藏!

进入TCT亚洲展官网&#xff08;网页搜索TCT亚洲展&#xff09;&#xff0c;免费登记预约 2024年TCT亚洲展作为推动增材制造在亚洲市场的业务交流的重要平台&#xff0c;将于2024年5月7日至9日在国家会展中心&#xff08;上海&#xff09;7.1&8.1馆举办&#xff0c;与海内外…

2023 年全国网络安全行业职业技能大赛电子数据取证分析师总决赛wp

第一部分&#xff1a;电子数据提取与固定 任务 1:检材 1.rar 上的任务 检材是一个手机备份&#xff0c;请通过技术手段提取以下信息。 1.提取名称为“陈伦国”的联系人的手机号码&#xff0c;以此作为flag 提交。(答案格式如&#xff1a;13012345678) (2 分) 13800620796 …

python-excel自动化-openpyxl

openpyxl学习笔记 创建或打开表格存储和遍历数据设置单元格风格过滤器和排序更改工作表的背景颜色合并单元格冻结窗口数字格式公式图像图表条形图折线图散点图 创建或打开表格 # 创建 import datetime from openpyxl import Workbook # 实例化 wb Workbook() # 激活 work…

【元启发式算法】学生心理学优化算法 SPBO算法【Matlab代码#88】

文章目录 【获取资源请见文章第4节&#xff1a;资源获取】1. 学生心理学优化算法&#xff08;SPBO&#xff09;1.1 最好的学生1.2 次好的学生1.3 一般的学生1.4 随机提高成绩的学生 2. 部分代码展示3. 仿真结果展示4. 资源获取说明 【获取资源请见文章第4节&#xff1a;资源获取…

319_C++_使用QT自定义的对话框,既能选择文件也能选择文件夹,为什么使用QListView和QTreeView来达成目的?

解析 1: 在 Qt 中,QFileDialog::setOption 方法用于设置文件对话框的一些选项,以改变其行为或外观。QFileDialog::DontUseNativeDialog 是这些选项之一,当设置为 true 时,它会告诉 QFileDialog 不要使用操作系统提供的原生文件对话框,而是使用 Qt 自己实现的对话框样式。…