#css
#css
Вопрос:
У меня есть большой файл CSS, который я хотел бы добавить !important
к каждому свойству CSS. Существует ли однострочный ярлык для создания целого файла .css !important
?
Комментарии:
1. Действительно ли это основная проблема? У меня есть подозрение, что вы, возможно, стали жертвой проблемы XY . Если я ошибаюсь, пожалуйста, поправьте меня 🙂
Ответ №1:
Если ваша цель — переопределить стили путем импорта другой таблицы стилей, вы должны использовать порядок приоритета.
<head>
<title>Title</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<link href="style-override.css" rel="stylesheet" type="text/css" />
</head>
Здесь style.css
это оригинал и style-override.css
будет содержать ваш новый пользовательский css. Эти стили переопределят стили из style.css
. Это означает, что вам не нужно будет использовать !important
, потому что стиль перезаписывается.
В качестве альтернативы вы можете добавить сброс CSS, чтобы удалить все стили и построить поверх этого.
<head>
<title>Title</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<link href="reset.css" rel="stylesheet" type="text/css" />
<link href="style-override.css" rel="stylesheet" type="text/css" />
</head>
Проверьте сброс CSS на http://meyerweb.com/eric/tools/css/reset / и добавьте его в reset.css.
Ответ №2:
Нет. Кроме того, не злоупотребляйте !important
: это должно быть последнее средство. Эффект применения !important
ко всем объявлениям CSS эквивалентен отсутствию !important
добавления к каждому объявлению.
Используйте более конкретные селекторы ( #id
) вместо добавления !important
, если вы хотите, чтобы определенное свойство имело приоритет.
Ответ №3:
Нет. Использование !important должно быть только в определенных случаях, не допускающих других способов. Он не предназначен для применения ко всему документу таблицы стилей.
Если вы думаете о перезаписи такого количества правил, почему бы просто не включить правила, которые вы хотите перезаписать?
Ответ №4:
Разве невозможно переместить ссылку на файл CSS, чтобы она была последней, на которую ссылаются, и, следовательно, имела приоритет над всеми другими файлами CSS над ней?