Добавить классы CSS для браузеров IE :JavaScript или условные комментарии?

Моя цель — удалить условные комментарии IE из моих документов» <head>, но я признаю, что мне все еще нужно использовать таблицы стилей, специфичные для ie6,7,8 -(поправьте меня, если я ошибаюсь ).

Например, эти условия IE используются HTML5Boilerplate 3.0:

<!-- paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/ -->
<!--[if lt IE 7]><html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="en"><![endif]-->
<!--[if IE 7]>   <html class="no-js lt-ie9 lt-ie8" lang="en"> <![endif]-->
<!--[if IE 8]>   <html class="no-js lt-ie9" lang="en"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]-->

Поэтому вместо этого я думаю, что я хотел бы использовать JavaScript для добавления классов в мой тег html, что приведет к этому(как показано здесь):

<html lang="en" class="ie6 ie7 ie8">

Итак, мой вопрос:Каковы недостатки (последствия )использования JavaScript для добавления классов CSS в html-элемент моих документов по сравнению с использованием условных комментариев IE?

Один эффект, о котором я могу думать прямо сейчас:

  1. В клиенте IE может быть отключен JavaScript. Для меня это не проблема; клиенты, посещающие мой сайт, должны иметь включенный JS.

РЕДАКТИРОВАТЬ:Я собираюсь пойти дальше и признать, что самый надежный способ добавить эти классы — (к сожалению )использовать условные комментарии IE. Всем спасибо за диалог.

0
задан Jeff 28 June 2012 в 21:08
поделиться