请参阅附图。如何使用CSS实现这样的下划线效果?
答案 0 :(得分:4)
我相信这正是您所寻找的:
<强> HTML:强>
<span class="underlined">example text<hr/>#</span>
<强> CSS:强>
.underlined {
display:inline-block;
vertical-align:text-top;
text-align:center;
}
.underlined hr {
border:none;
border-top:1px solid black;
margin:0;
}
范围显示为inline-block
元素,因此它将允许<hr>
内的换行元素,例如span
。使用它,您可以简单地在文本本身和下标之间放置<hr>
,您将获得所需的结果。需要vertical-align
才能使文本本身适合文本的常规流程,将下标推送到文本下方。
但要注意,这会破坏文本的流动。我不知道你想用它做什么,但我认为可能有另一种方法来获得你想要的结果,而不必使用它。
答案 1 :(得分:0)
这需要一些微调,但这样的事情可能有效:
<p>Your <span class="toUnderline">test <span class="subscript">3</span> some</span> more text.</p>|
<style>
.subscript {
line-height:-15px;
letter-spacing:-5px;
text-decoration:none;
}
.toUnderline{
text-decoration:underline;
}
</style>
答案 2 :(得分:0)
我会使用绝对定位和百分比来为您提供将其放置在类中的灵活性,并且无需调整即可重复使用。 Here is an example
像这样构建HTML:
<p>This is a simple statment with some <span class="underline">underlined text<span>3</span></span>and a number under it. But it s a bit longer to mix it up.</p>
<p>This is a simple statment with some <span class="underline">underlined text<span>3</span></span>and a number under it. But it s a bit longer to mix it up. But it s a bit longer to mix it up.But it s a bit longer to mix it up.But it s a bit longer to mix it up.But it s a bit longer to mix it up.But it s a bit longer to mix it up.</p>
像这样构建你的CSS:
p {
font-size:1em;
line-height:2.2em;
}
.underline {
position:relative;
width:auto;
text-decoration:underline;
}
.number {
position:absolute;
width:100%;
top:.5em;
left:50%;
text-decoration:none;
}
另一种CSS方法是:
p {
font-size:1em;
line-height:2.2em;
}
p span {
position:relative;
width:auto;
text-decoration:underline;
}
p span span {
position:absolute;
width:100%;
top:.5em;
left:50%;
text-decoration:none;
}