回答:
残念ながら、CSSは「無効」にしたり、アクティブにした後で元に戻したりすることはできません。
::-webkit-scrollbarをオーバーライドしてデフォルトのスタイルを取得することはできません。これを行う唯一の方法は、コードからすべての::-webkit-scrollbarルールを削除することです。その時点で、スクロール可能な領域は、スクロールバーを再描画する必要があります。これを行うには、display:noneをすばやく追加して削除します。から、または同じことをoverflow:hiddenで行います。スクロール可能な要素。最初の問題は、ページが読み込まれるたびにページが白く点滅することです。2つ目は、ページ上の要素がオーバーフローしているかどうかを確認する必要があるため、リソースを大量に消費します。理想的ではありません。
上記のリンクは、カスタムバーを完全に削除するスクリプトからのもので、スクロールバーはありません。
バイナリクリーンテキストエディターまたは16進エディターでWebブラウザーの実行可能ファイルを開き、「webkit-scrollbar」のすべての出現箇所を「webkit-scrollb4r」などの他のジャンクに置き換えます。Chromeで試してみたところ、問題は解決しました。
// ==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--);
}
}
});