意味的にヘッダー (h3、h4 など) である要素を含むデザインを実装しています。全幅のブロック要素であり、その後にヘッダーの全幅を拡張する垂直中央の水平線が続きます。
各ヘッダーを でラップし、<div>
その後に別のブロックレベルの要素を挿入することでこれを処理できることはわかっていますが、そのように HTML を汚染したくないです。私の最初の傾向は、次::after
のようにヘッダーで要素を使用することでした:
.line-header::after {
content:'\00a0';
display: inline-block;
float: right;
width: 55%;
margin-top: -12px;
border-bottom: 1px solid gray;
}
ただし、これには::after
要素を固定幅にする必要があり、これは明らかに異なる幅のヘッダーでは機能しません: http://jsfiddle.net/nbSTf/
HTMLに余分な要素を挿入せずに、ヘッダーの右側のスペースを埋める可変幅の行を取得する方法についてのアイデアはありますか?
編集:以下の Tyriar の回答 (ヘッダーの後ろに全幅の線を描画し、背景色を設定してテキストの後ろの線を消去することを提案) は、これが繰り返しの背景画像の前で行われていることを思い出させました-したがって、背景のトリックはありません残念ながら可能です。