font:フォントに関する様々な機能を一括で指定する
初期値 | 各プロパティの初期値 |
適用対象 | 全ての要素、::first-letter および::first-line |
継承 | する |
アニメーション | 各プロパティの値に基づく |
対応ブラウザ | caniuseで確認 |
fontプロパティの説明
font
は、フォントに関する様々な機能を一括で指定します。よく使われる機能として、フォントの大きさ、太さ、フォントファミリーの変更などがありますが、他にも色々な機能を備えています。
font
で操作できるプロパティは以下の通りです。他のショートハンド・プロパティと同様に、一括指定で省略された値は各プロパティの初期値に上書きされてしまいます。それが合理的なマークアップでない限り、複数のプロパティを使い分けた方が安全だと言えます。
font-family
:文字の種類を指定する。font-size
:文字の大きさを指定する。font-stretch
:文字の幅を指定する。font-style
:筆記体や斜体で表示する。font-variant
:字体の表示形式を指定する。font-weight
:文字の太さを指定する。line-height
:行間の高さを指定する。
font
を使う場合は、いくつかの規則を守らなければなりません。主に省略できない値と記述する順番に気をつける必用があります。
font-family
とfont-size
の値は省略できません。その他の値は任意です。font-style
、font-variant
、font-weight
の値は、font-size
の前に記述しなければなりません。font-variant
に該当する値は、normal
およびsmall-caps
だけが使えます。font-stretch
に該当する値は、単一のキーワードのみが使えます。line-height
に該当する値は、font-size
の後にスラッシュ(/
)で区切って指定します。font-family
の値は、必ず最後に記述します。
fontに指定できる値
- <'font-family'>
font-family
で指定できる値です。- <'font-style'>
font-style
で指定できる値です。- <'font-stretch'>
font-stretch
で指定できる値です。- <'font-style'>
font-style
で指定できる値です。- <'font-variant'>
font-variant
で指定できる値です。- <'font-weight'>
font-weight
で指定できる値です。- <'line-height'>
line-height
で指定できる値です。
システムフォント値
- caption
- キャプション付きのコントロールに使用されるシステムフォントを有効にします。
- icon
- ラベルアイコンに使用されるシステムフォントを有効にします。
- menu
- ドロップダウンメニューやメニューリストに使用されるシステムフォントを有効にします。
- message-box
- ダイアログボックスに使用されるシステムフォントを有効にします。
- small-caption
- スモールキャピタルに使用されるシステムフォントを有効にします。
- status-bar
- ウィンドウのステータスバーに使用されるシステムフォントを有効にします。
- その他のキーワード値
- 特定の環境で使用できるシステムフォントを有効にします。
fontの使い方とサンプル
font
プロパティの構文は以下の通りです。
CSS
/* 必須の値 */
font: 1rem sans-serif;
font: 24px serif;
/* 記述する順序 */
font: bold 1.8rem monospace;
font: 300 oblique 1.6rem fantasy;
/* line-heightの指定 */
font: 1.6rem / 1.5 serif;
/* グローバル値 */
font: inherit;
font: initial;
font: revert;
font: unset;
fontの実例
それでは実際にfont
プロパティの書き方を見ていきましょう。以下の例は、比較的よく使われる値をまとめて指定した時の挙動を表しています。
表示確認
CSS
.samp_box {
overflow: auto;
width: 100%;
margin-top: 1rem;
padding: 0 1rem 1rem;
background: #eee;
}
.samp_box h2 {
margin: 1rem 0 0;
font-size: 1rem;
}
.samp_box p {
margin: 1rem 0 0;
padding: .3rem;
background: #fff;
}
#font_1 {
font: 1rem sans-serif;
}
#font_2 {
font: bold 1.2rem serif;
}
#font_3 {
font: italic 1.5rem / 2 monospace;
}
HTML
<section class="samp_box">
<h2>font</h2>
<p id="font_1">font: 1rem sans-serif; あいうえおカキクケコ。</p>
<p id="font_2">font: bold 1.2rem serif; あいうえおカキクケコ。</p>
<p id="font_3">font: italic 1.5rem / 2 monospace; あいうえおカキクケコ。</p>
</section>
fontに関連するCSSプロパティ
フォント・文字色 | |
---|---|
color | 文字の色を指定する |
font | フォントに関する様々な機能を一括で指定する |
font-family | 文字フォントの種類を指定する |
font-feature-settings | OpenTypeフォントの拡張書体の特性を制御する |
font-kerning | フォントの文字詰め(カーニング)を制御する |
font-language-override | 文字を表示する祭に使用する言語情報を一時的に変更する |
font-size | 文字フォントの大きさを指定する |
font-size-adjust | 現在のフォントサイズを基準に小文字の大きさを相対的に調整する |
font-stretch | 表示させるフォントの幅広や幅狭のフェイスを指定する |
font-style | フォントを筆記体や斜体で表示するかどうかを指定する |
font-synthesis | 太字や斜体に対応していないフォントの加工を制御する |
font-variant | フォントの表示形式やブラウザの合成規則を一括で指定する |
font-variant-alternates | 文字フォントの代替字体(グリフ)の選定を制御する |
font-variant-caps | 文字列に適用されるキャピタライゼーションルールを制御する |
font-variant-east-asian | 東アジアの言語で使われる字体を制御する |
font-variant-ligatures | 隣り合った文字フォントの合字(リガチャ)を制御する |
font-variant-numeric | 数値に関する文字表記を制御する |
font-variant-position | 上付き文字や下付き文字として配置されるべき字体の使用を制御する |
font-weight | 文字フォントの太さを指定する |