Как я могу переопределить встроенный стиль с помощью внешнего CSS?

Я пытаюсь изменить стиль таблицы, созданной элементом управления asp.net gridview. У меня проблема в том, что gridview генерирует встроенные стили. Как заставить браузер отображать мой CSS, а не атрибут стиля html?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
6
0
6 305
9
Перейти к ответу Данный вопрос помечен как решенный

Ответы 9

Я думаю, вам нужно переопределить стиль с помощью JavaScript. jQuery сделает это очень просто.

Вы можете попробовать добавить "! Important" к своим определениям стилей css в соответствии с эта статья или следуя предыдущему предложению Райана Лансиа.

Вы используете темы? Темы создают встроенные стили. Чтобы избавиться от них, вы можете отключить темы для gridview:

<asp:GridView EnableTheming = "false" ... />
Ответ принят как подходящий

Вы можете попробовать !важный в своем файле CSS.

IE7 правильно поддерживает! Important. IE6 будет поддерживать! Important до тех пор, пока это свойство не будет объявлено снова в том же блоке объявления.

DavGarcia 22.08.2010 09:21

Вы можете использовать! Important; но это работает не во всех браузерах.

Вот статья об использовании! important.

К сожалению, встроенный CSS всегда является последним стилем, применяемым к элементу, поэтому встроенные стили всегда переопределяют внешние стили.

Если стили, сгенерированные Gridview, вам подходят, обратите внимание на адаптеры управления CSS для ASP.NET (http://www.asp.net/CssAdapters/). Это отличный проект.

неправда,! important имеет более высокую специфичность, чем что-либо другое

annakata 21.01.2009 18:55

Вы можете взглянуть на это: http://justgeeks.blogspot.com/2008/09/override-any-css-style-even-inline.html. Используйте модификатор! Important, чтобы это произошло

В соответствии со спецификацией CSS, селекторы элементов имеют специфичность 1, селекторы классов имеют специфичность 10, селекторы ID имеют специфичность 100, а специфичность встроенных стилей - 1000. Более высокая специфичность перекрывает более низкую специфичность, поэтому встроенные стили всегда побеждают. Однако выход есть. Объявление !важный отменяет все несущественные объявления. Независимо от источника стиля, он проиграет чему-либо с объявлением !важный.

Источник: CSS Web Design Эрика А. Мейера.

В спецификации CSS ничего не говорится о разных селекторах, имеющих разное значение. Он просто выполняет КОЛИЧЕСТВО различных типов селекторов и сортирует их по каждому типу от наиболее до наименее важных. Если встроенные стили имеют значение 1000, а идентификаторы имеют значение 100, то объявление, включающее 11 идентификаторов, будет иметь приоритет, однако это не так. Никакое количество идентификаторов или классов не превзойдет встроенный стиль. ! important - единственный способ переопределить встроенный стиль с помощью CSS. Источник: w3.org/TR/CSS2/cascade.html#specificity

smdrager 06.05.2012 19:17

Встроенный стиль имеет приоритет над внешними стилями. Его нельзя переопределить, если вы не используете !Важный.

Другие вопросы по теме