我正在製作Google Chrome瀏覽器擴展程序,以更改(Webkit)滾動條的外觀。我希望他們能夠與頁面的其餘部分「融合」。我想要做的是讀取頁面的背景顏色並將其分配給:: - webkit-scrollbar-track-piece的背景顏色。這可能嗎?是否有可能在CSS中讀取HTML?
另外,是否有可能知道我正在改變的滾動條是否是主要的滾動條之一(而不是頁內滾動條)。
P.S:當談到Web開發時,我確實是一名初學者。
我正在製作Google Chrome瀏覽器擴展程序,以更改(Webkit)滾動條的外觀。我希望他們能夠與頁面的其餘部分「融合」。我想要做的是讀取頁面的背景顏色並將其分配給:: - webkit-scrollbar-track-piece的背景顏色。這可能嗎?是否有可能在CSS中讀取HTML?
另外,是否有可能知道我正在改變的滾動條是否是主要的滾動條之一(而不是頁內滾動條)。
P.S:當談到Web開發時,我確實是一名初學者。
不,你不能在純CSS中做到這一點,你至少需要Javascript來完成這個任務,但在Chrome中這可能是不可能的,並且有很好的理由。
我最後一次記住這是可能的是在IE6。一般來說,更改平臺上所有應用程序通用的用戶界面元素是一個冒險的想法,因爲用戶必須重新學習如何使用您的應用程序。
想想互聯網上設計最好的網站。你可能不會花太多時間希望他們的滾動條更好地混合。這只是沒有必要的,而下行(混淆用戶)遠遠超過了上升(可能使滾動條稍微漂亮)。
Chrome支持滾動條樣式:http://trac.webkit.org/export/41842/trunk/LayoutTests/scrollbars/overflow-scrollbar-combinations.html – serg 2010-11-02 21:51:31
我明白你的觀點,但是,由於它是我正在做的擴展,由用戶決定是否需要它。有一個「沒有滾動條」的擴展,我用了一下,直到我想知道頁面有多長。這是我的替代品,是一種妥協。 – 2010-11-02 23:44:21
使用內容腳本,您可以讀取CSS數據,然後將適當的樣式注入頁面。
作爲一個例子,下面將樣式只是「身體」滾動條:
body::-webkit-scrollbar {background-color:#000}
身體滾動條是「主要」滾動條嗎? – 2010-11-03 19:13:18
是的,「身體」是主要容器,但在更復雜的網站中,滾動條可能來自其他元素。但應該在大多數情況下工作。 – Omiod 2010-11-04 18:57:29
CSS不能,但它不應該是難的Chrome擴展這樣做使用一些JavaScript。 – ceejayoz 2010-11-02 21:17:18
@ceejayoz,我如何將JavaScript結果發送回CSS?這可能是我的答案。 – 2010-11-02 23:40:15
您將使用JavaScript將一些CSS注入到DOM中。這是一個擴展程序,它應該能夠下載和檢查:https://chrome.google.com/extensions/detail/hiadkoalmmkgennhcldmdlndfgagkcim – ceejayoz 2010-11-03 16:29:48