Как избежать удаления AjaxMin для IE9 и ниже CSS взломать - PullRequest
0 голосов
/ 02 сентября 2011

Я использую следующий CSS:

.GridDraggedRow tr td.firstCol{
padding: 2px 10px 0 0;
text-align: right;
vertical-align: top;
width: 1px;
width: 1%\9; /* IE9 and below */
white-space: nowrap;
}

Как вы видите, я использую довольно уродливый хак CSS. Моя проблема в том, что этот хак удален из минимизированного css-файла, который я генерирую с AjaxMin . Это этап после сборки в нашей системе доставки, поэтому мы будем придерживаться AjaxMin. Документация ajaxmin объясняет, что допускается несколько хаков на основе комментариев с использованием флага 'hacks', например:

ajaxmin -css -комментарии: взламывает GridLayout.css

К сожалению, взлом \ 9 не разрешен. Что я могу сделать ? По моему мнению, синтаксический анализ сгенерированного файла не очень хорошая идея.

Полагаю, мой лучший выбор - вставить этот хак в другой не минимизированный файл или непосредственно в html-страницу между тегами ... Ребята, у вас есть идея получше? Было бы здорово, чтобы ajaxmin предоставил раздел об исключении ...

1 Ответ

0 голосов
/ 02 сентября 2011

Вы не должны использовать ни одного из этих уродливых хаков !!

Вместо этого используйте Метод условных комментариев Пола Айриша .

Используйте это при открытии вашего HTML-тега:

<!--[if lt IE 10 ]>    <html class="lt-ie10"> <![endif]-->
<!--[if (gt IE 9)|!(IE)]><!--> <html> <!--<![endif]-->

Затем в вашем CSS используйте это:

.GridDraggedRow tr td.firstCol{
    padding: 2px 10px 0 0;
    text-align: right;
    vertical-align: top;
    width: 1px;
    white-space: nowrap;
}
.lt-ie9 .GridDraggedRow tr td.firstCol{
    width: 1%;
}

Это намного чище и надежнее.

...