標籤:元素 auto rgb ble bsp row 技術分享 頁面 通過
/*作為IT界最前端的技術達人,頁面上的每一個元素的樣式我們都必須較真,就是捲軸我們也不會忽略。
下面我給大家分享一下如何通過CSS來控制捲軸的樣式,代碼如下:*/
1 /*定義捲軸軌道*/ 2 #style-2::-webkit-scrollbar-track 3 { 4 background-color: #F5F5F5; 5 -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.22); 6 } 7 /*定義捲軸高寬及背景*/ 8 #style-2::-webkit-scrollbar 9 {10 width: 10px;11 background-color: rgba(0, 0, 0, 0.34);12 }13 /*定義捲軸*/14 #style-2::-webkit-scrollbar-thumb15 {16 background-color: #8b8b8b;17 border-radius: 10px;18 }
*要實現單個div裡面的內容滾動,需要滿足三個條件:
1、div必須設定固定的高度,不能使用百分比或 auto 等彈性值。
2、其中的內容高度必須超過它本身的高度。
3、必須添加屬性 “overflow:auto”。
*隱藏捲軸:
1、去掉水平方向的捲軸:
<body style="overflow-x:hidden">
2、去掉垂直方向的捲軸:
<body style="overflow-y:hidden">
3、隱藏橫向、顯示縱向捲軸:
<body style="overflow-x:hidden;overflow-y:scroll">
4、隱藏全部捲軸:
<body style="overflow:hidden">或者<body scroll="no">
更好的方法就是把捲軸的顏色設定為完全透明,這樣既可以實現內容的滾動,又達到不顯示捲軸的目的。
應用:
沒有水平捲軸:
<div style="overflow-x:hidden">test</div>
沒有垂直捲軸
<div style="overflow-y:hidden">test</div>
沒有捲軸
<div style="overflow-x:hidden;overflow-y:hidden" 或 style="overflow:hidden">test</div>
自動顯示捲軸
<div style="height:100px;width:100px;overflow:auto;">test</div>
自己定義捲軸的顏色,代碼如下:
1 Body { 2 scrollbar-arrow-color: #f4ae21; /*三角箭頭的顏色*/ 3 scrollbar-face-color: #333; /*立體捲軸的顏色*/ 4 scrollbar-3dlight-color: #666; /*立體捲軸亮邊的顏色*/ 7 scrollbar-highlight-color: #666; /*捲軸空白部分的顏色*/10 scrollbar-shadow-color: #999; /*立體捲軸陰影的顏色*/13 scrollbar-darkshadow-color: #666; /*立體捲軸強陰影的顏色*/16 scrollbar-track-color: #666; /*立體捲軸背景顏色*/18 scrollbar-base-color:#f8f8f8; /*捲軸的基本顏色*/19 Cursor:url(mouse.cur); /*自訂個性滑鼠*/20 }
以上2項適用與<body>、<div>、<textarea>、<iframe>
附:
解釋一下overflow屬性和不同值得作用:
overflow:visible;不剪下內容也不添加捲軸。預設值。使用該值時,無論設定的"width"和"height"的值是多少,其中的內容無論是否超出範圍都將被強制顯示。
overflow:auto;在需要時剪下內容並添加捲軸。
overflow:hidden;不顯示超過對象高度的內容。
overflow:scroll;總是顯示縱向捲軸。
overflow 水平及垂直方向內容溢出時的設定
overflow-x 水平方向內容溢出時的設定
overflow-y 垂直方向內容溢出時的設定
以上屬性設定的值為visible、scroll、hidden、auto
hidden 效果與visible相反。任何超出"width"和"height"的內容都會不可見。
scroll 無論內容是否超越範圍,都將顯示捲軸。
CSS 控制捲軸樣式