CSS設定滾動條樣式
因為在現在的大部分項目中很多都用到了滾動條,有時候用到模拟的滾動條,現在說下滾動條的CSS也能解決。
比如網易郵箱的滾動條樣子很好看,就是利用的CSS來設定的,而且是webkit浏覽器的。如圖所示:

下面就講解這幾個屬性怎麼使用,代表什麼意思。
一:webkit下面的CSS設定滾動條
主要有下面7個屬性
- ::-webkit-scrollbar 滾動條整體部分,可以設定寬度啥的
- ::-webkit-scrollbar-button 滾動條兩端的按鈕
- ::-webkit-scrollbar-track 外層軌道
- ::-webkit-scrollbar-track-piece 内層滾動槽
- ::-webkit-scrollbar-thumb 滾動的滑塊
- ::-webkit-scrollbar-corner 邊角
- ::-webkit-resizer 定義右下角拖動塊的樣式
如圖所示:
上面是滾動條的主要幾個設定屬性,還有更詳盡的CSS屬性
:horizontal 水準方向的滾動條
:vertical 垂直 方向的滾動條
:decrement 應用于按鈕和内層軌道(track piece)。它用來訓示按鈕或者内層軌道是否會減小視窗的位置(比如,垂直滾動條的上面,水準滾動條的左邊。)
:increment decrement類似,用來訓示按鈕或内層軌道是否會增大視窗的位置(比如,垂直滾動條的下面和水準滾動條的右邊。)
:start 僞類也應用于按鈕和滑塊。它用來定義對象是否放到滑塊的前面。
:end 類似于start僞類,辨別對象是否放到滑塊的後面。
:double-button 該僞類以用于按鈕和内層軌道。用于判斷一個按鈕是不是放在滾動條同一端的一對按鈕中的一個。對于内層軌道來說,它表示内層軌道是否緊靠一對按鈕。
:single-button 類似于double-button僞類。對按鈕來說,它用于判斷一個按鈕是否自己獨立的在滾動條的一段。對内層軌道來說,它表示内層軌道是否緊靠一個single-button。
:no-button 用于内層軌道,表示内層軌道是否要滾動到滾動條的終端,比如,滾動條兩端沒有按鈕的時候。
:corner-present 用于所有滾動條軌道,訓示滾動條圓角是否顯示。
:window-inactive 用于所有的滾動條軌道,訓示應用滾動條的某個頁面容器(元素)是否目前被激活。(在webkit最近的版本中,該僞類也可以用于::selection僞元素。webkit團隊有計劃擴充它并推動成為一個标準的僞類)
CSS也很簡單,例:
/* 設定滾動條的樣式 */
::-webkit-scrollbar {
width:;
}
/* 滾動槽 */
::-webkit-scrollbar-track {
-webkit-box-shadow:inset006pxrgba(0,0,0,0.3);
border-radius:;
}
/* 滾動條滑塊 */
::-webkit-scrollbar-thumb {
border-radius:;
background:rgba(0,0,0,0.1);
-webkit-box-shadow:inset006pxrgba(0,0,0,0.5);
}
::-webkit-scrollbar-thumb:window-inactive {
background:rgba(255,0,0,0.4);
}
二:IE下面的CSS設定滾動條
IE下面就比較簡單那了,自定義的項目比較少,全是顔色。
- scrollbar-arrow-color: color;
- scrollbar-face-color: color;
- scrollbar-3dlight-color: color;
- scrollbar-highlight-color: color;
- scrollbar-shadow-color: color;
- scrollbar-darkshadow-color: color;
- scrollbar-track-color: color;
- scrollbar-base-color:color;