当前位置: 首页 > 面试题库 >

悬停时是否可以仅更改rgba背景颜色的Alpha?

杜诚
2023-03-14
问题内容

我有一组<a>标签,这些标签的rgba背景颜色不同,但alpha相同。是否可以编写单个CSS样式来仅更改rgba属性的不透明度?

代码的简单示例:

 <a href="#"><img src="" /><div class="brown">Link 1</div></a>
 <a href="#"><img src="" /><div class="green">Link 2</div></a>

和样式

a {display: block; position: relative}
.brown {position: absolute; bottom: 0; background-color: rgba(118,76,41,.8);}
.green {position: absolute; bottom: 0; background-color: rgba(51,91,11,.8);}

我想做的是编写一种样式,当将<a>鼠标悬停在其上时会更改不透明度,同时保持颜色不变。

就像是

a:hover .green, a:hover .brown {background-color: rgba(inherit,inherit,inherit,1);}

问题答案:

现在可以使用自定义属性:

.brown { --rgb: 118, 76, 41; }
.green { --rgb: 51, 91, 11; }

a { display: block; position: relative; }
div { position: absolute; bottom: 0; background-color: rgba(var(--rgb), 0.8); }
a:hover div { background-color: rgba(var(--rgb), 1); }

如果自定义属性不是一个选项,请参见下面的原始答案。

不幸的是,不,您必须为每个单独的类再次指定红色,绿色和蓝色值:

a { display: block; position: relative; }

.brown { position: absolute; bottom: 0; background-color: rgba(118, 76, 41, 0.8); }
a:hover .brown { background-color: rgba(118, 76, 41, 1); }

.green { position: absolute; bottom: 0; background-color: rgba(51, 91, 11, 0.8); }
a:hover .green { background-color: rgba(51, 91, 11, 1); }

您只能将inherit关键字单独用作属性的值,即使这样,inherit此处也不适合使用。



 类似资料:
  • 问题内容: 我正在尝试将 鼠标悬停在div的背景颜色上 。 div {background:white;} div a:hover {background:grey; 宽度:100%; 显示:块; 文字修饰:无;} 只有 div内的 链接 获得背景色 。 如何使 整个div获得该背景色? 谢谢 编辑: 如何使整个div充当链接-当您单击该div上的任意位置时,将您带到某个地址。 问题答案: 当鼠标

  • 问题内容: 这是一个常见的问题。它几乎总是被关闭,作为以下问题的重复项:是否有CSS父选择器? 重复项很好地指出了CSS不能定位父元素。但是,它对于原始问题几乎没有提供任何指导,而原始问题可能会在XY问题中陷入困境。 在这种情况下… 悬停孩子时如何更改父母的背景颜色? …至少有一种CSS解决方案可以解决该问题。 问题答案: 尽管无法使用CSS选择父元素,但是您可以使用另一种方法来完成任务。 您希望

  • 因为我使用可变颜色的按钮,我需要添加内联css。悬停颜色是其他变量。我不能在内联css上添加悬停选择器,所以我必须使用js。我试着用. hover()来做,但是当我悬停按钮时,两种颜色都消失了。 代码: HTML:

  • 只是尝试在CSS中练习悬停和下拉。在下面的代码中,我希望每当下拉子div(带有Home1文本的绿色div)悬停在上面时,的背景色(红色)应该更改为蓝色。 会很感激你的帮助。 null null

  • 我正在尝试将按钮的背景色从蓝色淡入白色,并将字体颜色从白色淡入蓝色。我查了其他帖子。 这是我的小提琴:http://jsfiddle.net/t533wbuy/1/ 我用这把小提琴作为参考:http://jsfiddle.net/visualdecree/SvjHx/ 我的问题是: 我希望它是一个按钮,而不是一个按钮 Css html 点击这里申请 jQuery

  • 我需要一些帮助我想改变工具提示基于按钮主色。 例如:如果按钮具有“主色”,则工具提示也应为“主色”。。。 超文本标记语言: jQuery: 实例:https://codepen.io/themes4all/pen/NWabvad