gpt4 book ai didi

css - 更改由 :after pseudo-element as its parent? 创建的 CSS 形状的颜色

转载 作者:行者123 更新时间:2023-11-28 11:38:41 25 4
gpt4 key购买 nike

我有一些显示“短信”气泡的 HTML 和 CSS。要创建气泡,使用 CSS 类 .bub。然后,使用 .bub:after 构建三 Angular 形。

我很难根据其父颜色更改由 :after 伪元素创建的 CSS 形状的颜色。

目标:

改变由 div:after 伪元素创建的三 Angular 形的颜色。会有很多颜色,所以为每种颜色编写不同的类会太麻烦。

这是简化的 CSS 和 HTML:

<!DOCTYPE html>
<html lang="en">
<div id="container">
<head>
<style>

.bub {
width: 275px;
display: table-cell;
position:relative;
padding:10px;
margin:1em 0 3em;
color:#fff;
background:#075698;
-webkit-border-radius:10px;
-moz-border-radius:10px;
border-radius:10px;
}

.bub:after {
content:"";
position:absolute;
bottom:-20px;
left:50px; /* controls horizontal position */
border-width:20px 0 0 20px; /* vary these values to change the angle of the vertex */
border-style:solid;
/* reduce the damage in FF3.0 */
display:block;
width:0;
}

.bub.left {
left: -100px;
}

.bub.left:after {
top:16px;
left:-40px; /* value = - border-left-width - border-right-width */
bottom:auto;
border-width:10px 40px 0 0; /* vary these values to change the angle of the vertex */
border-color: transparent #333;
}

body {
padding:0;
margin:0;
font:1em/1.4 Cambria, Georgia, sans-serif;
color:#333;
background:#fff;
}

#container {
width:275px;
padding:0 0 50px;
margin:0 auto;
}

.blue {
background: blue;
border-color: blue;
}

.green {
background: green;
border-color: green;
}

.red {
background: red;
border-color: red;
}

</style>
</head>
<body>
<div class="content">
<br><br>
<div class="bub left blue">Test 1</div>
<br>
<div class="bub left green">Test 2</div>
<br>
<div class="bub left red">Test 3</div>
</div>
</div>
</body>
</html>

最佳答案

如果您要更改形状的颜色,则由 ::after 创建伪元素;

既然你设置了border-color每个 .bub 元素上的属性,您可以简单地为 :after 伪元素使用 inherit 值,如下所示:

.bub.left:after {
border-color: transparent inherit;
}

WORKING DEMO .

来自 MDN :

The inherit CSS-value causes the element for which it is specified to take the computed value of the property from its parent element. It is allowed on every CSS property.

关于css - 更改由 :after pseudo-element as its parent? 创建的 CSS 形状的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22438725/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com