Обновить
11
Сергей Фомин@fominua

Разработчик

5
Подписчики
Отправить сообщение
Да, может запутано. Но там не 10 > 50, а 10010 > 00050 имелось в виду.
а статья разве не об этом?
Да, в случае с плагинами и расширениями это оправданная мера. Не стопроцентная безопасность, но хоть что-то.
Ну если даже не говорить уже о том, что просто, на то, чтобы поменять один цвет в CSS будет написано 4 строки JS, то плохо как минимум то, что мы вмешиваемся в DOM и с точки зрения производительности это значительно хуже, чем просто перезапись стилей, даже инлайном.

Так это уже совсем другая ситуация. Даже если ты подключил весь бутстрап, но не используешь те компоненты в которых импортанты, то тебе не придётся их переопределять)

Да, я это и имел в виду, когда описывал то как использует это бутстрап. Но именно по-этому я называл это «защитой от дурака», так как чисто по такому же совпадению разработчик может почему-то написать: .dropdown-menu.show { display: bock !important;}

И будет всё равно печаль.

Так, что этот способ существует, но сказать что он хороший или надежный — я бы не сказал.
Просто я не до конца понимаю зачем тут нужны импортанты в принципе. Лучший вариант не перезаписывать импортанты это не писать их вообще)
Есть такое заблуждение, когда это начинают считать «тысячей».
На деле это ж скорее 1.0.0.0.0.

Где каждая цифра это:
!important | inline | id | class | tag

Участие в этой схеме инлайновых стилей тоже спорная история, но если они учитываются в расчете веса, то так будет вполне разумно считать
Да, но я считаю, что его уместно учитывать в расчете веса селектора таким образом. Так как его приоритет может комбинироваться с обычным приоритетом селекторов по id, class, tag. Выглядит вполне уместно.
Да это отличный пример, спасибо! Как мы можем называться верстальщиками если не используем таких хаков :)
Если я бы писал плагин, который помогает такой версии страницы стать лучше, или аналогичное расширение, то с большой вероятностью использовал бы там important. Но если это просто моя вёрстка, то в принципе, могу вполне обойтись весом селектора. По крайней мере вспоминая все такие случаи, не помню исключений.
Ну опять же, то, что стили в файле записаны раньше, это еще не значит, что нам нужен импортант. У нас для этого есть вес селектора и он с этим справляется. Это как раз тот случай, в котором я бы точно не советовал использовать !important
Ну это ж тоже может породить потом important поверх important'ов. Типа: мы скрываем на маленьком размере экрана какой-то блок, а потом решаем что на всех маленьких экранах он должен быть скрыт, а на маленьком экране с соотношением сторон 4:3, например, показать. И начинается та же проблема. Случай синтетический, но вполне реальный. Кажется тут тоже можно просто на весе селекторов сделать.
Ну это ж уже следствие другой проблемы, а не импортантов. Если в проекте плохая организация кода и чтобы заменить цвет заголовка, нужно несколько часов искать все места где этот цвет назначался, то да, в таком случае используя !important ты ускоряешь процесс. Но при этом ухудшаешь и без того паршивую ситуацию)

А «быстрее» писать !important это опять же, если приводить синтетический случай. Ты его написал, показал заказчику и удалил. А если ты его написал и оставил, то это ускорение сработает ровно один раз. До следующего раза, когда тебе импортанты надо будет писать поверх импортантов и ты все равно придешь к работе с весом селекторов)
Это и есть перезапись инлайн-стилей. А тот вариант, что ты привёл до этого — это очень не хорошо)
Так модуль же изолирует свои стили, и в пределах модуля ты можешь переопределять все что тебе нужно обычным способом. Я не совсем понял кейс, когда там нужен импортант.
Да, спасибо. Я про этот случай умышленно не писал, чтобы дополнительно не путать. Но это всё сводится к тем ситуациям, о которых я сказал в конце. Что это исключения, а не регулярное использование. И как раз чаще всего и используется в плагинчиках и расширениях.
Да, так и работает. Я про это не писал, так как написал сноску про то, что читая эту статью вы уже должны быть знакомы с тем как работает специфичность)
Если бы всё так легко решалось) Ты предлагаешь переписать bootstrap?)
1

Информация

В рейтинге
Не участвует
Откуда
Одесса, Одесская обл., Украина
Дата рождения
Зарегистрирован
Активность