Хорошо, это грубое упрощение, но у меня есть приложение javascript, чтобы помочь людям разрабатывать веб-страницы. Он имеет интерфейс, наложенный на страницу, которая разрабатывается, и все работает отлично, кроме одной вещи.Nullify css rules
Если класс div, используемый в интерфейсе, используется веб-страницей, которая разрабатывается, встроенная таблица стилей интерфейса переопределяет свойства веб-страницы!
Это происходит на jsfiddle, встроенный css имеет приоритет над внешним css.
внешний CSS:
.color {
color: green;
}
Index.html:
<style>
.color {
color: blue;
}
</style>
<div class="color"> Text to be coloured </div>
При запуске, текст синего цвета. Если кто-то может сделать текст зеленым, я думаю, что он продемонстрирует, как преодолеть проблему.
Очевидно, что один из способов исправить это было бы изменить классы интерфейса и правила к чему-то вроде этого:
<style>
.color_interface {
color: blue;
}
</style>
<div class="color_interface"> Text to be coloured </div>
И делают их уникальными, но проект имеет сотни правил CSS, и я просто интересно, есть ли лучший способ и более безопасный способ (есть еще небольшой шанс, что у кого-то есть правило «color_interface»), чтобы сделать nullify css-правила, чтобы они не загрязняли страницу.
Я думаю, что единственный способ сделать это - это, вероятно, таблица стилей «сброс», касающаяся моих правил, и все они вернутся к значениям по умолчанию. Может, есть способ сделать это динамически с помощью jquery?
Знаете ли вы, что внутренний CSS-код JSFiddle очень не прав? – SmokeyPHP
Прошу прощения, исправлено – Starkers
Пока нет - но браузеры в конечном итоге будут реализовывать ['all'] (http: //www.w3.org/TR/2013/WD-css-cascade-3-20130730/# all-shorthand) свойство, которое делает именно то, что вы хотите – Adrift