사용자 정의 웹킷 스크롤 막대를 비활성화하는 방법이 있습니까?


10

Chrome과 같은 웹킷 기반 브라우저에서 스크롤 막대의 사용자 정의를 비활성화하거나 되돌릴 수있는 확장, 사용자 정의 사용자 스타일 시트 등이 있습니까? 나는 평범한 기본 스크롤 막대를 좋아하지만 CSS로 스타일이 지정되면 CSS 조합을 찾지 못합니다.


webkit-scrollbar 발생은 이후 버전의 chrome_child.dll에서 찾을 수 있습니다.

CSS로 기본 스크롤 막대를 복제 한 다음 확장 프로그램을 사용하여 해당 스타일 시트를 삽입하십시오.
Sarim

답변:


4

불행히도 일단 활성화되면 CSS를 "비활성화"하거나 되돌릴 수 없습니다.

::-webkit-scrollbar는 기본 스타일을 얻기 위해 단순히 재정의 될 수 없으며, 코드에서 모든 ::-webkit-scrollbar 규칙을 제거하는 것이 유일한 방법입니다. 이때 스크롤 가능 영역을 스크롤 막대를 다시 그리도록 강제해야합니다. 그렇게하려면 디스플레이를 빠르게 추가하고 제거하십시오. overflow : hidden;에서 동일한 작업을 수행하거나 수행합니다. 스크롤 가능한 요소에. 첫 번째 문제는 페이지를로드 할 때마다 페이지가 흰색으로 깜박 인다는 것입니다. 두 번째 요소는 페이지의 요소가 오버플로되어 이상적이지 않은지 확인해야하기 때문에 리소스를 많이 사용합니다.

위의 링크는 사용자 지정 막대를 완전히 제거하여 스크롤 막대가없는 스크립트에서 가져온 것입니다.


여전히 스크롤 가능한 영역 인 경우 일반 스크롤 막대를 렌더링하지 않습니까? 임베디드 iframe에는 스크롤 막대가 있으므로 오버플로가 발생하는 다른 항목에도 동일하게 적용됩니다. 나는 #sidebar div가있는 backbonejs.org 와 같은 것을 기대할 것 입니다.
Ehtesh Choudhury

2

바이너리 클린 텍스트 편집기 또는 16 진 편집기에서 웹 브라우저 실행 파일을 열고 "webkit-scrollbar"를 "webkit-scrollb4r"과 같은 다른 정크로 바꿉니다. 방금 Chrome을 사용 하여이 문제를 해결했습니다.


2
컴파일 된 실행 파일을 수정하는 것이 정말 안전합니까? Chromium 소스를 다운로드하여 수정하고 컴파일하는 것이 낫지 않습니까?
Oriol

1
이렇게하면 chrome.exe 빌드의 모든 디지털 서명이 무효화되므로 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--);
        }
    }
});
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.