Что делает этот CSS?

input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select{*font-size:100%;}

Это из CSS сброса YUI. Что делает *, прежде чем % шрифта-size:100 сделает?

5
задан Knu 19 March 2015 в 10:42
поделиться

4 ответа

Это хак IE. Вторая строка правильно разбирается и выполняется только в IE 7 и ниже. Смотрите http://www.webdevout.net/css-hacks#unrecommended-asterisk_prefix для получения дополнительной информации.

Редактировать: Одно замечание по поводу использования такого (недействительного!) CSS: please don't. Существует множество способов очистки вашего CSS от такого беспорядка. Вы никогда не узнаете, какое поведение может принести IE9. Лучше поместить подобные хаки в отдельный CSS-файл, который затем можно включить через условные комментарии.

12
ответ дан 18 December 2019 в 13:11
поделиться

Я думаю, что это уловка, заставляющая применять это определение только к IE 7 или ниже, игнорируя его другим браузером, поскольку звездочка не является допустимым символом перед именем атрибута.

0
ответ дан 18 December 2019 в 13:11
поделиться

Точнее: IE6 / 7 не поддерживает font-size: inherit . Этот хак в любом случае должен достичь цели.

2
ответ дан 18 December 2019 в 13:11
поделиться

Как уже говорилось, это взлом для определенных браузеров. . Предложение Марка совершенно правильное, и вот ссылка, чтобы дать вам толчок:

http://www.webdevout.net/css-hacks

0
ответ дан 18 December 2019 в 13:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: