HTML表單元素覆蓋樣式元素問(wèn)題及其補(bǔ)救之道

2022-06-25    分類: 網(wǎng)站建設(shè)

在設(shè)計(jì)HTML頁(yè)面的過(guò)程中經(jīng)常會(huì)遇到表單元素覆蓋樣式元素引起的問(wèn)題,圖一就是一個(gè)典型的例子。不要小看這個(gè)貌似“低級(jí)”的問(wèn)題,即使一些規(guī)模較大的網(wǎng)站上類似的問(wèn)題也絕不鮮見。本文探討了造成這一問(wèn)題的根本原因,并提出一種補(bǔ)救辦法——之所以說(shuō)補(bǔ)救辦法而不是一勞永逸的解決辦法,是因?yàn)槲④浐蚇etScape這兩個(gè)巨頭也還沒(méi)有對(duì)策。

一、HTML元素的顯示優(yōu)先級(jí)

  HTML中常用的表單元素包括:文本區(qū)域(TEXTAREA),列表框(SELECT),文本輸入框(INPUT type=text),密碼輸入框(INPUT type=password),單選輸入框(INPUT type=radio),復(fù)選輸入框(INPUT type=checkbox),等等。常見的非表單元素包括:鏈接標(biāo)記(A),DIV標(biāo)記,SPAN標(biāo)記,TABLE標(biāo)記,等等。表單元素覆蓋樣式元素的根本原因在于HTML元素默認(rèn)的顯示優(yōu)先級(jí)規(guī)則,例如:幀元素總是比其他HTML元素優(yōu)先,因此也總是顯示在最前面;表單元素總是比所有非表單元素優(yōu)先。

  所有這些HTML元素又可以根據(jù)其顯示要求分成兩類,即有窗口的HTML元素(Windowed Element),無(wú)窗口的HTML元素(Windowless Element)。有窗口的元素包括:SELECT元素,OBJECT元素,插件,IE 5.01以及更早版本中的IFRAME元素。無(wú)窗口的元素包括:大多數(shù)的普通HTML元素,如鏈接和TABLE標(biāo)記,除了SELECT元素之外的大多數(shù)表單元素,NS6+/IE 5.5以及更高版本中的IFRAME元素。本文討論的問(wèn)題主要與有窗口的HTML元素有關(guān),問(wèn)題的癥結(jié)其實(shí)就在于操作系統(tǒng)默認(rèn)總是把有窗口的元素顯示在無(wú)窗口的元素前面。

  二、瀏覽器類型與顯示優(yōu)先級(jí)

  按照瀏覽器類型比較,HTML元素的顯示次序也有所不同,總結(jié)如下:

 ?、?Netscape/Mozilla

  在NS瀏覽器6.0以前的版本中,表單元素總是比其他HTML元素有更高的優(yōu)先級(jí)。但在NS 6+瀏覽器中,IFRAME元素和所有表單元素的顯示次序或者由CSS的z-index屬性值確定,或者由它們?cè)贖TML頁(yè)面中出現(xiàn)的次序確定,但SELECT元素除外。

本文題目:HTML表單元素覆蓋樣式元素問(wèn)題及其補(bǔ)救之道
當(dāng)前網(wǎng)址:http://muchs.cn/news/171484.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、品牌網(wǎng)站制作、ChatGPT、網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)、全網(wǎng)營(yíng)銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名