ホームページ作成/テキストの配置・装飾 (HTML,CSS)

スタイルシートでドロップキャップを作る(2ページ目)

雑誌などでよく使われる「先頭の1文字を大きくして下の数行に食い込ませる」装飾(ドロップキャップ)を作ってみましょう。スタイルシートを使えば簡単です。first-letter疑似要素・first-child疑似クラスを使います。

西村 文宏

執筆者:西村 文宏

ホームページ作成ガイド

first-letter(ファーストレター)疑似要素を使うには

先頭の1文字にだけスタイルを適用させる「first-letter疑似要素」は、以下のようにして使います。

要素名:first-letter { スタイル }

例えば、段落(p要素)の先頭1文字だけを赤色にしたい場合は、以下のように記述します。

p:first-letter {
   color: red;
}

これを使って、ドロップキャップを作ります。

first-letter疑似要素でドロップキャップを作る

ドロップキャップを作る最小限のスタイルシートソースは、次のようになります。

p:first-letter {
   font-size: 270%;
   float: left;
   line-height: 1;
}

font-sizeプロパティで文字サイズを大きくし(ここでは2.7倍)、floatプロパティで左端に寄せています。 floatプロパティを使って左端に寄せると、続く内容は右側に回り込むようになります。 3行目のline-heightプロパティは、この段落自体にline-heightプロパティを使って行間が指定されているとき、ドロップキャップ部分の行間がそれに影響されるのを防ぐために必要です。

表示例は以下の通りです。

floatプロパティで左端に寄せ、font-sizeプロパティで大きめに表示させれば、それだけでドロップキャップになります。 ただ、色を加えた方がより目立つようになるでしょう。

さらに色や余白などの装飾を加えると、以下のようなソースになります。

p:first-letter {
   font-size: 270%;
   float: left;
   line-height: 1;
   background-color: #cc0000;
   color: white;
   padding: 3px;
   margin-right: 3px;
}

このソースを使って表示すると、以下のような感じになります。

background-colorプロパティで背景色を赤色にし、colorプロパティで文字色を白色にしています。 さらに、内側の余白を3px設けて反転表示を読みやすくし、外側の右側に3pxの余白を設けて、隣接する文字と少し間隔を取っています。

このままだと、すべての段落で先頭文字がドロップキャップになってしまいます。 ある範囲の「先頭の段落」にのみ適用されるようにしてみましょう。

「最初の段落」にだけ適用させる方法は… >>

  • 前のページへ
  • 1
  • 2
  • 3
  • 5
  • 次のページへ

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます