リンクは次のとおりです。
最初の CSS ルールは font-family を'Helvetica Neue', Helvetica, Arial, sans-serif;
次のように設定し、以下の CSS の他のすべてのフォント設定は単に「継承」と述べています。ただし、Chrome 21 では計算された font-family として「Times」を取得しており、Firefox では「serif」を取得しています。 '。私は何が欠けていますか?
ありがとう!
リンクは次のとおりです。
最初の CSS ルールは font-family を'Helvetica Neue', Helvetica, Arial, sans-serif;
次のように設定し、以下の CSS の他のすべてのフォント設定は単に「継承」と述べています。ただし、Chrome 21 では計算された font-family として「Times」を取得しており、Firefox では「serif」を取得しています。 '。私は何が欠けていますか?
ありがとう!
まず、次のものがあります。
body {
font-family : 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
クール、それでいい。しかし、次のようになります。
html, body, input, button, <snipped...> {
font: inherit;
}
そのfont
ため、ボディにも適用されるこのルールによって上書きされ、現在はinherit
.
では、継承は何をしますか?「親要素に割り当てられたスタイル プロパティを使用する」と表示されます。この場合、<body>
要素の親は、親<html>
を持たないものです。そのため、ルートには指定されたフォント ファミリがまったくないため、何も継承できません。
inherit
行わないのは、その要素に対して以前に定義された値を使用することです。適用される以前のスタイルではなく、親から継承します。inherit
CSS 構造ではなく、HTML 構造に関するものです。
最後に、すべての親を含む親からフォントを継承するようにユニバース全体を設定します。したがって、実際に設定されたフォントを持つ親を実際に見つけることは決してありません。代わりに、ブラウザはデフォルトのフォントを適用して、何かをレンダリングできるようにします。
body
巨大なリセット ルールの後にフォント ルールを移動すると、機能し始めるはずです。フォントは body タグまで継承され、現在は実際のフォントになっています。
ここ: http://jsfiddle.net/LDEt6/6/
セレクターの大きな塊では、body
asを再宣言しfont: inherit
ます。