Есть ли способ отключить пользовательские полосы прокрутки webkit?

10

Существуют ли расширения, пользовательские таблицы стилей и т. Д., Которые отключают или отменяют настройку полос прокрутки в браузерах на основе Webkit, таких как Google Chrome? Мне нравятся простые, родные полосы прокрутки, но я не могу найти комбинацию CSS, чтобы заставить их вернуться после того, как они были стилизованы CSS.

TedMilker
источник
Вхождения webkit-scrollbar можно найти в chrome_child.dll в более поздних версиях.
скопируйте собственную полосу прокрутки в css, а затем вставьте эту таблицу стилей, используя расширение.
Сарим

Ответы:

4

К сожалению, CSS не может быть «отключен» или отменен после активации:

:: - webkit-scrollbar нельзя просто переопределить, чтобы получить стиль по умолчанию, единственный способ сделать это - удалить все правила :: - webkit-scrollbar из кода. На этом этапе прокручиваемые области должны быть вынуждены перерисовать полосы прокрутки. Для этого нужно либо быстро добавить, либо удалить отображение: нет; то же самое с переполнением: скрытый; на прокручиваемых элементах. Проблема с первым в том, что страница мигает белым при каждой загрузке страницы; второй ресурсоемкий, так как должен проверять, не переполнен ли какой-либо элемент страницы, - не идеально.

Ссылка выше взята из скрипта, который полностью удалит пользовательские панели, оставив вас без полосы прокрутки.

JonathanMumm
источник
Если они все еще являются прокручиваемыми областями, не будет ли отображаться обычная полоса прокрутки? Встроенные фреймы получают полосы прокрутки, поэтому я подумал, что то же самое будет верно и для других вещей, которые переполняются. Я имею в виду, что я ожидаю что-то вроде backbonejs.org с его #sidebar div.
Эхтеш Чоудхури
2

Откройте исполняемый файл веб-браузера в текстовом редакторе с двоичной очисткой или в шестнадцатеричном редакторе и замените все вхождения «webkit-scrollbar» на другие ненужные файлы, например «webkit-scrollb4r». Я только что попробовал это с Chrome, и это решает проблему.

R .. GitHub ОСТАНОВИТЬ, ПОМОГАЯ ЛЕД
источник
2
Является ли изменение скомпилированного исполняемого файла действительно безопасным? Не лучше ли загрузить исходный код Chromium, изменить его и скомпилировать?
Ориоль
1
Это сделает недействительными любые цифровые подписи сборки chrome.exe, fwiw - так что вы можете получать страшные предупреждения каждый раз, когда пытаетесь открыть Chrome.
Дай
-2
// ==UserScript==
// @name         My Fancy Scrollbar Userscript
// @namespace    http://your.homepage/
// @version      0.1
// @description  enter something useful
// @author       You
// @match        http://*/*
// @grant        none
// ==/UserScript==

[].forEach.call(document.styleSheets, function(sheet) {
    for (var i = 0; i < sheet.rules.length; ++i) {
        var rule = sheet.rules[i];
        if (/::-webkit-scrollbar/.test(rule.selectorText)) {
            sheet.deleteRule(i--);
        }
    }
});
bumfo
источник