Подтвердить что ты не робот

Есть ли способ заставить стиль к элементу div, который уже имеет атрибут style = ""

Я пытаюсь скрыть вывод HTML, на который у меня нет контроля. Один из элементов - div с атрибутом style="overflow: auto".
Есть ли способ в CSS, чтобы заставить div использовать overflow: hidden;?

4b9b3361

Ответ 1

Вы можете добавить !important в конец вашего стиля, например:

element {
    overflow: hidden !important;
}

Это то, на что вы не должны полагаться обычно, но в вашем случае это лучший вариант. Изменение значения в Javascript offys из наилучшей практики разделения разметки, представления и поведения (html/css/javascript).

Ответ 2

Вы пытались установить !important в файле CSS? Что-то вроде:

#mydiv { overflow: hidden !important; }

Ответ 3

Не уверен, что это будет работать или нет, не проверял его с помощью overflow.

overflow:hidden !important

может быть?

Ответ 4

Если div имеет встроенное объявление стиля, единственный способ изменить его без изменения источника - с помощью JavaScript. Inline style атрибуты "выигрывают" каждый раз в CSS.

Ответ 5

Magnar является правильным, как объясняется спецификацией W3C, вставленной ниже. Кажется, было добавлено ключевое слово! Important, позволяющее пользователям переопределять даже "запеченные" параметры стиля на уровне элемента. Поскольку вы находитесь в ситуации, когда у вас нет контроля над html, это может быть вашим лучшим вариантом, хотя это не будет нормальным шаблоном проектирования.

Спецификации CSS W3C

Выдержки:

6.4.2! важные правила     CSS пытается создать баланс сил между автором и пользовательским стилем листы. По умолчанию правила в таблица стилей автора переопределяют таблица стилей пользователя (см. правило каскада 3).

However, for balance, an "!important" declaration (the keywords

"!" и "важные" следуют объявление) имеет приоритет над нормальное объявление. И автор, и таблицы стилей пользователя могут содержать "важные" объявления и пользователь "важные" правила переопределяют автора "важные" правила. Эта функция CSS улучшает доступность документов посредством предоставление пользователям особых требований (большие шрифты, цветовые комбинации, и т.д.) контроль над представлением.

Note. This is a semantic change since CSS1. In CSS1, author

"важные" правила имели приоритет над пользовательскими "важными" правилами.

Declaring a shorthand property (e.g., 'background') to be

"! important" эквивалентно объявление всех его под-свойств быть "важным".

Example(s):

The first rule in the user style sheet in the following example

содержит объявление "! important", который перекрывает соответствующие декларация в стилях автора лист. Вторая декларация будет также выиграть из-за того, "!важный". Однако третье правило в листе пользовательского стиля нет "важно" и поэтому потеряет ко второму правилу в авторском таблицу стилей (которая устанавливается стиль по сокращенному имуществу). Также, третье правило автора проиграет второе авторское правило со второго правило "важно". Это показывает, что "Важные" декларации имеют функция также в стиле автора листы.

/* From the user style sheet */
P { text-indent: 1em ! important }
P { font-style: italic ! important }
P { font-size: 18pt }

/* From the author style sheet */
P { text-indent: 1.5em !important }
P { font: 12pt sans-serif !important }
P { font-size: 24pt }

Ответ 6

Насколько я знаю, стили на реальных элементах HTML переопределяют все, что вы можете сделать в отдельном стиле CSS.

Однако вы можете использовать Javascript для его отмены.