<length>長さで字下げする
pxやemなどで距離を指定します。正の値は内側へ、負の値は開始側の外へ先頭行を動かします。
段落の先頭行に字下げをつくるプロパティ。2行目以降を固定したまま先頭行だけを動かし、文章の始まりを整えます。
text-indentとは?段落の先頭行をライブプレビューで左右へ動かしながら、初期値、長さ・割合・負の値、継承を初学者向けに解説します。
段落の先頭行だけを左右へ動かします。2行目以降の開始位置と比べると、字下げの距離が見えてきます。
.element text-indent: 32px;
値のパターン
<length>pxやemなどで距離を指定します。正の値は内側へ、負の値は開始側の外へ先頭行を動かします。
<percentage>割合は包含ブロックの幅を基準に計算されます。箱の幅が変わると字下げの距離も変わります。
inherittext-indentは継承されるため、親へ指定すると中のブロックコンテナーにも同じ値が受け継がれます。
hanging / each-line仕様には先頭行以外や強制改行後も対象にするキーワードがありますが、ブラウザー対応を確認して使います。
初期値は0です。基本は長さで先頭行を内側へ動かし、幅に連動させるときは割合、外へ突き出すときは負の値を使います。
0字下げしない初期値2em現在の文字サイズ2文字分を空ける相対長32px一定の距離を空ける固定長10%包含ブロック幅の10%を空ける割合-1em先頭行を開始側へ突き出す負の値2em hanging先頭行以外を字下げする対応状況に注意2em each-line強制改行後の行も字下げする対応状況に注意emを使うと文字サイズに合わせて距離が変わり、日本語の段落の始まりをそろえられます。
.article p { text-indent: 1em; }負の値と開始側のpaddingを組み合わせ、記号だけを本文の並びより外側へ置けます。
.note { padding-inline-start: 1.5em; text-indent: -1.5em; }割合を使うと、カードや説明欄の幅が変わったときに字下げの距離も連動します。
.lead { text-indent: 8%; }ポイント
text-indentの初期値は0で、ブロックコンテナーに適用され、子要素へ継承されます。割合は包含ブロックの幅を基準にし、正の値はインライン開始側から内側へ、負の値は外側へ先頭行を動かします。字下げは要素のpaddingとは別に加わるため、大きな値や負の値で文字が切れないか確認します。値は長さ・割合としてアニメーションできます。仕様にあるhangingとeach-lineはブラウザーによって対応が異なるため、利用前に対象環境で確かめます。
text-indent と一緒に使われるプロパティや、詳しい外部リファレンスをまとめました。