letter-spacing

letter-spacingCSS のプロパティで、テキストの水平方向の字間のスペースに関する挙動を設定します。この値はテキストを描画する際に文字間の自然な空間に追加されます。 letter-spacing が正の値であった場合は、文字と文字の間が開き、 letter-spacing が負の値であった場合は、文字と文字が互いに近づきます。

構文

/* キーワード値 */
letter-spacing: normal;

/* <length> 値 */
letter-spacing: 0.3em;
letter-spacing: 3px;
letter-spacing: .3px;

/* グローバル値 */
letter-spacing: inherit;
letter-spacing: initial;
letter-spacing: unset;

normal
現在のフォントでの通常の字間になります。 0 の値とは異なり、この値はユーザーエージェントが文字列を両端揃えするために字間を変えることを許可します。
<length>
既定の字間に加える字間のスペースを指定します。負の値も指定可能ですが、実装に依存した制限があるかもしれません。ユーザーエージェントは文字列を両端揃えするために、字間スペースをさらに増減させることはありません。

アクセシビリティへの配慮

正と負のどちらでも、大きすぎる値を letter-spacing に指定すると読みづらくなってしまいます。正の値として大きすぎる場合、文字と文字が離れすぎるせいでひとつの単語ではなくバラバラの文字に見えてしまいます。負の値として大きすぎる場合、文字と文字が重なり合うために何が書いてあるのか分からなくなってしまいます。

フォントの文字幅は種類ごとに異なるため、読みやすい letter-spacing もそれぞれ異なります。すべてのフォントで読みやすさを提供してくれる単一の設定値というものはありません。

公式定義

初期値normal
適用対象すべての要素。 ::first-letterおよび::first-line にも適用されます。
継承あり
計算値絶対的な長さまたはキーワード normal のどちらかから成る最適値
アニメーションの種類length

形式文法

normal | <length>

字間の設定

HTML

<p class="normal">letter spacing</p>
<p class="em-wide">letter spacing</p>
<p class="em-wider">letter spacing</p>
<p class="em-tight">letter spacing</p>
<p class="px-wide">letter spacing</p>

CSS

.normal   { letter-spacing: normal; }
.em-wide  { letter-spacing: 0.4em; }
.em-wider { letter-spacing: 1em; }
.em-tight { letter-spacing: -0.05em; }
.px-wide  { letter-spacing: 6px; }

結果

仕様書

仕様書 状態 備考
CSS Text Module Level 3
letter-spacing の定義
勧告候補 変更なし。
CSS Level 2 (Revision 1)
letter-spacing の定義
勧告 変更なし。
Scalable Vector Graphics (SVG) 1.1 (Second Edition)
letter-spacing の定義
勧告 SVG での初回定義
CSS Level 1
letter-spacing の定義
勧告 初回定義

ブラウザーの互換性

BCD tables only load in the browser

関連情報