Internet Explorer 10 больше не пытается читать условные комментарии. Это означает, что он будет обрабатывать условные комментарии так же, как и любой другой браузер: как обычные комментарии HTML, то есть полностью игнорируется.Рассматривая разметку, приведенную в вопросе в качестве примера, все браузеры, включая IE10, будут полностью игнорировать части комментариев, выделенные серым цветом.Стандарт HTML5 не упоминает синтаксис условных комментариев, и именно поэтому они решили прекратить поддерживать его в IE10.
Обратите внимание, однако, что условная компиляция в JScript по-прежнему поддерживается, как показано в комментариях, а также более свежие ответы.Это не уйдет и в финальной версии, в отличие от jQuery.browser
.И, конечно, само собой разумеется, что сниффинг пользовательского агента остается таким же хрупким, как и всегда, и никогда не должен использоваться ни при каких обстоятельствах.
Если вам действительно нужно ориентироваться на IE10, либо используйте условную компиляцию, которая все еще может увидеть поддержку вближайшее будущее или - если вы можете помочь - использовать библиотеку обнаружения функций, такую как Modernizr вместо (или в сочетании с) обнаружения в браузере.Если ваш вариант использования не требует использования noscript или размещения IE10 на стороне сервера, прослушивание пользовательского агента будет скорее головной болью, чем жизнеспособным вариантом.
Звучит довольно громоздко, но помните, что для современного браузера это оченьв соответствии с сегодняшними веб-стандартами 1 , если вы написали совместимый код, который в высшей степени соответствует стандартам, вам не нужно откладывать специальный код для IE10, если это не является абсолютно необходимым, т.е.он должен напоминать другие браузеры с точки зрения поведения и рендеринга. 2 И это звучит неправдоподобно, учитывая историю IE, но сколько раз вы ожидали, что Firefox или Chrome будут вести себя одинаково только для удовлетворенияс тревогой?
- Firefox не поддерживал
box-sizing
без префикса в течение многих лет - У Firefox исторически было странное поведение схемы , и этоТак было и в течение многих лет
- Firefox отказывается вести себя разумно, когда дело доходит до позиционной вкладкиle-cell , ссылаясь на неопределенное поведение в качестве оправдания, в то время как другие браузеры, кажется, справляются очень хорошо
- Safari и Chrome имеют лотов из проблем с определенными CSS селекторами , иногда с исправлениями, которые действительно возвращают вас в старые добрые временаIE5, IE6 и IE7
- Похоже, что в Chrome много проблем в отделе перекрашивания в целом, например, неправильная перекомпоновка макетов при обновлении стилей мультимедиа;кажется, что половину ошибок в Chrome можно обойти просто и только путем принудительного перекрашивания, опять-таки вещи уровня IE5 / 6/7
- Известно, что несколько разновидностей WebKit явно лежат о поддержке определенных функций, то есть они на самом деле механизмы обнаружения поражений , из всех вещей
Если у вас do есть законная причина для нацеливания на определенныебраузеры, во что бы то ни стало вынюхивают их с помощью других инструментов, предоставленных вам.Я просто говорю, что вам будет гораздо труднее найти такую причину сегодня, чем она была раньше, и на самом деле это просто не то, на что вы можете положиться.
1 Не только IE10, но и IE9, и даже IE8, который обрабатывает большую часть зрелого стандарта CSS2.1 намного лучше, чем Chrome, просто потому, что IE8 был настолько ориентирован на соответствие стандартам (в то время CSS2.1 уже был довольно стабильным, с незначительными отличиями от сегодняшних рекомендаций), в то время как Chrome, похоже, представляет собой чуть более чем полутехническую техническую демонстрацию передовых псевдостандартов.
2 И я могу быть предвзятым, когда говорю это, но это точно так же, как и черт. Если ваш код работает в других браузерах, но не в IE, вероятность того, что это проблема с вашим собственным кодом , а не IE10, намного лучше, чем, скажем, 3 года назад, с предыдущими версиями IE. Опять же, я могу быть предвзятым, но давайте будем честными: не так ли? Просто посмотрите на ваши комментарии.