2013-12-12 3 views
2

Я играл вокруг с этим CSS в браузере IE9:IE 7 запасной вариант в CSS

className{border: red solid 1px; *border: black solid 1px;} 

В IE 8,9 границе показан красным цветом. Когда я включаю режим совместимости IE 7, я вижу черную границу .

Похоже, что синтаксис *border является резервным только для IE.

Кто-нибудь знает об этой звезде (*) Правило CSS & что он делает? Насколько хорошо он работает для каких браузеров?

+1

Здесь вы найдете: http://stackoverflow.com/questions/1690642/purpose-of-asterisk- before-a-css-property – kddeisz

ответ

2

Это неверный CSS, который не анализируется в большинстве (хороших) браузерах. Более старый IE, однако, анализирует его как действительный CSS и применяет правило. Использование подчеркивания работает одинаково.

Смотрите здесь для further information, or here

Это отличается от использования звездочки как universal selector in CSS

+0

Есть ли официальный документ с информацией об этом? – PoeHaH

+0

Не уверен в официальной документации, я никогда не мог найти что-либо от MS – SW4

+0

большое вам спасибо! – PoeHaH

0
*+html SELECTOR {} 

цели только IE7 и сохраняет CSS силу. Это должно быть предпочтительным.

+0

Условные таблицы стилей лучше, чем hacky css ;-) –

+0

зависит от ситуации ... условные комментарии всегда приводят к дополнительным файлам. Это означает, что у вас есть дополнительный запрос на сервер. Если у вас есть одно условие в вашем css, которое нуждается в резервном копировании, я всегда буду искать * + html. Если у вас много материала, то да, используйте дополнительный файл :) –

0

Единственный раз, когда я использую звезду для исправления встроенного блока для ie7, звезда просто позволяет вам нацелить ie6 (из я помню), а также ie7. Вы также можете использовать восклицательный знак для цели ie7, если вы чувствуете себя ленивым (! Border: 1px solid # 000)

Смежные вопросы