首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RGBa vs Opacity (特别是BBC Slider)

RGBa vs Opacity (特别是BBC Slider)
EN

Stack Overflow用户
提问于 2012-12-06 23:53:59
回答 2查看 557关注 0票数 0

我现在想知道哪一个是最好的CSS属性使用,不透明或RGBa?更具体地说,我正在尝试重新创建一些类似于著名的BBC Home page slider的东西,这让我思考为什么他们使用不透明。

在我的版本中,我遇到过使用以下两个版本的代码:

代码语言:javascript
复制
.left-button {
    background: rgb(255, 255, 255) url('../images/left-arrow.png') no-repeat; //FALLBACK
    background: rgba(255, 255, 255, 0.4) url('../images/left-arrow.png') no-repeat;
}

代码语言:javascript
复制
.left-button {
    background: #fff url('../images/left-arrow.png') no-repeat; //FALLBACK
    opacity: 0.4;
}

显然,第二个按钮也使得实际的按钮图像不透明,这就是为什么我假设BBC已经为按钮制作了单独的按钮和背景蒙版(在我看来,这是不必要的额外标记)。

不过,我想在RGBa上使用第一个版本。有人愿意指出为什么一个比另一个更好吗?是否有我不知道的兼容性问题?

EN

回答 2

Stack Overflow用户

发布于 2012-12-06 23:55:34

所有子项都继承Opacity,但不继承RGBa。如果子项具有较小的不透明度或没有不透明度,请使用RGBa。

IE8及更低版本不支持RGBa,因此您可能需要一个不透明备份计划。

票数 1
EN

Stack Overflow用户

发布于 2012-12-07 00:05:23

两者都不是“更好的”,因为它们做的事情不同,所以这取决于你想要完成的是什么。

opacity设置整个元素及其所有内容(文本、内联图像等)的不透明度。RGBa是一种定义具有特定alpha透明度级别的颜色的方法。

假设你有一个div

代码语言:javascript
复制
<div>Hello!</div>

这将使整个div及其内容("Hello!") 50%不透明:

代码语言:javascript
复制
div {
    background: #000;
    color: #fff;
    opacity: 0.5;
}

然而,这将使div的背景只有50%不透明,而使文本保持100%不透明的纯白色:

代码语言:javascript
复制
div {
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13747425

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档