2025.08.14

HTML・CSS

1行のテキストの均等割りについて

デザイン上テキストが1行に限定されている場合のテキストの均等割りを確認します。
デモページはこちら

以下のhtml構造で確認します。

<p>text-align: justifyの場合</p>
<div class="div-parent">
  <dl>
    <div>
      <dt class="style01">タイトル:</dt>
      <dd>テキストテキストテキストテキスト</dd>
    </div>
    <div>
      <dt class="style01">長いタイトル:</dt>
      <dd>テキストテキストテキストテキスト</dd>
    </div>
    <div>
      <dt class="style01">さらに長いタイトル:</dt>
      <dd>テキストテキストテキストテキスト</dd>
    </div>
  </dl>
</div>

<p>text-align-last: justifyの場合</p>
<div class="div-parent">
  <dl class="dl">
    <div>
      <dt class="style02">タイトル:</dt>
      <dd>テキストテキストテキストテキスト</dd>
    </div>
    <div>
      <dt class="style02">長いタイトル:</dt>
      <dd>テキストテキストテキストテキスト</dd>
    </div>
    <div>
      <dt class="style02">さらに長いタイトル:</dt>
      <dd>テキストテキストテキストテキスト</dd>
    </div>
  </dl>
</div>

CSSは以下になります。text-align: justifyは複数行のテキストを最終行以外均等割りにします。1行のテキストは最終行と同じ扱いになるため均等割りできません。1行のテキストを均等割りする場合はtext-align-last: justifyを使用します。

.div-parent {
  margin: 0 0 1em;
  padding: 1em;
  background: #fff;
  overflow: hidden;
}
dl div {
  display: flex;
}
dl div:not(:first-child) {
  margin-top: 1em;
}
dt {
  position: relative;
  width: 9em;
  flex-shrink: 0;
  padding-right: 1em;
}
dt::after {
  content: ":";
  position: absolute;
  top: 0;
  right: 0;
}
.style01 {
  text-align: justify;
}
.style02 {
  text-align-last: justify;
}

関連記事

2020.07.05

HTML・CSS

rubyタグでテキストにルビ(ふりがな)を振る

rubyタグとrtタグの二つを使ってテキストにルビ(ふりがな)を振ります。rtタグはふりがな、rubyタグはテキストとふりがな(rtタグを含む)の両方を囲います…

2021.10.04

HTML・CSS

複数行のテキストの左側を縦のボーダーで装飾

デモページはこちら 複数行のテキストの左側を縦のボーダーで装飾します。CSSはborder-leftの場合とheightを設定した疑似要素beforeをabso…

2020.09.07

HTML・CSS

animation-fill-modeの指定について

animation-fill-modeプロパティはCSSアニメーション実行後、対象要素にどのようなスタイルを適用するか設定します。animation-fill-…

2022.05.16

HTML・CSS

メディアクエリのand条件とor条件

CSSのメディアクエリ(Media Queries)のand条件は以下のように記述します。andでつないだ全ての条件を満たす時に適用されます。 or条件は以下の…

2024.08.17

HTML・CSS

transform複数指定時の順番について

transformプロパティで複数指定する場合は、指定の順番に注意が必要です。デモページはこちら 以下のhtml構造で確認します。 CSSでボタンの矢印を再現し…

上に戻る