dimisa

RU AdList | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору monsoon Цитата: Работает не у всех, например про Ublock 1.13.8 это же вы сами подсказали. ) По моей ссылке выше автор написал правду, проверял: в 49 версии хрома не скрываются изображения правилом geektimes.ru#?#img даже с самым последним AdBlock Plus (последние версии Ublock скрывают). 49 версия это последняя версия, работающая в XP, т.е. скорее всего пользователей у нее еще достаточно. |
Цитата: Уточняю вопрос: для чего вообще используется "#?#" ? (понятно, что в случае Adblock - для того, чтобы работали его селекторы, но интересует в более глобальном смысле) | Давайте сразу уточним, что "у некоторых", это не то же самое, что "далеко не у всех". Когда на русторке сломали движок и у пользователей Фокса начались проблемы, то выяснилось, что этих самых пользователей там ~ 4%, остальные сидят на Хроме или его клонах. Это даёт ответ на вопрос реального соотношения активно используемых браузеров. Ведь браузеры от Microsoft тоже стоят у многих, однако это не означает, что их кто-то активно и постоянно применяет. Число активно применяемых раритетных версий Хрома тоже исчезающе мало, 99,9% автообновляется по-умолчанию, как и расширения в нём. Поэтому упоминание 49 версии Хрома можно причислить исключительно к историческому факту, не более. Работающие или неработающие актуальные функции на устаревшем ПО, будь то браузеры, расширения или что другое, можно обсуждать только с целью академического интереса. Теперь возвращаемся к злополучной статье и оправданности применения псевдоселектров для скрытия родительских элементов по наличию или свойствам их потомков. Ничего более в этой статье не рассматривается и пример с инжектированием стиля, который вы приводите (nnm-club.name,nnm-club.to,nnmclub.to#?#body > .wrap:style(top: 0 !important)) под эту статью не подпадает. Так вот, представьте себе, что вы имеете дело с элементами с одинаковым названием, свойствами и случайным положением на странице. И рекламными являются только некоторые из них. Скрыть их можно только с помощью псевдоселектров, срабатывание которых происходит с задержкой, по сравнению с обычными правилами. Скрывать их или оставить рекламу незаблокированной? Думаю, ответ очевиден. В настоящий момент в подписке RU AdList присутствует 64 таких правила. Проверить это можно, открыв её https://easylist-downloads.adblockplus.org/advblock.txt и задав поиск по :-abp- Ну и о "#?#" В версии uBlock 1.14.12 автор добавил поддержку нового abp-синтаксиса, а в самом ABP началась подготовка к поддержке инжектирования стилей. В связи с этими изменениями была создана дополнительная подписка RU AdList CSS Fixes: https://hg.adblockplus.org/ruadlist/raw-file/tip/css-fixes-experimental.txt, куда из одноимённого стиля https://userstyles.org/styles/101141/ru-adlist-css-fixes были прописаны конвертированные для использования в ABP правила, синтаксис которых требует использования #?#. В настоящий момент там содержится 848 правил. После того, как состоялся релиз, Раймонд в своём расширении поменял адрес подписки RU AdList на https://easylist-downloads.adblockplus.org/advblock+cssfixes.txt. Но сделал он это не только для версий 1.14.12 и старше, а для всех. Это породило то, что тех версиях uBlock, которые не поддерживают новый abp-синтаксис, эти стили закономерно не работают. |