我想在 CSS 中实现如下效果:
我将 CSStable-cell
与伪元素:before
一起使用,以便它们在一行中自动调整宽度。换句话说,我希望文本容器具有文本的宽度(带有一些填充),并且伪元素填充该区域的其余部分。这意味着我不能使用 1px位于顶部,因为每个单词都有不同的宽度。:after
background-image
HTML
<div id="container">
<div id="box">
<h2 id="header">UPDATES</h2>
</div>
</div>
CSS
#container {
background:url("http://lorempixel.com/output/abstract-q-g-640-480-9.jpg") center center no-repeat;
padding-top:50px;
height:400px;
width:50%;
margin:0 auto;
}
#box {
margin:0 auto;
width:50%;
display:table;
}
#header {
color:#fff;
font:14px Arial;
font-weight:500;
line-height:10px;
height:10px;
display:table-cell;
padding:0 10px;
width:auto;
text-align:center;
}
#box:after, #box:before {
content:"";
display:table-cell;
border:1px solid #fff;
border-bottom:0;
height:10px;
width:50%;
}
#box:after{
border-left:0;
}
#box:before{
border-right:0;
}
但是,它在 Opera 中不起作用,所以我需要找到一种不同的技术来达到相同的效果。我宁愿避免使用 HTML 表格和任何 js。你能提供什么建议吗?