5

したがって、次のようなコードがある場合:

background: url('image.png');
background: -webkit-gradient(linear, left top, left bottom, from(#ccc), to(#000));

Webkit の場合、ブラウザーはグラデーションを使用しますが、そうでない場合はフォールバックして画像を使用します。Webkit を使用している場合、画像はダウンロードされません。あなたが持っていた場合:

background: url('image1.png');
background: url('image2.png');

「image1」はまったくダウンロードされますか、それとも「フォールバック」イメージと同じルールが適用されますか?

4

2 に答える 2

2

同じルールが適用されます-何が起こっているのか(大雑把に)、webkitは2番目のルールを読み取り、最初のルールを置き換えてそれを認識し、その後、使用時に実際に何かを実行しますが、それまでは単なる値です。Webkit以外のブラウザーの場合、2番目のルールはゴミのように見えるため、スキップして最初のルールをそのまま残します。これが、フォールバックとして効果的に機能する理由です(フォールフォワードの方が正しい場合でも)。

これはすべてのブラウザで同じではありません。ただし、すべてが1つのルールのみを適用します。IIRCIE6<は最初のルールを使用し、その「機能」の周りにいくつかの古い学校のハックがありました。

于 2010-11-03T15:24:48.293 に答える
2

Chrome (v9.x でテスト済み) は、2 番目のイメージのみをダウンロードします。このサンプル ページの開発者ツールを参照してください

于 2010-11-03T15:23:31.097 に答える