我想在中间显示一个带有单词的水平线,使其如下所示:
我正在尝试这个并且不起作用:
HTML:
<h2><span>Test</span></h2>
CSS:
h2{
font-size: 100px;
border-top: solid 1px black;
width: 100%;
height: 50px;
margin-top: 25px;
top: 50%;
z-index: 1;
}
span{
background: #fff;
padding: 0 20px;
margin-top:-25px;
display: inline-block;
z-index: 5;
}
的jsfiddle: http://jsfiddle.net/2ds9a/
答案 0 :(得分:19)
您可以习惯 css :after
就像这样
<强> HTML 强>
<h2><span class="line-center">Test</span></h2>
<强>的CSS 强>
.line-center{
margin:0;padding:0 10px;
background:#fff;
display:inline-block;
}
h2{
text-align:center;
position:relative;
z-index:2;
}
h2:after{
content:"";
position:absolute;
top:50%;
left:0;
right:0;
border-top:solid 1px red;
z-index:-1;
}
<强> LIve Demo 强>
答案 1 :(得分:2)
如this answer所示(由Quentin建议),以下代码应该可以正常使用:
<div style="height: 2px; background-color: black; text-align: center">
<span style="background-color: white; position: relative; top: -0.5em;">
Section Title
</span>
</div>
有关详细信息,请查看this question.
答案 2 :(得分:1)
有不同的方法可以做到这一点, 这是我的解决方案:
<h2><span class="line"></span><span class="text">Test<span></h2>
<style>
h2{
font-size: 100px;
z-index: 1;
position: relative;
text-align: center;
}
.line{
background: #000;
border-top: solid 1px black;
position: absolute;
height: 1px;
display: block;
top: 56px;
width: 100%;
}
.text{
background-color: #FFFFFF;
z-index: 20;
position: relative;
text-align: center;
padding: 0 34px;
}
</style>