font-familyプロパティ。
CSSに於いて、当該要素の出力で優先して利用されるべきフォント・font-familyプロパティに関する解説です。
font-familyプロパティとは。
font-familyプロパティは、当該要素の出力で優先して利用されるべきフォントです。
フォントは複数指定する事も出来、その場合には前から順番に対応可能なフォントを撰びます。
また、指定されたフォントがない環境向けに、利用されたいフォントの系統を指定する事も出来ます。
font-familyプロパティの書式。
font-familyプロパティの書式は、以下のようになります。
font-family: 値
値としては、以下のものが取れます。
inherit- 一番近い上位要素で指定されたフォントを継承します。
- 一個以上のフォント
フォント
については、以下に挙げるものが使えます。これらのフォントは、「
,」で区切って複数指定する事が出来ます。複数指定されている場合、各文字毎に実装されているフォントを前から順に見出します。
- 例えば日本語文書で漢字・仮名文字と半角英字が混入している場合、日本語のフォント名とラテン文字のフォント名が指定されていれば、それぞれ適切なフォントが選択されます。
- 実装されるフォント名
- 例えばウィンドウズでは"
MS ゴシック"などのフォント名でインストールされておりますが、こう言ったフォント名を直接指定します。- 空白文字が含まれる場合は「"」または「'」の引用符で囲む事が望まれます。
- 仕様上は、引用符で囲まなくても
- フォント名の前後の空白は無視され、
- フォント名の途中にある空白文字は一文字に纏められる
事になっておりますが、実装上の問題があり得るので、引用符で囲むのが無難でしょう。
- フォント系統のキーワード
- 仕様で規定されているフォント系統を表すキーワードです。
現在、以下の五つが規定されております。
serif- セリフを持つフォント。日本語では明朝体が該当します。
sans-serif- セリフを持たないフォント。ゴシック体が該当します。
cursive- 草書体(筆記体)フォント。
fantasy- 装飾文字フォント。
monospace- 等幅フォント。日本語では等幅ゴシック体とする事が多いようです。
この値を指定する事で、指定されたフォント名が実装されていない環境でも適切なフォントが選択されるようになります。
- キーワードは引用符で囲んではいけません。
font-familyプロパティの記述例。
例えば、"MS Pゴシック"(ウィンドウズの不等幅ゴシック体), "Osaka"(マッキントッシュの不等幅ゴシック体)及びゴシック体を指定する場合は、
* {font-family: "MS Pゴシック", "Osaka", sans-serif;}
と記述します。
この場合、優先順位としては
"MS Pゴシック""Osaka"- 閲覧者が環境設定でゴシック体として指定したフォント
となります。
font-familyプロパティに関する注意事項。
font-familyプロパティの仕様上の注意。
font-familyプロパティで指定されたフォントが使えない場合。
font-familyプロパティの値に適切なフォントが無い場合は、ユーザエージェントに実装されているフォントから適切なものを撰ぶ事とされております。
font-familyプロパティの使用上の注意。
- 仕様上はフォント名を引用符で囲まなくてもフォロー出来るようになっておりますが、実際にはフォロー出来ない場合が多いようですので、必ずフォント名は引用符で囲んでおきましょう。
- フォントは環境により様々ですので、必ずフォントキーワードを最終的な選択肢として利用出来るようにしておきましょう。
- 特に、OS標準でないフォントは誰もがインストールしているとは言えないので、必ず代わりのフォントも指定しておきましょう。
- また、日本語フォントには半角英数字が含まれている事を忘れないで下さい。つまり、複数フォントを指定する際にラテン文字のフォントを日本語フォントより後方に記述すると、ラテン文字にも前方で指定している日本語フォントが撰ばれてしまい、折角の指定が無視されてしまいます(しかし、インターネットエクスプローラで問題が生じる事があります)。
font-familyプロパティの実装上の注意。
インターネットエクスプローラでの注意事項。
日本語文字で文字化けが起こる場合があります。
ウィンドウズ Meでのインターネットエクスプローラでは、sans-serif(ゴシック体)を指定すると文字化けする事があります。
このため、sans-serif(ゴシック体)を指定する場合は、その前に"MS Pゴシック"などのフォント名を指定しておきましょう。
フォントが適切に選択されない場合があります。
また、複数フォントを列記している場合、有効なラテン文字フォントが有効な日本語フォントより前に書かれていると、日本語文字もそのラテン文字フォントと同じ系統の日本語フォントが選択されてしまいます。
例えば、
font-family: "Arial", "MS ゴシック", "Osaka-等幅", monospace;
と指定した場合、すなわち、ウィンドウズに装備されているラテン文字フォントを指定すると、プロパティの指定を問わず"MS Pゴシック"を選択してしまいます。
この対策としては、日本語フォントを前に出す事ですが、そうするとラテン文字もその日本語フォントで表示出来てしまうため(日本語フォントには半角英数字も含まれているため)、ラテン文字の個別の指定が無効になってしまいます。