最近、フォントサイズの単位として rem を使用する場合、どのフォールバックが最適か疑問に思っていました。ピクセルが適切と思われますが、特定のメディア クエリでグローバル フォント サイズを変更する場合は、すべてのピクセル ベースのフォント サイズを再定義する必要があります。
以下に例を示します。古いブラウザのフォールバックがなければ、使用できます
/* Mobile Styles */
html { font-size: 1rem; }
h1 { font-size: 2rem; }
/* Specific desktop styles */
@media only screen and (min-width: 992px) {
html { font-size: 1.25rem; }
}
デスクトップでは、すべてのフォントが 1.25 倍に拡大されます。ここまでは順調ですね。
しかし、IE8 に rem の代替手段を提供する必要があるため、次のような何らかのフォールバックを使用する必要があります。
/* Mobile Styles */
html { font-size: 16px; font-size: 1rem; }
h1 { font-size: 32px; font-size: 2rem; }
/* Specific desktop styles */
@media only screen and (min-width: 992px) {
html { font-size: 20px; font-size: 1.25rem; }
h1 { font-size: 40px; font-size: 2rem; }
}
欠点: そうすることで、デスクトップのメディアクエリですべての font-size 宣言を再定義する必要があります。別の方法として、em をフォールバックとして使用することもできますが、フォント サイズが大きくなります。
これに関するあなたの提案を聞いてわくわくします。