這篇文章主要介紹了CSS 設定捲軸樣式的實例程式碼,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧
CSS 設定捲軸樣式的實作程式碼如下所示:
•::-webkit-scrollbar 捲軸整體部分
•::-webkit-scrollbar-thumb 捲軸裡面的小方塊,能向上向下移動(或向左往右移動,取決於是垂直捲軸還是水平捲軸)
•::-webkit-scrollbar-track 捲軸的軌道(裡面裝有Thumb)
•::-webkit-scrollbar-button 滾動條的軌道的兩端按鈕,允許透過點擊微調小方塊的位置。
•::-webkit-scrollbar-track-piece 內層軌道,捲軸中間部分(除去)
•::-webkit-scrollbar-corner 邊角,即兩個滾動條的交匯處
•::-webkit-resizer 兩個捲軸的交會處上用於透過拖曳調整元素大小的小控制項
/*定义滚动条高宽及背景 高宽分别对应横竖滚动条的尺寸*/ ::-webkit-scrollbar { width: 16px; height: 16px; background-color: #F5F5F5; } /*定义滚动条轨道 内阴影+圆角*/ ::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); border-radius: 10px; background-color: #F5F5F5; } /*定义滑块 内阴影+圆角*/ ::-webkit-scrollbar-thumb { border-radius: 10px; -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3); background-color: #555; }
##詳細設定
定義捲軸就是利用偽元素與偽類,那什麼是偽元素和偽類呢? 偽類大家應該很熟悉:link,:focus,:hover,此外CSS3中又增加了許多偽類選擇器,如:nth-child,:last-child,:nth-last-of -type()等。 CSS中的偽元素大家以前看過::first-line,:first-letter,:before,:after。那麼在CSS3中,偽元素進行了調整,在以前的基礎上增加了一個“:”也就是現在變成了“::first-letter,::first-line,::before,::after”,另外CSS3也增加了一個「::selection」。兩個「::」和一個「:」在css3中主要用來區分偽類和偽元素。 webkit的偽類和偽元素的實作很強,可以把捲軸當成一個頁面元素來定義,再結合一些高階的CSS3屬性,像是漸變、圓角、RGBa等等。然後如果有些地方要用圖片,可以把圖片也可以轉換成Base64,不然每次都要載入那個多個圖片,增加請求數。 任何物件都可以設定:邊框、陰影、背景圖片等等,建立的捲軸任然會依照作業系統本身的設定來完成其互動的行為。下面的偽類可以應用在上面的偽元素。有點小複雜,具體怎麼寫可以看第一個demo,那裡也有註解。:horizontal //horizontal伪类适用于任何水平方向上的滚动条 :vertical //vertical伪类适用于任何垂直方向的滚动条 :decrement //decrement伪类适用于按钮和轨道碎片。表示递减的按钮或轨道碎片,例如可以使区域向上或者向右移动的区域和按钮 :increment //increment伪类适用于按钮和轨道碎片。表示递增的按钮或轨道碎片,例如可以使区域向下或者向左移动的区域和按钮 :start //start伪类适用于按钮和轨道碎片。表示对象(按钮 轨道碎片)是否放在滑块的前面 :end //end伪类适用于按钮和轨道碎片。表示对象(按钮 轨道碎片)是否放在滑块的后面 :double-button //double-button伪类适用于按钮和轨道碎片。判断轨道结束的位置是否是一对按钮。也就是轨道碎片紧挨着一对在一起的按钮。 :single-button //single-button伪类适用于按钮和轨道碎片。判断轨道结束的位置是否是一个按钮。也就是轨道碎片紧挨着一个单独的按钮。 :no-button no-button伪类表示轨道结束的位置没有按钮。 :corner-present //corner-present伪类表示滚动条的角落是否存在。 :window-inactive //适用于所有滚动条,表示包含滚动条的区域,焦点不在该窗口的时候。 ::-webkit-scrollbar-track-piece:start { /*滚动条上半边或左半边*/ } ::-webkit-scrollbar-thumb:window-inactive { /*当焦点不在当前区域滑块的状态*/ } ::-webkit-scrollbar-button:horizontal:decrement:hover { /*当鼠标在水平滚动条下面的按钮上的状态*/ }
#
以上是CSS 設定滾動條樣式的實例代碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!