最近、font-face 宣言が機能しないという問題がありました。何らかの理由で、カスタム フォントがデフォルトで arial になっていました。調べてみると font-face 宣言の前に無効な文字が迷子になっていることが判明
このような:
v
@font-face {
font-family: 'Somefont';
src: url('somefont.eot?') format('eot'),
url('somefont.woff') format('woff'),
url('somefont.ttf') format('truetype');
}
したがって、この例では、'v' によって font-face 宣言が機能しなくなりますが、これは理にかなっています。これ以降のすべてのスタイル宣言は、ご想像のとおり、正しく機能します。
私の質問は、次のように、無効な文字とスタイル宣言の間に有効なコメントがあったという事実に関連しています。
v
/*
* FONTS
* ------------------------------------
*/
@font-face {
font-family: 'Somefont';
src: url('somefont.eot?') format('eot'),
url('somefont.woff') format('woff'),
url('somefont.ttf') format('truetype');
}
だからここに私が少し立ち往生しているものがあります:
無効な「v」文字が何もしないこと、およびコメント(正しくフォーマットされている)がCSSの無効性をリセットし、最初のフォントフェイスが最初のように通常どおりに機能することを期待していたでしょう最初の font-face 宣言が「ヒット」し、残りの css が通常どおり機能するようにした例。
そのまっすぐなCSSなので、プリプロセッサの関与はありません。
私よりもCSSの知識が豊富な人は、それを説明したいと思いますか?
NBスタイル宣言で無効な文字をリセット/オフセットできる理由についての技術的な説明を探していますが、CSSエラー/バグを回避する方法ではなく、コメントではありません