Значение свойства CSS, которое сообщает браузеру, что значение свойства не должно быть изменено

#css

#css

Вопрос:

Есть ли такая вещь?

Нравится

 .el{
  background-image: don_change;
}
  

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

Если значение является допустимым свойством типа url(image.jpg) , то оно должно быть применено

Комментарии:

1. Боюсь, что нет. Если вы сообщите нам, что вы пытаетесь сделать, мы могли бы найти для вас альтернативное решение (например, каковы условия?).

2. Да, я не слишком понимаю, что означает «Если значение является допустимым свойством»… почему вы назначаете недопустимые свойства? Зачем вам назначать другой фон, если вы не хотите переопределять оригинал?

Ответ №1:

don_change является допустимым значением в этом случае. Почему? Потому что это недопустимое значение.

Если вам нужно указать имя свойства, но вы не хотите, чтобы оно влияло на текущие стили, укажите недопустимое значение. Недопустимые значения всегда будут игнорироваться браузером.

Если вы хотите отключить весь селектор, добавьте недопустимый псевдоселектор в набор селекторов. Недопустимый псевдоселектор приводит к игнорированию всего набора правил (пример: :blabla, body{...} ).

Если вы хотите, чтобы стиль сохранялся, без возможности изменения встроенным стилем или другими таблицами стилей, исправьте свое объявление на !important .

Однако, если вы хотите «сбросить» стиль, необходимо указать значение по умолчанию (допустимое). Чтобы узнать значение по умолчанию для свойства, загляните в сеть разработчиков Mozilla. Простой способ быстро найти нужную страницу — использовать Google, используя <keywords> mdn , например. background-image css mdn .

Комментарии:

1. Имеет смысл: если значение недопустимо, ничего не произойдет; но это явно признак какой-то другой проблемы.

2. @WesleyMurch Я попытался охватить как можно больше темы. OP, вероятно, ищет ответ в пункте 4 или 2.

3. Да, я думал, что понял просьбу ОП, но теперь я не так уверен. 1 для широкого охвата 🙂

Ответ №2:

Я думаю, что это должно сработать, используя !важное правило:http://www.w3.org/TR/CSS2/cascade.html#important-rules

Ответ №3:

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

 .el{
    background-image: url(yourimage.jpg) !important;
}
  

Чем более конкретный селектор вы используете, тем больший приоритет будет иметь стиль, на всякий случай, если вы использовали довольно конкретный селектор в своем переопределении:

 #my_content div.el {
    background-image: url(yourimage.jpg) !important;
}
  

Однако использование !important — это не то, что вы хотите начать делать по привычке. Вы должны быть в состоянии найти способ обойти необходимость в этом.