Браузеры интерпретируют / исполняют теги CSS, которые они считают пустыми? (т.е. IE взломает) - PullRequest
0 голосов
/ 02 декабря 2010

Мне любопытно, насколько эффективен этот пример CSS:

ul, a, span, p, li { *zoom:1; }

Пожалуйста, имейте в виду, что это чисто теоретический подход, поэтому преимущества или недостатки CSS-хаков не представляют большого интереса.

Мой вопрос - что делают браузеры, отличные от IE6 и 7:

  1. посмотреть, чтобы соответствовать всем селекторам на странице, а затем понять, что она пуста и не влияет на него? (ужасно неэффективно)
  2. Поймите, что он пуст и не действует на селекторы (довольно эффективно)
  3. Нет вышеперечисленного.

Любые идеи будут в значительной степени приняты.

Ура, Ad.

Ответы [ 2 ]

1 голос
/ 02 декабря 2010

Если браузер подчиняется спецификации , он просто игнорирует свойство *zoom:

Пользовательские агенты должны игнорировать объявление с неизвестным свойством.Например, если таблица стилей имеет вид:

h1 { color: red; rotation: 70minutes }

, пользовательский агент будет обрабатывать это так, как если бы таблица стилей была

h1 { color: red }

Что касается того, что произойдет, если такойбраузер находит пустой блок объявлений, я не знаю.Я не видел сценарий, упомянутый в спецификации, поэтому думаю, что это детали реализации, и он будет отличаться от браузера к браузеру.

1 голос
/ 02 декабря 2010

Я не знаю. :) Это может зависеть от браузера, хотя все они стремятся максимально оптимизировать скорость. Я предполагаю, что они подумают об этом.

Но так как вы никогда не можете быть уверены, я бы порекомендовал поместить взломы IE в отдельный файл CSS и использовать условные комментарии в HTML для условного включения этих файлов CSS.

Но при этом, я думаю, вы должны также предоставить этим файлам заголовок «Expires», который позволяет их кэшировать в течение более длительного периода времени (например, дня?). Если вы не предоставите эти заголовки, IE сделает недействительным кэшированный файл намного раньше, чем большинство других браузеров, что может вызвать больше запросов (для этих отдельных файлов CSS) на ваш сервер, когда посетитель просматривает несколько страниц вашего сайта. Обычно это не будет большой проблемой, но если вы говорите об оптимизации, как это, это может быть проблемой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...