搜尋
首頁web前端html教學關於HTML中的捲軸/去掉捲軸

關於HTML中的捲軸/去掉捲軸

Apr 01, 2017 pm 02:27 PM
html捲軸

1.xhtml下滾動條的顏色問題

在原來的html的時候,我們可以這樣定義整個頁面的捲軸:

body{

scrollbar -3dlight-color:#D4D0C8; /*- 最外左-*/

#  scrollbar-highlight-color:#fff; /*- 左二-*/

 scrollbar-face- color:#E4E4E4; /*- 面子-*/

 scrollbar-arrow-color:#666; /*- 箭頭-*/

#  scrollbar-shadow-color:#808080; / *- 右二-*/

 scrollbar-darkshadow-color:#D7DCE0; /*- 右一-*/

 scrollbar-base-color:#D7DCE0; /*- 基底色- */

 scrollbar-track-color:#;/*- 滑軌-*/

}

但是同樣的程式碼,我們應用在xhtml下就不起作用了,我相信好多好朋友也遇到同樣的問題。

那麼怎麼才能在xhtml下套用捲軸樣式呢?看下列程式碼:

html{

scrollbar-3dlight-color:#D4D0C8; /*- 最外左-*/

 scrollbar-highlight-color:#fff ; /*- 左二-*/

 scrollbar-face-color:#E4E4E4; /*- 面子-*/

 scrollbar-arrow-color:#666; /*- 箭頭-*/

 scrollbar-shadow-color:#808080; /*- 右二-*/

 scrollbar-darkshadow-color:#D7DCE0; /*- 右一-*/

 scrollbar-base-color:#D7DCE0; /*- 基底色-*/

 scrollbar-track-color:#;/*- 滑軌-*/

}

這段程式碼和上一段唯一的不同就是在css定義的元素上,一個是body一個是html。我們再測試一下,把html頁面的「body」修改成「html」測試一下,發現依然可以實現效果。那到底是為什麼呢?

我們來看看下面的圖:

關於HTML中的捲軸/去掉捲軸

這就是html最基本的dom樹結構。

我們再看看html和xhtml的定義:



HTML (Hyper Text Markup Language,超檔案標記語言),超檔案標記語言廣泛應用於國際互聯網上.HTML描述了文本基準如何進行呈現,以及超級連接如何連接到另外的頁面。

XHTML (Extensible Hypertext Markup Language,可擴展的超文件標記語言),是一種標記語言,表現方式與 HTML類似, 不過語法上更加嚴格。從繼承關係上講,HTML是一種基於SGML的應用,非常靈活,而XHTML則是基於XML,XML是SGML的子集。 XHTML 1.0 在2000年1月26日成為 W3C 的建議標準。

從字面上來看,xhtml比html多一個x,那麼這個x其實也就是xml,為什麼要加一個xml在裡面?其實最根本的原因就是要讓html更結構化標準化(因為html實在太爛)。

OK,我們回來看上面的結構樹,我們在html裡面定義的是body,因為html不是很標準所以這樣可以生效,而在xhtml裡面這樣就不行了,我看看那個圖很明顯,body標籤本身不是根元素,只有html才是根元素,而頁面的捲軸也是屬於根元素的,所以這就是我們為什麼定義body沒有效果的原因,因為我們定義的只是一個子原素。 OK,我們知道了原理,來做一個試驗如果把定義“body”或“xhtml”換成“*”:

*{

# scrollbar-3dlight-color:#D4D0C8; /*- 最外左-*/

 scrollbar-highlight-color:#fff; /*- 左二-*/

#  scrollbar-face-color:#E4E4E4; /*-面子-*/

 scrollbar-arrow-color:#666; /*- 箭-*/

 scrollbar-shadow-color:#808080; /*- 右二-*/

 scrollbar-darkshadow-color:#D7DCE0; /*- 右一-*/

 scrollbar-base-color:#D7DCE0; /*- 基底色-*/

# scrollbar-track-color:#;/*- 滑道-*/

}

#在html和xhtml都通過,因為*就是定義頁面上的任何標籤當然也包括了“ html”這個標籤。

(ps:其實與其說是html與xhtml的區別到不如說是有無XHTML 1.0 transitional doctype的區別,但是如果你把頁面的XHTML 1.0 transitional doctype去掉的話,那麼這個頁面就沒有doctype ,預設的顯示方式就是html4.01,不過你要把XHTML 1.0 transitional doctype修改成HTML 4.01 doctype同樣頁面定義body也不會有效果的,雖然這個頁面的標準是html 4.01)

2 、xhtml下frame頁面橫向滾動條的問題

在用ie6瀏覽有框架的xhtml頁面的時候,預設會水平和垂直滾動條會一起出現,這是ie6的一個bug,在firefox上是正常的,出現的原因是其對XHTML 1.0 transitional doctype的解釋缺陷。

對於這個bug一般有3種解決方案,

方法1:

#程式碼:

html { overflow-y: scroll; }

原理:強制顯示ie的垂直捲軸,而忽略水平捲軸。

優點:完全解決了這個問題, 允許你保持完整的XHTML doctype 。

缺點:即使頁面不需要垂直捲軸的時候也會出現垂直捲軸。

方法2:

程式碼:

#html { overflow-x: hidden; overflow-y: auto; }

原理:隱藏橫向捲動,垂直捲動根據內容自適應。

優點:在視覺上解決了這個問題。在不必要的時候,未強制垂直滾動條出現。

缺點:只是隱藏了水平捲軸,如果頁面真正需要水平滾動條的時候,螢幕以外的內容會因為使用者無法水平滾動,而看不到。

方法3:

程式碼:

body { margin-right: -15px; margin-bottom: -15px; }

#原則:這會在margin的水平和垂直方向上加上一個負值,IE加入了該精確數值後,便會移除對滾動條的需求假象。

優點:在視覺上解決了這個問題,垂直滾動根據內容自適應。

缺點:由於「人為創建」了15px的外邊距(margin),所以無法使用該填滿過的螢幕區域。



去掉水平捲軸:



去掉垂直捲軸:



隱藏橫向捲軸,顯示縱向捲軸:



全部隱藏






或是



這裡先說一下捲軸的屬性程式碼:

overflow-y : visible | auto | hidden | scroll

visible :  不剪下內容也不新增捲軸。

auto :  在需要時剪切內容並添加滾動條

hidden :  不顯示超過對象高度的內容,這裡不對這個屬性作介紹,大家喜歡的話可以自己嘗試

scroll :  總是顯示縱向滾動條

首先我現說一下去掉滾動條的方法:

如果用百度風格模版的話,滾動條只可能有一個,那就是整個空間右邊最大的瀏覽器視窗滾動條,也就是我美化過的那個滾動條,現在告訴大家,我們可以把這個滾動條去掉,但是卻不影響瀏覽的方法:

在body

{}中加入overflow-y :

visible就可以了,這樣捲軸就不會顯示出來了。大家可能會問,這樣怎麼往下拉?呵呵,既然我說了不影響瀏覽,那當然是有方法的,瀏覽的方法就是用

滑鼠的滾輪,雖然滾動條沒了,可是滑鼠滾輪還是能夠讓網頁上下滾動的。我相信大家一般瀏覽網頁的時候用滾輪下拉網頁的次數應該比直接用滑鼠拖曳滾動條的次

數多吧?提示下,如果碰到沒有滾動條而滑鼠又沒有滾輪的朋友,該怎麼瀏覽網頁呢?呵呵,大家可以用鍵盤上面的方向鍵上方的PageUp和PageDown

來上下翻頁,也可以用空格往下拉網頁和Shift+空格往上拉網頁,還有一個方法就是用上下方向鍵來拉動,另外還有按Home鍵回到網頁頂部,End鍵到

達網頁底部,呵呵,是不是方法很多呢?不過這樣總是會有那麼一些些的不方便,所以大家可以根據自己的空間和喜好來考慮要不要取消這個滾動條。

哈哈,想不到囉哩遠嗦地,一下說了這麼多話

下面我們說添加滾動條的方法:

overflow-y : auto;height:多少px

auto

就是自動判斷要不要加入滾動條,當設定的物件內容超過了height設定的高度時,就自動加入滾動條,不然則不顯示, body{}中的預設值就是

overflow-y : auto;height:瀏覽器高度,所以當網頁內容超過瀏覽器高度的時候,瀏覽器右邊就會自動顯現出滾動條來

大家如

果實需要設定這個的話,本人建議設定在最新評論#m_comment{}、文章列表#m_blog{}等內容和高度都不固定的模版中,有的朋友找不到這些模

版的ID,可能只有例如#m_comment p.item{}或#m_pro a{}等的ID,那麼可以自己加上沒有的ID,這樣就可以設定了

這裡還有另一個加入捲軸的方法:

overflow-y :scroll

這個參數的作用上面解釋過了,不過如果只加這個參數的話,雖然捲動列會顯示,但不會顯示捲軸,所以必須還要加上一個

height:多少px

高度屬性,跟上面的那個方法差不多,但是有根本的差別,這個無論物件內容的高度是否超過了height設定的高度,滾動欄永遠都會顯示在邊上的

下面我們說一下關於滾動條的美化,這個我朋友給我看了網上的一個說明,我覺得上面的圖很不錯,但是很小,所以我放大了一倍,看起來就清楚多了,我們先說一下美化的各個屬性:

SCROLLBAR-FACE-COLOR:顏色代碼;
###SCROLLBAR-HIGHLIGHT-COLOR:顏色代碼; #######SCROLLBAR-SHADOW-COLOR: 顏色代碼;

SCROLLBAR-3DLIGHT-COLOR: 顏色代碼;

SCROLLBAR-ARROW-COLOR: 顏色代碼;

SCROLLBAR-TRACK-COLOR : 顏色代碼;

SCROLLBAR-DARKSHADOW-COLOR: 顏色代碼;

大家是不是看到這麼多屬性有點點頭大了?哈哈,放心,看一下我剛剛提及的被我放大了一倍的圖解你們就會感覺好多了:



裡的圖片上還有一個scrollbar-base- color的屬性,其實這個屬性是個上面7個屬性的總合,怎麼說呢?就是當你設定了這個屬性的顏色後,

前面的7個屬性都可以不用設定了,滾動條會自動幫你設定的,只是這個設定都會基於你設定的scrollbar -base-color的顏色而自動設定

這個屬性的優點就是不用大家費盡心思的去研究各個地方的顏色,但是缺點就是不能夠融和五顏六色於一體。 。

註:設定了scrollbar-base-color就不要設定其他七個屬性了,設定了其他七個屬性就不要設定scrollbar-base-color,不然之間可能會有衝突,會有一些效果不起作用的

最後,還是考慮到大家可能會喜歡我的美化程式碼[真臭美~],我把我的美化程式碼貼出來:

SCROLLBAR -FACE-COLOR: #CCFFFF;

SCROLLBAR-HIGHLIGHT-COLOR: white;

SCROLLBAR-SHADOW-COLOR: #813533;

SCROLLBAR-3DLIGHT-COLOR: # 813533;

SCROLLBAR-ARROW-COLOR: #813533;

SCROLLBAR-TRACK-COLOR: white;

SCROLLBAR-DARKSHADOW-COLOR: #813533;

以上是關於HTML中的捲軸/去掉捲軸的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
如何驗證您的HTML代碼?如何驗證您的HTML代碼?Apr 24, 2025 am 12:04 AM

HTML代碼可以通過在線驗證器、集成工具和自動化流程來確保其清潔度。 1)使用W3CMarkupValidationService在線驗證HTML代碼。 2)在VisualStudioCode中安裝並配置HTMLHint擴展進行實時驗證。 3)利用HTMLTidy在構建流程中自動驗證和清理HTML文件。

HTML與CSS和JavaScript:比較Web技術HTML與CSS和JavaScript:比較Web技術Apr 23, 2025 am 12:05 AM

HTML、CSS和JavaScript是構建現代網頁的核心技術:1.HTML定義網頁結構,2.CSS負責網頁外觀,3.JavaScript提供網頁動態和交互性,它們共同作用,打造出用戶體驗良好的網站。

HTML作為標記語言:其功能和目的HTML作為標記語言:其功能和目的Apr 22, 2025 am 12:02 AM

HTML的功能是定義網頁的結構和內容,其目的在於提供一種標準化的方式來展示信息。 1)HTML通過標籤和屬性組織網頁的各個部分,如標題和段落。 2)它支持內容與表現分離,提升維護效率。 3)HTML具有可擴展性,允許自定義標籤增強SEO。

HTML,CSS和JavaScript的未來:網絡開發趨勢HTML,CSS和JavaScript的未來:網絡開發趨勢Apr 19, 2025 am 12:02 AM

HTML的未來趨勢是語義化和Web組件,CSS的未來趨勢是CSS-in-JS和CSSHoudini,JavaScript的未來趨勢是WebAssembly和Serverless。 1.HTML的語義化提高可訪問性和SEO效果,Web組件提升開發效率但需注意瀏覽器兼容性。 2.CSS-in-JS增強樣式管理靈活性但可能增大文件體積,CSSHoudini允許直接操作CSS渲染。 3.WebAssembly優化瀏覽器應用性能但學習曲線陡,Serverless簡化開發但需優化冷啟動問題。

HTML:結構,CSS:樣式,JavaScript:行為HTML:結構,CSS:樣式,JavaScript:行為Apr 18, 2025 am 12:09 AM

HTML、CSS和JavaScript在Web開發中的作用分別是:1.HTML定義網頁結構,2.CSS控製網頁樣式,3.JavaScript添加動態行為。它們共同構建了現代網站的框架、美觀和交互性。

HTML的未來:網絡設計的發展和趨勢HTML的未來:網絡設計的發展和趨勢Apr 17, 2025 am 12:12 AM

HTML的未來充滿了無限可能。 1)新功能和標準將包括更多的語義化標籤和WebComponents的普及。 2)網頁設計趨勢將繼續向響應式和無障礙設計發展。 3)性能優化將通過響應式圖片加載和延遲加載技術提升用戶體驗。

HTML與CSS vs. JavaScript:比較概述HTML與CSS vs. JavaScript:比較概述Apr 16, 2025 am 12:04 AM

HTML、CSS和JavaScript在網頁開發中的角色分別是:HTML負責內容結構,CSS負責樣式,JavaScript負責動態行為。 1.HTML通過標籤定義網頁結構和內容,確保語義化。 2.CSS通過選擇器和屬性控製網頁樣式,使其美觀易讀。 3.JavaScript通過腳本控製網頁行為,實現動態和交互功能。

HTML:是編程語言還是其他?HTML:是編程語言還是其他?Apr 15, 2025 am 12:13 AM

HTMLISNOTAPROGRAMMENGUAGE; ITISAMARKUMARKUPLAGUAGE.1)htmlStructures andFormatSwebContentusingtags.2)itworkswithcsssforstylingandjavascript for Interactivity,增強WebevebDevelopment。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境