Как сделать файл CSS более важным, чем другой файл CSS? - программирование
Подтвердить что ты не робот

Как сделать файл CSS более важным, чем другой файл CSS?

Я хочу, чтобы все классы, теги и идентификаторы в css.css перезаписывались поверх bootstrap.min.css без повторения классов, тегов и идентификаторов bootstrap.min.css.

<link href="css/bootstrap.min.css" rel="stylesheet">
<link href="css/css.css" rel="stylesheet">
4b9b3361

Ответ 1

Нет такой магии. CSS имеет свои собственные принципы, такие как каскад, и вы не можете отключить их.

Вы можете поместить ссылку на css.css после ссылки на bootstrap.min.css, но это всего лишь один из факторов в процессе разрешения правил CSS. Добавление !important, которое обычно является симптомом неправильного дизайна, является еще одним фактором: правило !important в более раннем файле может переопределить ваше правило !important, если его селектор имеет более высокую специфичность.

Чтобы переопределить правила CSS, вам необходимо проанализировать правило, которое вы хотите переопределить, и настроить правило, которое "выигрывает", по принципам каскада.

Ответ 2

Простой, включите более важный файл CSS.

Ответ 3

Когда вы включаете таблицу стилей, она перезаписывает все объявления ранее включенных таблиц стилей. Если вы измените свой выбор на:

<link href="css/css.css" rel="stylesheet">
<link href="css/bootstrap.min.css" rel="stylesheet">

Bootstrap позже будет включен и перезапишет свойства css.css.

Надеюсь, что это поможет.

Ответ 4

Я могу привести только пример.

Предположим, что Bootstrap.css имеет следующее .rules #world {border:0px;} [специфика 110]

и css.css имеет следующее div #world{border:20px;} [специфичность 101]

В этом случае bootstrap.css всегда будет переопределять css.css. Итак, я советую вам добавить контейнер ко всему вашему контенту - дайте этому контейнеру id..let say "god", а затем добавьте префикс .god ко всем вашим стилям в css - но опять же, это не так просто, и многое зависит от того, как вы правильно оцениваете свои вычисления.

#god div #world{border:20px;}

Это длинная тема, как указывал кто-то другой, поэтому вам придется в основном знать, что делает все загрузочное устройство на вашей странице, и что делает css.css.

Вы всегда можете найти эту замечательную статью, которая никогда не стареет http://coding.smashingmagazine.com/2007/07/27/css-specificity-things-you-should-know/

Ответ 5

Я думаю, вы могли бы сделать одну вещь: включить только css.css и @import "css/bootstrap.min.css" в css.css, чтобы ваш код был таким

Внутри html

<link href="css/css.css" rel="stylesheet">

и Внутри css.css

@import "css/bootstrap.min.css"

.bootstrap_class{//your style..}
.hero-unit{background: red;}

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

Ответ 6

если вы не можете изменить файлы, а порядок вызова файла css не работает, вы всегда можете использовать! important, но это будет много времени, потому что вам нужно добавить его на каждую строку css.

ex: display: inline! important;

Ответ 7

Обратитесь к последнему элементу в списке, который всегда будет переопределять предыдущие таблицы стилей

Ниже будет заставлять вашу страницу соответствовать 980px, поскольку она отменяет предыдущее свойство таблицы стилей

Пример

Style1.css

 #main{ width:1000px;}

Style2.css

 #main{ width:980px;} 
      or  
 #main{ width:980px !important;} /* if needed only */

HTML

<link href="style1.css" rel="stylesheet" type="text/css" />
<link href="style2.css" rel="stylesheet" type="text/css" />

<div id="main"></div>

Ответ 8

Если вы работаете с bootstrap, эта статья может быть полезна:

fooobar.com/info/375115/...