gpt4 book ai didi

css - 在伪元素宽度等于其父元素的文本之前

转载 作者:太空宇宙 更新时间:2023-11-04 07:09:27 25 4
gpt4 key购买 nike

我有一个问题,我正在使用 Wordpress,我想初始化所有 <h1>, <h2>, <p>, <ul>等等...我的用户的标签。这意味着我无法更改 HTML 模板,我只能使用 CSS。我想要做的是: My <h2> tag

我目前拥有的是:

h2 {
font-size: 24px;
text-transform: uppercase;
position: relative;
margin-bottom: 30px;
padding-left: 30px;
color: #fff;
}
h2:after {
content: "";
background-color: #1c3b65;
width: 100%;
height: 120%;
position: absolute;
top: -10%;
left: 0;
z-index: -1;
-webkit-transform: skew(-10deg);
-moz-transform: skew(-10deg);
-o-transform: skew(-10deg);
-ms-transform: skew(-10deg);
tranform: skew(-10deg);
}
<h2> Titre de niveau 2 </h2>

我知道我可以将 width: fit-content 添加到标签中,但用户无法使用 Wordpress 的 WYSIWYG 将文本居中、放置在左侧或右侧。如果我将 width: 100% 放在 before 伪元素上,它将占用所有行,这是合乎逻辑的,因为标签占用所有行以使 text-align CSS 属性有效。

我想要什么:

h2 {
font-size: 24px;
text-transform: uppercase;
position: relative;
margin-bottom: 30px;
padding-left: 30px;
color: #fff;
width: fit-content;
}
h2:after {
content: "";
background-color: #1c3b65;
width: 110%;
height: 120%;
position: absolute;
top: -10%;
left: 0;
z-index: -1;
-webkit-transform: skew(-10deg);
-moz-transform: skew(-10deg);
-o-transform: skew(-10deg);
-ms-transform: skew(-10deg);
tranform: skew(-10deg);
}
<h2> Titre de niveau 2 </h2>

最佳答案

您可以在 h2 元素上使用 display: inline-block 并将其居中 left: 50%translate.

h2 {
font-size: 24px;
text-transform: uppercase;
position: relative;
margin-bottom: 30px;
padding: 0 30px;
color: #fff;
display: inline-block;
left: 50%;
transform: translateX(-50%);
}

h2:after {
content: "";
background-color: #1c3b65;
width: 100%;
height: 120%;
position: absolute;
top: -10%;
left: 0;
z-index: -1;
transform: skew(-10deg);
}
<h2> Titre de niveau 2 </h2>

关于css - 在伪元素宽度等于其父元素的文本之前,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51301307/

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