Так что я думаю, несколько вещей, чтобы рассмотреть здесь. Надлежащий способ справиться с этим - просто иметь более высокую специфику CSS, чем та, которую предоставляет начальная загрузка. Основная проблема, которая делает это странным, заключается в том, что вы действительно не хотите создавать стили непосредственно для элементов, если можете помочь. Bootstrap 4 решает эту проблему, когда они переносят большинство своих стилей в классы, т.е. .nav-item
, так что вы можете поставить больше классов поверх.
Я бы настоятельно рекомендовал не использовать !important
. Не то, чтобы это было «неправильно» - бывают случаи, когда библиотеки имеют очень высокие стили специфичности (например), и иногда имеет смысл заставлять их знать, что они предпочитают ваши стили, но если есть другие средства (которые, кажется, существуют), предпочтительнее делать это вместо этого.
Глядя на некоторые из старых примеров из Bootstrap 3 , похоже, что их примеры пытаются переопределить определенные стили, используя дочерний комбинатор (>
), то есть .nav > li > a
, чтобы переопределить стили.
Также стоит посмотреть, предоставил ли Bootstrap 3 способ импорта определенных стилей? Если есть способ, который вы можете импортировать только те стили, которые вам нужны, через Sass / LESS версию Bootstrap, это также может быть вариантом.