CSS Web制作

CSSでテキストの最初の一文字を大きくする方法【::first-letterの使い方】

※ 当サイトではアフィリエイト広告を利用しています

テキストの一文字目だけ大きくする方法ある?

文章の最初の文字だけ大きくするデザインがありますが、spanタグで囲って大きくする方法もあります。

ただそれだとHTMLをいじる必要があるので、今回はHTMLはそのままでCSSだけで実現する方法を解説します。

 

完全無料のプログラミングスクール『ZeroPlus Gate』
30日間でWeb制作を学べる無料のプログラミングスクールがこちら
  • 30日間でWeb制作を学べる
  • 完全無料
  • 現役エンジニアへの質問無制限
  • オンラインの動画学習なので時間場所を問わず勉強可能
  • 最大4回の学習サポート面談
  • 受付は1日25名までの先着制
無料なのに専属のメンターが付き、現役エンジニアへの質問も無制限という破格のサービスです。
いきなり数十万するプログラミングスクールは厳しい・・・という人のお試しに最適。
現在は無料ですがいつ有料になるか分からないので、気になる方はお早めに👇

\ 完全無料 /

ZeroPlus Gate公式サイト

先着1日25名まで!

CSSのfirst-letterで最初の一文字を大きくする方法

早速ですが今回のデモのコードはこちらです。

<div class="box">
  <p>愛犬撮影会に行ってきました。とても天気が良くてワンちゃん達も楽しそうにしていました。写真が出来上がるのが楽しみです。</p>
</div>
.box {
  box-shadow: 1px 1px 5px 2px #ccc;
  margin-inline: auto;
  margin-top: 20px;
  max-width: 300px;
  padding: 1em;
  width: 95%;
}
p {
  font-size: 16px;
  letter-spacing: 0.05em;
  line-height: 1.5;
}
p::first-letter {
  color: red;
  font-size: 40px;
  font-weight: 700;
}

CSSのポイントは最後のp::first-letterで、これは擬似要素になります。

p::first-letter {
  /* 最初の文字にあてるスタイル */
}

ここで最初の文字のスタイルを設定できます。

今回は大きくして色と太さも変えてみました。

See the Pen
Untitled
by junpei (@junpei-sugiyama)
on CodePen.

ただ最初の文字を大きくするデザインとはちょっとイメージが違うと思うので、テキストを回り込ませてみたいと思います。

 

最初の文字にテキストを回り込ませる方法

テキストを回り込ませるのに必要なのはfloatになります。

p::first-letter {
  line-height: 1.2;
  float: left;
  padding-right: 10px;
}

ただし文字の高さや右側の余白などを調整するために、line-heightpadding-rightも書いています。

こちらがデモです。

See the Pen
1文字目だけ大きくする:テキストを回り込ませる
by junpei (@junpei-sugiyama)
on CodePen.

 

段落(pタグ)が複数ある場合

もしdivタグの中にpタグが複数ある場合はどうなるでしょうか。

<div class="box">
  <p>愛犬撮影会に行ってきました。とても天気が良くてワンちゃん達も楽しそうにしていました。写真が出来上がるのが楽しみです。</p>
  <p>愛犬撮影会に行ってきました。とても天気が良くてワンちゃん達も楽しそうにしていました。写真が出来上がるのが楽しみです。</p>
  <p>愛犬撮影会に行ってきました。とても天気が良くてワンちゃん達も楽しそうにしていました。写真が出来上がるのが楽しみです。</p>
</div>

この場合、CSSが先ほどと同じならこのようになります。

See the Pen
1文字目だけ大きくする:複数の段落
by junpei (@junpei-sugiyama)
on CodePen.

もし最初の段落(pタグ)だけ適用させたい場合は、最初のpタグにだけclass名を付けそれに適用させるか、以下のように書けばOKです。

p:first-of-type::first-letter {
  /* 最初の文字にあてるスタイル */
}



spanタグを使うデメリット

spanタグを使う場合は、冒頭でも書いたようにHTMLをいじる必要があります。

特に複数行ある場合は手間になりますし、見た目的にも良くないですよね。

<div class="box">
  <p><span>愛</span>犬撮影会に行ってきました。</p>
  <p><span>と</span>ても天気が良くてワンちゃん達も楽しそうにしていました。</p>
  <p><span>写</span>真が出来上がるのが楽しみです。</p>
</div>

まとめ

今回はfirst-letterを使って最初の一文字を大きくする方法を解説してきました。

使用頻度が低いと思いますが、これを知らないとspanタグを使ってごちゃごちゃしたHTMLを書くことになるので、覚えておくと便利かと思います。

以上になります。

 

Web制作おすすめ教材と案件獲得サービス
当ブログではWeb制作学習におすすめの教材を厳選してご紹介しています。
こちらの記事を参考に教材を購入して成果を出している人もたくさんいるので、自分に必要な教材を探してみて下さい。
また、学習面だけでなく営業面である案件獲得サービスもご紹介しています。
スキルが身についても仕事がなければ意味がないので、営業に不安がある人はこちらの記事をぜひ参考にしてみて下さい。
この記事を参考にスキルと営業力を身につけて稼げるようになりましょう!

-CSS, Web制作