gpt4 book ai didi

css - 垂直对齐:文本节点的中间

转载 作者:行者123 更新时间:2023-12-04 22:15:25 24 4
gpt4 key购买 nike

我正在尝试垂直对齐文本块。我有一个:before伪元素,我想要实现的是将两者对齐。

没有额外的包装就可以实现它吗?这是我的问题:

Vertical align

HTML:

<div class="fail">Something's wrong</div>
<div class="success">
<span>Perfect middle</span>
</div>


CSS失败:

.fail
{
background: orange;
font-size: 30px;
display: inline-block;
}

.fail:before
{
background: red;
content: '✗';
text-align: center;
display: inline-block;
line-height: 60px;
margin-right: 10px;
vertical-align: middle;
width: 60px;
}


CSS成功:

.success
{
font-size: 30px;
background: lime;
display: inline-block;
}

.success:before
{
background: green;
content: '✓';
text-align: center;
display: inline-block;
line-height: 60px;
margin-right: 10px;
vertical-align: middle;
width: 60px;
}

.success span {
vertical-align: middle;
}


从这张照片可能不太明显,但是左边的照片太高了,相差约2-3个像素。这对于较小的元素尤其重要。

所以我的问题是:我可以仅用一个HTML标签+ :before来达到完美的中间效果吗?

最佳答案

因为我不太喜欢内联元素,所以我会这样做:

.fail {
position: relative;
float:left;
padding-right: 10px;
line-height: 60px;
font-size: 30px;
background: orange;

}

.fail:before {
content: '✗';
display: inline-block;
width: 60px;
margin-right: 10px;
text-align: center;
background: red;
}

关于css - 垂直对齐:文本节点的中间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32347486/

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