Mill's Note

【CSS-rules】FontやTextに関するプロパティ一覧

/

cssを設定する際、必ず必要になるFontやTextに関するプロパティをサクッと一覧にまとめました。

基本的に現時点(2024年8月)でモダンブラウザであれば問題なく使用できるプロパティを掲載。
ブラウザ対応にバラつきのあるもの、使用に制約のあるもの、実験的なもの、英文(CJK以外)のみに適用されるもの等、あまり汎用的でないプロパティは載せていません。

Fontに関するプロパティ

.プロパティ対象初期値効果説明
1font-styleフォントの傾斜normalnormal
italic
oblique
oblique 角度
通常体
筆記体
斜体
斜体
フォントに italicoblique一方が無い場合は、ある方を代用。どちらもない場合はブラウザが線画
角度 =ttf,otf のみ指定可
2font-weightフォントの太さ
(重み)
normalnormal
bold
数値指定
/* 親要素相対 */
lighter

bolder
400
700
fontによる
/* weight */
100
900
normal,bold は数値指定可
指定しない場合、ユーザーエージェント
数値指定はfontが持っているweightのみ
lighter,bolderはfontに指定weightが無ければ無視
3font-sizeフォントサイズ親継承em,rem,px,
%,vw 等
指定しない場合、ユーザーエージェント
4line-height行の高さ親継承数値のみ
em,rem,px,%, 等
数値のみ = font-sizeに数値を掛けたものになる。通常はこの指定を推奨
文字は指定した高さの上下中央になる
5font-familyフォントファミリー親継承font名
serif,
sans-serif,
monospace 等
特定フォント
明朝体
ゴシック体
等倍
フォント書体や優先順位の指定
color文字色親継承#,rgb,rgba,
hsl,hsla 等

font関係には上記以外にも、TrueType(ttf),OpenType(otf),英字などに対応した様々なプロパティがありますが、当サイトではWEBフォント(woff, woff2) や日本語を主に使用する事を前提としている為、適用されないプロパティは割愛していますm(__)m

font 一括指定

他の一括指定と違い、font 一括指定は順序などの記載方法が厳しく、規定外は無視されます。
font-family が必須なので、汎用性は低い? かも _ _;;

CSS code
font: 1-style 2-weight 3-size/4-line-height 5-family
  • 必須【 font-size, font-family 他のプロパティは任意
  • 順序は上記通り。( 任意のプロパティを外すのはOKだが、並び順変更はNG)
  • font-size/line-height はスラッシュで区切る。(スラッシュの間にスペースを入れてはいけない)

Textに関するプロパティ

プロパティ対象初期値効果説明
letter-spacing字間normalnormal,em,rem,
px,%,vw 等
正数で字間が開き、負で字間が狭くなる
text-align水平方向の配置startleft,start
right,end
center
justify
左寄せ
右寄せ
中央揃え
両端揃え
左寄せ = left, start
右寄せ = right, end
どちらを使用してもOK
text-align-last段落又は改行前
最終行の処理
autoauto
left,start
right,end
center
justify
指定なし
左寄せ
右寄せ
中央揃え
両端揃え
text-align の値と同じ。
ただしjustifyの場合は最終行がtext-align-last:start; になる
text-indent字下げ0em,rem,%,
px,vw 等
正の数→右移動 (字下げ)
負の数→左移動 (ぶら下げ)

% = 包含ブロックに対する%
text-transform英字の表記nonenone
capitalize
uppercase
lowercase
変換なし
最初を大文字
すべて大文字
すべて小文字
capitalize は、
スペースで区切られた単語ごとに適用される

テキストの改行やあふれたテキストに関するプロパティ

プロパティ対象初期値効果説明
line-break改行規則
(禁則処理)
autoauto
loose
normal
strict
anywhere
ブラウザの判断
最も制限が少ない
一般的な改行規則
最も厳格な改行規則
禁則を行わない
句読点、々、小字(ぁ,っ,ゃ等の小さい文字) に対する改行処理
text-overflowあふれた
テキストの処理
clipclip
ellipsis
切り取り(非表示)
左に … を付与
包含ブロックが overflow:hidden 等である場合のみ
text-wrap折り返す方法wrapwrap
nowrap
balance
ブラウザの判断
折り返しなし
各行の文字数を均等
nowrap は、包含ブロックからはみ出して表示される
balance は負荷が大きい為使用には注意が必要。また、ブラウザにより最大行数が決められている
word-breakBOXに対する
折り返し
normalnormal
break-all
keep-all
既定の改行規則
単語中でも改行
改行無し
CJK、CJK以外とも
CJKは規則通り、CJK以外のみ適用
CJK以外は規則通り、CJKのみ適用

テキスト装飾用のプロパティ

プロパティ対象初期値効果説明
text-decoration装飾線none詳しい説明ページ ▶
text-emphasis圏点none詳しい説明ページ ▶
text-shadow影を付けるnoneoffsetX
offsetY
ぼかし
影の色
水平方向 px
垂直方向 px
正数 px
通常の色指定
offsetX offsetY ぼかし 影の色
上記の順番で 3 又は 4項目をスペースで繋ぐ
ぼかし → 未指定可
影の色 → 先頭に記載してもOK

縦書きに関するプロパティ

.プロパティ対象初期値効果説明
1writing-mode横書き
縦書き
horizontal-tbhorizontal-tb
vertical-lr
vertical-rl
左 → 右
上 → 下
上 → 下
改行は 上 → 下
改行は 右 → 左
改行は 左 → 右
2text-combine-upright縦書きの
英数字の扱い
nonenone
all
英数字は90°回転
回転せず1em幅に
収める
all は反映させたいテキスト(部分)ごとに指定 (全体指定不可)
3text-orientation縦書きの
文字の向き
mixedmixed
upright
sideways
英数字のみ90°回転
全て縦書き
全て90°回転
sideways-rightもあるが後方互換の為、使用する必要はない

縦書きサンプル

縦書きはwriting-mode(必須)を掛けた上で、2, 3 を追加して見せ方を変更します。
縦書きは、fontやプロパティによって字間や行間などの見え方が変わります。ご注意くださいm(__)m

1- writing-mode

これは horizontal-tbauto
今日は2024年8月15日です。

これは vertical-lr; です。
今日は2024年8月15日です。

これは vertical-rl; です。
今日は2024年8月15日です。

2- text-combine-upright

これはtext-combine-upright: all; です。
all のみ <span>で囲ってスタイルを当てています。

3- text-orientation

これはtext-orientation: mixed;です。
今日は2024年8月15日←半角数字です。2024年←全角数字です。

これはtext-orientation: upright;です。
今日は2024年8月15日←半角数字です。2024年←全角数字です。

これはtext-orientation: sideways;です。
今日は2024年8月15日←半角数字です。2024年←全角数字です。