返回顶部
首页 > 资讯 > 前端开发 > VUE >CSS3中怎么调节透明度
  • 584
分享到

CSS3中怎么调节透明度

2024-04-02 19:04:59 584人浏览 安东尼
摘要

这篇文章主要讲解了“css3中怎么调节透明度”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS3中怎么调节透明度”吧!在 CSS3 中,增加了一个 opa

这篇文章主要讲解了“css3中怎么调节透明度”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS3中怎么调节透明度”吧!

在 CSS3 中,增加了一个 opacity 属性,允许开发者设置元素的透明度,现在 opacity 已被主流的现代浏览器支持,但 opacity 会把被设置的元素及其子元素同时设置为同一个透明度,这样的透明规则相当不灵活,在实际开发中往往也是会遇到很多麻烦。其实,在 CSS3 中还有另外一套颜色透明解决方案 —— RGBa 。相对于 opacity ,RGBa 可以在单个元素上设置透明度,而不影响其子元素,只是 RGBa 的浏览器支持度并没有 opacity 的广泛,因此相对较少引起开发者注意。

RGBA(R,G,B,A)
取值:
R:红色值。正整数 | 百分数
G:绿色值。正整数 | 百分数
B:蓝色值。正整数 | 百分数
A:Alpha透明度。取值0~1之间。
下面是用rgba() 设置50%透明度的白色.

CSS Code复制内容到剪贴板

  1. p {   

  2. color: rgba(255, 255, 255, 0.5);   

  3. }  

RGBA是RGB色彩模型的一个扩展。这个缩写词代表红绿蓝三原色的首字母,Alpha值代表颜色的透明度/不透明度。

下面开始详细介绍 RGBa 颜色。


一. RGBa 颜色基础
RGBa 在本质上看也是为设置的元素增加了一个 alpha 通道,即在红色、绿色、蓝色三种颜色通道之外增加一个代表透明度的通道,其中 RGB 值使用我们熟悉的用3个 0 到 255 的整数分别表示红色、绿色、蓝色,而 alpha 取值则为 0 到 1 (小数位一位)。下面例举一个例子说明其具体的使用方式:

在 CSS 2.1 中,支持使用 RGB 色彩声明(尽管开发者可能更加习惯使用如:#343434 的 16 进制表示方式),例如要为 id 为 example 的 div 元素设置背景色 #343434 ,可以这样写

CSS Code复制内容到剪贴板

  1.   

  2. #example {background: rgb(52, 52, 52); }  

接下来再使用 RGBa ,把例子中的背景颜色修改成带 0.5 透明度。

CSS Code复制内容到剪贴板

  1.   

  2. #example-a {background: rgba(52, 52, 52, 0.5); }   

  3.   

  4. #example-a {background: rgba(52, 52, 52, .5); }  

增加透明度前后效果如下(为了更明显的反映透明度带来的效果,例子中的 body 增加了背景纹理):
CSS3中怎么调节透明度

可以看出,RGBa 只是在原有的 RGB 的基础上增加一个参数,这个改动虽小,却为开发者提供了很大的方便。

另外,RGBa 除了可以用在 background 属性外,还可以用在 color 和 border 属性(注:border 属性使用 RGBa 在 Firefox 中会与在其他浏览器中的效果略有不同)。

二. 浏览器支持与渐进增强
尽管 RGBa 已经在主流现代浏览器中获得了良好的支持,其中 WEBkit 对 RGBa 的支持是最早的,Chrome 至少在 0.415 版本便开始支持 RGBa ,在这个方面 Chrome 可以说是非常给力的,另外 Gecko 和 Presto 内核也逐步实现了对 RGBa 的支持,IE 浏览器则从 IE9 开始才支持 RGBa 。更具体的浏览器支持情况如下:

Chrome 0.4.154.33+ , Firefox 3.0+ , Safari 3.2.1+ , Opera 10.10+ , IE9+

更加详细的浏览器支持情况请参考这里。

对于不支持 RGBa 的浏览器,这里可以采用渐进增强的方案解决,Kayo 推荐的是指定一个保留色的解决方案。首先,开发者必须知道,不支持 RGBa 的浏览器会把使用了 RGBa 的 CSS 属性值视为语法错误,因此不理会该 CSS 属性设置。因此,开发者可以在设置 RGBa 颜色之前首先设置一个不使用透明度的属性,避免当浏览器不支持 RGBa 时出现完全没有颜色的情况。下面对上例进行扩展说明:

#example1 {background: rgb(52, 52, 52); background: rgba(52, 52, 52, .5); }
不支持 RGBa 的浏览器会忽略第二个 background 属性设置,按照第一个属性值设置元素的背景色,这样虽然不能使浏览器之间的效果相同,但已经达到相似的效果了,并且体现了一种不错的渐进增强解决方案。

当然,对于 IE ,可以使用滤镜达到与支持 RGBa 浏览器中相同的效果,例如:针对以上例子,你可以如下地编写代码

CSS Code复制内容到剪贴板

  1. <style type="text/css">   

  2.     #example-a {background: rgba(52, 52, 52, .5); }   

  3. </style>   

  4. <!--[if IE]>   

  5.     <style type="text/css">   

  6.         #example-a {   

  7.             background: transparent;   

  8.             filter: progid:DXImageTransfORM.Microsoft.gradient(startColorstr='#34343432', endColorstr='#34343432');   

  9.             zoom: 1;   

  10.         }    

  11.     </style>   

  12. <![endif]-->  

这里需要注意,滤镜中使用的是上例中相同的颜色和透明度,只是使用 16 进制表示。

IE 会忽略 RGBa 颜色设置,并且根据 filter 滤镜设置颜色,这样的效果与 RGBa 的效果相同。

三. 不影响子元素
在文章的开头已经介绍过,RGBa 相对 opacity 的优势是不会影响其子元素,即可以单独为被设置的元素设置透明度,而子元素而不受该设置影响。下面再例举一个具体的例子,分别以 RGBa 和 opacity 为元素设置透明度说明两者的区别。

完整代码:

CSS Code复制内容到剪贴板

  1. <!DOCTYPE html>   

  2. <html lang="zh-CN">   

  3. <head>   

  4.     <meta charset="UTF-8">   

  5.     <title>RGBa 与 opacity 效果的区别</title>   

  6.     <style type="text/css">   

  7.         body {padding-top: 200px; background: url(bg.png); }   

  8.         #example, #example-a {width: 200px; height: 100px; margin: 0 auto; }   

  9.         #example {background: rgb(52, 52, 52); opacity: 0.5; }   

  10.         #example-a {margin-top: 20px; background: rgba(52, 52, 52, .5); }   

  11.         .inside {display: block; width: 50px; height: 50px; margin-left: 10px; background: rgb(100, 140, 180); }   

  12.     </style>   

  13. </head>   

  14. <body>   

  15.     <div id="example">   

  16.     

  17.         <span class="inside"></span>   

  18.     

  19.     </div>   

  20.     

  21.     <div id="example-a">   

  22.     

  23.         <span class="inside"></span>   

  24.     

  25.     </div>   

  26. </body>   

  27. </html>  

具体效果
CSS3中怎么调节透明度

可以看出,opacity 会使其中的子元素 span 同时变为半透明的效果,而 RGBa 则只改变被设置的元素的透明度,而在大多数情况下,开发者只需要设置当前元素的透明度(如遮罩,半透明背景等),因此使用 RGBa 会更加的灵活。

另外,在 IE9 中,直接使用 RGBa 颜色与使用 opacity 设置透明的效果会有差异(读者可以在 IE9 下浏览 Demo 查看具体的效果),开发者需要注意这一点差异。

感谢各位的阅读,以上就是“CSS3中怎么调节透明度”的内容了,经过本文的学习后,相信大家对CSS3中怎么调节透明度这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: CSS3中怎么调节透明度

本文链接: https://lsjlt.com/news/77919.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • CSS3中怎么调节透明度
    这篇文章主要讲解了“CSS3中怎么调节透明度”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS3中怎么调节透明度”吧!在 CSS3 中,增加了一个 opa...
    99+
    2024-04-02
  • css3中如何调节透明度
    这篇文章主要介绍css3中如何调节透明度,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!css3中调节透明度的方法:可以使用opacity属性来设置透明度,如【opacity:0.5; filter:Alpha(opa...
    99+
    2023-06-06
  • css透明度怎么调节
    在 css 中,通过 opacity 属性调节元素透明度,介于 0.0(透明)至 1.0(不透明)之间。语法:div { opacity: ; }。支持百分比表示,如 div { opa...
    99+
    2024-05-21
    css
  • win11图标透明度怎么调节
    要调节Windows 11图标的透明度,可以按照以下步骤操作:1. 右键单击桌面上的空白区域,然后选择“个性化”。2. 在“个性化”...
    99+
    2023-09-07
    win11
  • ps透明度怎么调
    要调整PS的透明度,你可以按照以下步骤进行操作:1. 打开你想要调整透明度的图层或选定一个图层。2. 在图层面板中,找到图层的不透明...
    99+
    2023-09-05
    ps
  • win10窗口透明度如何调节
    在Windows 10中,可以通过以下方法调节窗口的透明度:1. 鼠标悬停在要调节透明度的窗口的标题栏上。2. 右键单击标题栏,弹出...
    99+
    2023-09-07
    win10
  • excel图片透明度如何调节
    本篇内容介绍了“excel图片透明度如何调节”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!excel图片透明度调节的方法:第一步,点击“插入...
    99+
    2023-07-02
  • CSS3中怎么利用RGBA设置透明度
    CSS3中怎么利用RGBA设置透明度,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。说明:RGBA(R,G,B,A)取值:R:红...
    99+
    2024-04-02
  • Win10任务切换背景透明度怎么随意调节?
    在Win10中,按Alt+Tab切换任务时,缩略图窗口会有暗色透明背景来衬托。虽然设置中没有关于这个背景透明度的调节项,但我们还是可以通过注册表对其进行任性调节。而且,可以调节的不止这个背景,就连调节时的整体背景色调都可...
    99+
    2023-05-21
    Win10 透明度 背景
  • Win10系统如何调节任务栏透明度
    本篇内容介绍了“Win10系统如何调节任务栏透明度”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在开始菜单打开设置。 选择打开个性化。 点...
    99+
    2023-07-02
  • css3的透明度如何设置
    这篇文章主要讲解了“css3的透明度如何设置”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css3的透明度如何设置”吧! 方法:...
    99+
    2024-04-02
  • css3颜色透明度如何写
    这篇文章主要为大家展示了“css3颜色透明度如何写”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“css3颜色透明度如何写”这篇文章吧。 ...
    99+
    2024-04-02
  • 怎么设置元素透明度的css3属性
    这篇文章主要介绍“怎么设置元素透明度的css3属性”,在日常操作中,相信很多人在怎么设置元素透明度的css3属性问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么设置元素透明...
    99+
    2024-04-02
  • CSS3不透明度发实例介绍
    这篇文章主要讲解了“CSS3不透明度发实例介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS3不透明度发实例介绍”吧!如何设置透明度?定义opacit...
    99+
    2024-04-02
  • css中透明度怎么设置
    在 css 中,通过使用 opacity 属性设置透明度,范围从 0.0(完全透明)到 1.0(完全不透明)。语法:opacity: ; CSS 中透明度设置 在 CSS 中,透明度是...
    99+
    2024-04-28
    css
  • deepin20任务栏透明度怎么设置?deepin调整任务栏透明度的技巧
    deepin20怎么设置任务栏透明度?我们可以根据自己的喜好来设置任务栏的透明度,该怎么设置呢?下面我们就来看看详细的教程。 当前任务栏透明度如下图所示。 点任务栏上的【启动器】。 在启动器中点齿轮按钮打开【控制中心】。...
    99+
    2022-06-03
    deepin 任务栏 透明度
  • css3怎么实现透明效果
    这篇“css3怎么实现透明效果”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“css3怎么实...
    99+
    2024-04-02
  • 使用CSS3怎么实现背景透明文字不透明
    本篇文章为大家展示了使用CSS3怎么实现背景透明文字不透明,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。<!DOCTYPE html><html lang=&q...
    99+
    2023-06-08
  • 怎么在html中设置透明度
    怎么在html中设置透明度?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。html是什么html的全称为超文本标记语言,它是一种标记语言,包含了一系列标签.通过这...
    99+
    2023-06-14
  • 怎么在css中设置透明度
    这篇文章给大家介绍怎么在css中设置透明度,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。在css中设置透明度的方法有三种:rgba()opacity属性filter:opacity(%)方法1:rgba()函数rgba...
    99+
    2023-06-14
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作