Может ли весь css ".class" иметь эту спецификацию как важно? - программирование
Подтвердить что ты не робот

Может ли весь css ".class" иметь эту спецификацию как важно?

Я сильно работаю в виджетах jQuery UI, и темам становится трудно из-за надзора, что мне нужно работать.

Рассмотрим эту проблему:

<div id="node" class="ui-widget">
    <div class="ui-widget-content">
    </div>
</div>

то этот jquery

<script>
 $(function() { 
       $('#node').hover(function (){
           $(this).toggleClass("ui-state-error");
       });
 }); 
</script>

Я хотел бы, чтобы ошибка ui-state была важна для вложенного div. Это псевдокод, но я нахожу большие примеры этого, когда контейнеры имеют css swaps и дети (в основном) игнорируют его. Что еще хуже, так это: если я хочу, чтобы иметь возможность перезаписывать в jQuery, скажите "backgroundcolor = ui-state-error: background-color, зная 100%, все это не разобьется, потому что я не знаю", обязательно, что этот фон является важным для рассматриваемого элемента.

вот сценарий случая http://jsfiddle.net/WCuYH/1/

РЕДАКТИРОВАТЬ Я собираюсь рекомендовать этот вопрос закрыт, потому что не было никаких попыток ответов, только слишком много дрейфа от сути исходного сообщения

4b9b3361

Ответ 1

Сначала !important применяется к одному конкретному объявлению в правиле CSS. Это не относится к классу. Итак, "нет" вы не можете создать класс !important.

Второе, !important - это только одна часть CSS-специфики. Вы также можете использовать другие способы сделать правило более конкретным правилом, чтобы иметь приоритет (например, ссылаться на идентификатор в родительской цепочке, а не только на класс. Когда я пишу CSS, использование! Important - мой последний возможный выбор - Я бы скорее решил переопределить другие решения. Обычно, если вы контролируете все CSS, довольно легко избежать использования !important. Если вам нужно переопределить некоторый CSS, который вы не контролируете, то иногда это удобно.

Если ваш jQuery-код будет переключать класс на объект, тогда вам придется создавать свои правила CSS, чтобы добавление/удаление этого класса приводило к тому, что правильные объявления CSS имеют приоритет. Чтобы мы могли помочь вам в дальнейшем, вам нужно будет показать нам соответствующие части вашего HTML и CSS, чтобы мы могли посоветовать, как решить вашу проблему с приоритетом/спецификой.