* CSS-хак больше не работает в ie8? - PullRequest
1 голос
/ 25 марта 2010

Хорошо, поэтому я хочу, чтобы моя граница CSS применялась только к ie8 или более ранним версиям (как не к ie9, когда он выходит).

цель: чтобы отсутствующие тени были заменены рамкой:

хак, похоже, не работает? я тестирую в ie8 локально ...

input, textarea{
display:block;
border:none;
*border: 1px solid #000;
-moz-box-shadow: 0px 0px 1px 1px #999;
-webkit-box-shadow: 0px 0px 1px 1px #999;
box-shadow: 0px 0px 1px 1px #999;

-moz-border-radius: 2px;
-webkit-border-radius: 2px; 
margin: 1px 0px 10px 0px;
font-size:12px;
color:#494949;
}

Ответы [ 5 ]

12 голосов
/ 25 марта 2010

Не используйте CSS-хаки, используйте условные комментарии вместо таргетинга на версии IE.

5 голосов
/ 25 марта 2010

Добавление к Ответ Residuum , это код, который вам понадобится для ссылки на таблицу стилей "pre IE 9":

<!--[if lt IE 9]>
<link href="ie-pre-9.css" rel="stylesheet" type="text/css" />
<![endif]-->

Выражение в первой строке гласит, что разметка в комментарии должна оцениваться во всех версиях Internet Explorer с номером версии меньше (lt). 9. В браузерах, отличных от Microsoft, код будет обрабатываться как комментарий - т.е. он будет игнорироваться, и дополнительная таблица стилей не будет включена.

Если вы предпочитаете не создавать дополнительную таблицу стилей для своих исправлений Internet Explorer, вместо этого вы можете использовать условные комментарии, чтобы включить / выключить контейнер для всего содержимого вашей страницы, и использовать наличие этого контейнера для включения исправлений. / выкл. Пример:

<!--[if lt IE 9]><div class="ie"><![endif]-->
Page content here...
<!--[if lt IE 9]></div><![endif]-->

В вашем основном CSS-файле теперь вы можете поставить перед любым селектором префикс .ie, чтобы он предназначался только для Internet Explorer с номерами версий менее 9:

a { color: red; }
.ie a { color: blue; }
3 голосов
/ 25 марта 2010

Добавить

<!--[if lt IE 9]>
        <link href="/directroy/IE.css" rel="Stylesheet" type="text/css"/>
<![endif]--> 

Для вашего тега head и используйте эту новую таблицу стилей, чтобы определить, что вы хотите сделать в IE.

Они называются условными комментариями, и IE использует их для различения браузеров:)

1 голос
/ 26 марта 2010

Вы действительно должны просто добавить условную таблицу стилей вместо добавления хаков. Вы будете благодарить себя позже.

1 голос
/ 25 марта 2010

есть такой хак, который я искал, просто добавьте его в конец инструкции css перед;

\ 9

целей, т. Е. <= 8 </p>

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