С помощью чего переопределить inline-style

Ответ

Для переопределения inline-стилей (style="") можно использовать:

  1. !important — но это считается плохой практикой:
.my-class {
  color: red !important;
}
  1. JavaScript — напрямую изменя element.style:
element.style.color = 'blue';
  1. Более специфичные селекторы (если возможно):
div[style] {
  color: green !important;
}

Лучший подход — избегать inline-стилей, но если нужно переопределить, !important или JS — основные варианты.

Ответ 18+ 🔞

О, смотри-ка, какая тема подъехала! Про эти ваши инлайн-стили, которые как прилипалы — впились в тег и нихуя их оттуда не выковыряешь обычным CSS. Ну, бывает, достали эти style="", аж терпения ебать ноль.

Так вот, способов их перебить есть несколько, но все они — как танцы с бубном вокруг костра из говна. Смотри сюда:

  1. !important — тупой, но мощный кувалдомет. Работает, но все нормальные верстальщики на тебя косо смотреть будут, как на полупидора. Это ж как гвоздь микроскопом забивать.

    .my-class {
      color: red !important; /* Ну вот, продал душу дьяволу. Теперь красный, даже если в инлайне стоит синий. */
    }
  2. JavaScript — хитрая жопа. Берёшь этот элемент за шкирку и говоришь: «Слушай сюда, сука, теперь ты синий!» Прямо в лоб.

    element.style.color = 'blue'; // Всё, приехали. Инлайн? Какой инлайн? Теперь тут я командуй.
  3. Более специфичные селекторы — для самых хитрых. Если повезёт и можно навесить какой-нибудь дикий селектор вроде div[style], то иногда прокатит. Но это как пытаться выиграть в лотерею, чтобы купить хлеба.

    div[style] {
      color: green !important; /* Опять эта дура !important, без неё тут нихуя. */
    }

А самый лучший, ядрёна вошь, подход — это изначально не создавать себе эту проблему. Избегай инлайн-стилей, как кот сука собака избегает ванны. Но уж если приперло и надо переопределить — выбирай между кувалдой (!important) и манипулятором (JS). Всё просто, как хуй с горы.