Czy istnieje sposób na wyłączenie niestandardowych pasków przewijania?

10

Czy istnieje rozszerzenie, niestandardowy arkusz stylów użytkownika itp., Które wyłączą lub przywrócą dostosowanie pasków przewijania w przeglądarkach opartych na Webkit, takich jak Google Chrome? Podoba mi się zwykłe, rodzime paski przewijania, ale nie mogę znaleźć kombinacji CSS, która sprawi, że powrócą, gdy zostaną stylizowane przez CSS.

TedMilker
źródło
Wystąpienia paska przewijania webkit można znaleźć w chrome_child.dll w nowszych wersjach.
replikuj rodzimy pasek przewijania w css, a następnie wstrzyknij ten arkusz stylów za pomocą rozszerzenia.
Sarim

Odpowiedzi:

3

Niestety, CSS nie może być „wyłączony” lub przywrócony po aktywacji:

:: - nie można po prostu przesłonić webkit-scrollbar, aby uzyskać domyślny styl, jedynym sposobem na to jest usunięcie z kodu wszystkich reguł :: - webkit-scrollbar. W tym momencie obszary przewijane muszą być zmuszone do przerysowania pasków przewijania. Aby to zrobić, albo szybko dodaj i usuń ekran: brak; z lub wykonaj to samo z przepełnieniem: ukryte; na przewijalnych elementach. Problem z pierwszym polega na tym, że strona miga na biało przy każdym załadowaniu strony; drugi jest zasobochłonny, ponieważ musiałby sprawdzić, czy dowolny element przepełnienia strony nie jest idealny.

Powyższy link pochodzi ze skryptu, który całkowicie usunie niestandardowe paski, nie pozostawiając żadnego paska przewijania.

JonathanMumm
źródło
Jeśli nadal są obszarami przewijalnymi, czy nie spowoduje to wyświetlenia zwykłego paska przewijania? Osadzone ramki iframe uzyskują paski przewijania, więc pomyślałem, że to samo będzie dotyczyło innych rzeczy, które się przepełniły. To znaczy, spodziewałbym się czegoś takiego backbonejs.org z jego #sidebar div.
Ehtesh Choudhury
3

Otwórz przeglądarkę internetową w edytorze binarnym lub edytorze szesnastkowym i zamień wszystkie wystąpienia „webkit-scrollbar” na inne śmieci, takie jak „webkit-scrollb4r”. Właśnie wypróbowałem to z Chrome i rozwiązuje problem.

R..
źródło
1
Czy modyfikowanie skompilowanego pliku wykonywalnego jest naprawdę bezpieczne? Czy nie lepiej byłoby pobrać źródło Chromium, zmodyfikować je i skompilować?
Oriol
Spowodowałoby to unieważnienie wszelkich podpisów cyfrowych kompilacji chrome.exe, fwiw - więc możesz otrzymać przerażające ostrzeżenia za każdym razem, gdy spróbujesz otworzyć Chrome.
Dai
-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
źródło