自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

CSS自定義滾動(dòng)條樣式

開發(fā) 前端
相信很多人都遇到過在設(shè)計(jì)中自定義滾動(dòng)條樣式的情景,之前我都是努力說服設(shè)計(jì)師接受瀏覽器自帶的滾動(dòng)條樣式,但是這樣只能規(guī)避還是解決不了問題,最近在項(xiàng)目中遇到了,正好來總結(jié)一下。當(dāng)然,兼容所有瀏覽器的滾動(dòng)條樣式目前是不存在的。

相信很多人都遇到過在設(shè)計(jì)中自定義滾動(dòng)條樣式的情景,之前我都是努力說服設(shè)計(jì)師接受瀏覽器自帶的滾動(dòng)條樣式,但是這樣只能規(guī)避還是解決不了問題,最近在項(xiàng)目中遇到了,正好來總結(jié)一下。當(dāng)然,兼容所有瀏覽器的滾動(dòng)條樣式目前是不存在的。

 

IE下的滾動(dòng)條樣式

IE是最早提供滾動(dòng)條的樣式支持,嗯,好多年了,但是其它瀏覽器一直沒有支持,IE獨(dú)孤求敗了。

這些樣式規(guī)則很簡(jiǎn)單:

  1. scrollbar-arrow-color: color; /*三角箭頭的顏色*/ 
  2. scrollbar-face-color: color; /*立體滾動(dòng)條的顏色(包括箭頭部分的背景色)*/ 
  3. scrollbar-3dlight-color: color; /*立體滾動(dòng)條亮邊的顏色*/ 
  4. scrollbar-highlight-color: color; /*滾動(dòng)條的高亮顏色(左陰影?)*/ 
  5. scrollbar-shadow-color: color; /*立體滾動(dòng)條陰影的顏色*/ 
  6. scrollbar-darkshadow-color: color; /*立體滾動(dòng)條外陰影的顏色*/ 
  7. scrollbar-track-color: color; /*立體滾動(dòng)條背景顏色*/ 
  8. scrollbar-base-color:color; /*滾動(dòng)條的基色*/ 

大概就這些,你也可以定義cursor來定義滾動(dòng)條的鼠標(biāo)手勢(shì)。

這里,很久以前danger做了個(gè)基于Flash的可視化工具,簡(jiǎn)單但是好用:

選中CSS選項(xiàng)即可自動(dòng)生成CSS樣式,這里不再過多的介紹了。嗯,多謝大貓老濕推薦。

webkit的自定義滾動(dòng)條樣式

yes,這里才是今天要重點(diǎn)介紹的。

從上一部分的樣式名中就可以看到,IE只能定義相關(guān)部分的color等屬性,這樣太不靈活了。

webkit最近實(shí)現(xiàn)了對(duì)滾動(dòng)條的支持,先看一個(gè)簡(jiǎn)單的demo:

 

不過,webkit不再是用簡(jiǎn)單的幾個(gè)CSS屬性,而是一坨的CSS偽元素:

:horizontal – horizontal偽類應(yīng)用于水平方向的滾動(dòng)條

:vertical – vertical偽類應(yīng)用于豎直方向的滾動(dòng)條

:decrement – decrement偽類應(yīng)用于按鈕和內(nèi)層軌道(track piece)。它用來指示按鈕或者內(nèi)層軌道是否會(huì)減小視窗的位置(比如,垂直滾動(dòng)條的上面,水平滾動(dòng)條的左邊。)

:increment – increment偽類和decrement類似,用來指示按鈕或內(nèi)層軌道是否會(huì)增大視窗的位置(比如,垂直滾動(dòng)條的下面和水平滾動(dòng)條的右邊。)

:start – start偽類也應(yīng)用于按鈕和滑塊。它用來定義對(duì)象是否放到滑塊的前面。

:end – 類似于start偽類,標(biāo)識(shí)對(duì)象是否放到滑塊的后面。

:double-button – 該偽類以用于按鈕和內(nèi)層軌道。用于判斷一個(gè)按鈕是不是放在滾動(dòng)條同一端的一對(duì)按鈕中的一個(gè)。對(duì)于內(nèi)層軌道來說,它表示內(nèi)層軌道是否緊靠一對(duì)按鈕。

:single-button – 類似于double-button偽類。對(duì)按鈕來說,它用于判斷一個(gè)按鈕是否自己獨(dú)立的在滾動(dòng)條的一段。對(duì)內(nèi)層軌道來說,它表示內(nèi)層軌道是否緊靠一個(gè)single-button。

:no-button – 用于內(nèi)層軌道,表示內(nèi)層軌道是否要滾動(dòng)到滾動(dòng)條的終端,比如,滾動(dòng)條兩端沒有按鈕的時(shí)候。

:corner-present – 用于所有滾動(dòng)條軌道,指示滾動(dòng)條圓角是否顯示。

:window-inactive – 用于所有的滾動(dòng)條軌道,指示應(yīng)用滾動(dòng)條的某個(gè)頁面容器(元素)是否當(dāng)前被激活。(在webkit最近的版本中,該偽類也可以用于::selection偽元素。webkit團(tuán)隊(duì)有計(jì)劃擴(kuò)展它并推動(dòng)成為一個(gè)標(biāo)準(zhǔn)的偽類)

另外,:enabled、:disabled、:hover 和 :active 等偽類同樣可以用于滾動(dòng)條中。

關(guān)于具體的demo,這里不再做了,網(wǎng)上已經(jīng)有很多demo可以參考,比如,webkit官方的這個(gè),具體的線上項(xiàng)目中也有現(xiàn)成的例子,比如,QQ空間的簽到彈出框和豆瓣說的右側(cè)詳情欄(某條信息評(píng)論多的時(shí)候會(huì)顯示)。

值得一提的是,webkit的這個(gè)偽類和偽元素的實(shí)現(xiàn)很強(qiáng)大,雖然類目有些多,但是我們可以把滾動(dòng)條當(dāng)成一個(gè)頁面元素來定義,也差不多可以用上一些高級(jí)的CSS3屬性,比如漸變、圓角、RGBa等等,當(dāng)然有些地方也可以用圖片,然后圖片也可以轉(zhuǎn)換成Base64,總之,可以盡情發(fā)揮了。

【編輯推薦】

  1. 更簡(jiǎn)潔的 CSS 清理浮動(dòng)方式
  2. 10 個(gè)漂亮的 CSS3 表單制作教程
  3. 非常優(yōu)秀的jQuery+CSS實(shí)現(xiàn)動(dòng)態(tài)導(dǎo)航菜單教程
  4. 一個(gè)超棒的CSS小工具:***Web性能優(yōu)化
責(zé)任編輯:于鐵 來源: 前端觀察
相關(guān)推薦

2010-09-14 10:13:53

DIV滾動(dòng)條

2010-09-09 11:25:55

滾動(dòng)條CSS

2021-07-05 07:49:14

CSS自定義滾動(dòng)條CSS技巧

2024-01-22 09:28:23

CSS前端滾動(dòng)驅(qū)動(dòng)

2010-09-09 09:47:02

DIV滾動(dòng)條

2023-11-22 07:47:34

2022-05-27 07:51:07

自定義無序列表CSS

2010-08-09 15:19:29

Flex滾動(dòng)條

2011-09-02 10:03:40

jQuery滾動(dòng)圖片

2010-09-30 15:24:31

滾動(dòng)條Javascript

2022-04-20 18:22:18

CSS拖拽預(yù)覽圖

2023-09-11 09:07:58

CSS隱藏滾動(dòng)條

2022-08-15 19:23:24

macOS?Windows容器

2009-08-04 13:35:16

ASP.NET自定義樣

2010-07-28 11:25:08

Flex滾動(dòng)條

2011-03-04 14:46:40

Ubuntu Unit

2021-09-06 14:58:23

鴻蒙HarmonyOS應(yīng)用

2014-07-29 11:10:26

Ubuntu14.04小技巧

2022-02-16 08:12:03

組件樣式元素

2011-09-01 13:17:46

JQuery滾動(dòng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)