
解 説
擬似クラス:before と:afterを使うことでテキスト前後の水平線ラインを作っています。前だけ、後ろだけの水平線も可能です。
1まずはhtmlをこのように作成します
1 | < h2 >< span >Hello</ span ></ h2 > |
2後はcssをこのように設定して完了です
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | h 2 { overflow : hidden ; text-align : center ; } h 2 span { display : inline- block ; padding : 0 0.5em ; position : relative ; } h 2 span:before, h 2 span:after { border-top : 1px solid ; content : "" ; position : absolute ; top : 50% ; width : 99em ; } h 2 span:before { right : 100% ; } h 2 span:after { left : 100% ; } |
水平線は内側の span 要素の :before と :after 擬似要素を左右に配置して表現。これらに 99em など充分な幅を持たせ、はみ出した分は外側の h2 要素に指定した overflow: hidden により切り取ります。もちろん擬似要素の幅は 999% とか 9999px とかでもいいです。
見出しタグ内のテキストをspanタグで囲みます