このブログの「h2」タグと「h3」タグの見出し

hatenaロゴ

このブログでは、ほとんどの記事で見出しを使っていないですし、見出しを使うような長文も書かないつもりですが、それでも、今後、見出しを使うような記事を書くかもしれないので、とりあえず、<h2>タグと<h3>タグの見出しを設定してみました。

<h2>タグの見出しはこんな感じです

CSS
.entry-content h2 {
    position: relative;
    border-right: 1px solid #ddd;
    border-left: 8px solid #000;
    border-radius: 3px;
    background: #fff;
    font-size: 18px;
    margin: 1.0em 0 0.8em;
    padding: 6px 10px 4px;
    color: #000;
    text-shadow: 0 0 #ddd;
}

.entry-content h2:after {
    position: absolute;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    box-sizing: border-box;
}

どこにでもありそうなシンプルな見出しですが、ポイントは、擬似要素(after)で上下のボーダーを表示し、左ボーダー(枠線)と重ならないようにしたことと、高さを100%にしても上下のボーダーの高さの分がはみ出してしまうので、「box-sizing:border-box」(ボーダーを含めた高さで計算)ではみ出ないようにぴったりと表示したことです。

参考になるブログ・Webサイト
NxWorld - シンプルなHTMLとCSSコピペで実装できるタイトル(見出し)のデザインサンプル 50
BeGeek - えっなんではみでるの?width指定の要素がはみでる原因とその対処法

<h3>タグの見出しはこんな感じです

CSS
.entry-content h3 {
    position: relative;
    display: inline-block;
    font-size: 17px;
    line-height: 1.2;
    margin: 0 0 1.0em;
    padding: 0 12px 0 0;
    border-bottom: 2px solid #000;
    color: #000;
    text-shadow: 0 0 #ddd;
}

.entry-content h3:before {
    font-family: blogicon;
    font-weight: normal;
    content: "\f041\00a0";
    vertical-align: -1px;
}

.entry-content h3:after {
    position: absolute;
    right: -2px;
    bottom: 1px;
    width: 10px;
    content: "";
    transform: rotate(45deg);
    border-top: 2px solid #000;
}

この見出しのポイントは、「display:inline-block」で文字の長さだけボーダーを表示したことと、擬似要素(before)ではてな純正アイコンを表示したこと、擬似要素(after)で「transform:rotate」を使ってボーダーを矢印っぽく表示したことです。

参考になるブログ・Webサイト
KUSU'S SITE - CSSにて矢印を表示させる方法とは?