跨瀏覽器開發(fā)經(jīng)驗(yàn)總結(jié)(一)HTML標(biāo)記
來(lái)源:易賢網(wǎng) 閱讀:718 次 日期:2016-06-22 13:48:47
溫馨提示:易賢網(wǎng)小編為您整理了“跨瀏覽器開發(fā)經(jīng)驗(yàn)總結(jié)(一)HTML標(biāo)記”,方便廣大網(wǎng)友查閱!

跨瀏覽器開發(fā)經(jīng)驗(yàn)總結(jié)(二) CSS ,書寫代碼的同時(shí)多考慮一些多瀏覽器的兼容性問(wèn)題。怎樣才能符合標(biāo)準(zhǔn)。

為頁(yè)面添加DOCTYPE

由于不同瀏覽器對(duì)標(biāo)簽,樣式表的解釋不盡相同,所以需要為html文件定義一個(gè)標(biāo)準(zhǔn)的文檔類型,使不同瀏覽器盡量按照一個(gè)統(tǒng)一的html標(biāo)準(zhǔn)來(lái)解析渲染頁(yè)面。

!DOCTYPE 聲明指定文檔遵從的 DTD,如:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

標(biāo)準(zhǔn)HTML標(biāo)簽的正確使用

盡量使用div+css布局,不用table做布局。

使用table做布局容易造成代碼冗余,相對(duì)<div></div>編寫來(lái)說(shuō),代碼繁多。并且,table需要將元素都下載后進(jìn)行顯示,相應(yīng)的網(wǎng)頁(yè)打開速度也較慢。

應(yīng)該使用標(biāo)準(zhǔn)化的頁(yè)面結(jié)構(gòu):DIV+CSS。這種布局方式代碼簡(jiǎn)潔,頁(yè)面瀏覽速度較快,頁(yè)面布局靈活,改版時(shí)只需改CSS樣式即可實(shí)現(xiàn)頁(yè)面重新布局,而不用改動(dòng)程序,從而降低了網(wǎng)站改版的成本。

注意標(biāo)簽的閉合關(guān)系,尤其是在form標(biāo)簽中嵌套div等其他標(biāo)簽時(shí)。

有的時(shí)候頁(yè)面上會(huì)出現(xiàn)多余的空白,即使重新設(shè)置了margin也無(wú)法避免,這個(gè)時(shí)候有可能是頁(yè)面元素標(biāo)簽閉合出現(xiàn)了不配對(duì)的情況,如:

<div class=”outer”>

<form name=”testForm”>

<div class=”inner”>

<input name=”title” type=”text” />

</form>

</div>

</div>

定義table時(shí)使用tbody元素,以保證包括IE在內(nèi)的所有瀏覽器可正確使用

即使table沒有顯示定義tbody元素,瀏覽器也會(huì)認(rèn)為tr節(jié)點(diǎn)的父節(jié)點(diǎn)是一個(gè)自動(dòng)添加的默認(rèn)tbody節(jié)點(diǎn).為了避免使用javascript操縱tr節(jié)點(diǎn)時(shí)可能產(chǎn)生的誤會(huì), 還是手動(dòng)添加一個(gè)比較好,如:

<table id=”myTable”>

<tbody id=”myTableBody”>

<tr>

<td>

</td>

</tr>

</tbody>

</table>

注意標(biāo)簽及屬性的大小寫

有的時(shí)候,有些綁定在元素上的事件在IE瀏覽器下響應(yīng),在safari或其他瀏覽器下卻不響應(yīng)。這時(shí)候需要檢查事件綁定方式的正確性,高級(jí)事件的綁定需要區(qū)別IE和其他瀏覽器寫兩套javascript,而簡(jiǎn)單事件模型需要注意一下綁定事件名的大小寫。如:

<input type=”text” name=”keywordSearch” onFocus=”clearValue()” >

這里應(yīng)該用小寫的onfocus,并且顯示的添加標(biāo)簽閉合符號(hào)才是規(guī)范的寫法。

<input type=”text” name=”keywordSearch” onfocus=”clearValue()” />

注意標(biāo)簽的屬性值設(shè)置

<script>標(biāo)簽的language和type屬性

<script>標(biāo)簽的language屬性是用來(lái)定義腳本語(yǔ)言版本的,正確的賦值應(yīng)該形如<script>用來(lái)告訴瀏覽器(主要是IE)使用1.2版本的javascript語(yǔ)法來(lái)解釋;而type屬性才是用來(lái)定義腳本類型的,是w3c的標(biāo)準(zhǔn)屬性,并且使用小寫屬性才是符合標(biāo)準(zhǔn)的做法。如果不是特別情況下需要告訴瀏覽器按照較低版本的javascrip語(yǔ)言進(jìn)行解釋的話(目前大多數(shù)瀏覽器支持的javascript版本是1.5),一般不需要定義language屬性,但是type屬性是需要定義的。所以應(yīng)該把代碼中的

<SCRIPT Language="JavaScript">改為<script>

<a>標(biāo)簽的alt和title屬性

雖然alt和title這兩個(gè)屬性的值在IE下都會(huì)以tool tip的方式在鼠標(biāo)懸停時(shí)顯示,但是二者還是有區(qū)別的。alt是圖片沒有顯示出來(lái)的時(shí)候的替代顯示,而title才是鼠標(biāo)放到上面時(shí)的提示。

<input>標(biāo)簽的checked、readonly屬性

在早期版本的HTML中,并沒有強(qiáng)制規(guī)定所有的屬性都應(yīng)該賦值,在表示一個(gè)選中的復(fù)選框時(shí),<input checked > 這樣的寫法是被認(rèn)可的。但是根據(jù)XHTML的標(biāo)準(zhǔn),這樣的文法并不是一個(gè)嚴(yán)格的XML格式,應(yīng)該注意對(duì)屬性的賦值和標(biāo)簽的閉合,以順應(yīng)HTML標(biāo)準(zhǔn)發(fā)展的趨勢(shì),寫成這樣:

<input checked="checked" />

<input readonly="readonly" />

<option>標(biāo)簽的select ed屬性

與上一條相同的理由,<select>選項(xiàng)中<option>標(biāo)簽的selected屬性也應(yīng)該賦值:

< option selected="selected" />

<img>標(biāo)簽的 align="absmiddle" 屬性

根據(jù)XHTML的標(biāo)準(zhǔn),HTML標(biāo)簽應(yīng)該專注于內(nèi)容的表示,而不是樣式的控制,樣式應(yīng)該交給CSS調(diào)整。所以廢棄了一些舊的標(biāo)簽和屬性,比如<em>標(biāo)簽和<i>標(biāo)簽都會(huì)讓標(biāo)簽內(nèi)容中文字以斜體顯示,但是<i>標(biāo)簽這種單純以樣式命名的標(biāo)簽已經(jīng)屬于廢棄的標(biāo)準(zhǔn)了,取而代之的是表示emphasis(強(qiáng)調(diào))含義的<em>標(biāo)簽。同理,<img>標(biāo)簽的和align="absmiddle" 屬性表示該圖片和相鄰文字垂直居中對(duì)齊,這也是表示樣式的屬性,應(yīng)該使用CSS而不是這個(gè)屬性來(lái)控制圖片的對(duì)齊樣式,避免兩處樣式控制的相互影響。

<iframe>標(biāo)簽的frameborder屬性

在使用iframe時(shí),IE中或許只要設(shè)置border=“0”就可以不顯示iframe的邊框了,但是標(biāo)準(zhǔn)的控制frame窗口邊框的屬性是frameborder,應(yīng)該設(shè)置frameborder=“0”才能在IE之外的其他瀏覽器中同樣隱藏frame的邊框:

<iframe frameborder="0" />

<table>標(biāo)簽的cellpadding屬性

這個(gè)屬性同<img>標(biāo)簽的 align屬性一樣,也是一個(gè)僭越了HTML自身表示內(nèi)容的職責(zé)而控制樣式的一個(gè)屬性,它規(guī)定的是單元之間的空間。從實(shí)用角度出發(fā),最好不要規(guī)定 cellpadding,而是使用 CSS 來(lái)控制單元格的內(nèi)邊距。

<td>標(biāo)簽的nowrap屬性

nowrap是表示內(nèi)容不自動(dòng)換行的屬性,但是同上面的屬性一樣,這是一個(gè)控制樣式的屬性。在 HTML 4.01 中,<td>標(biāo)簽的 "bgcolor"、"height"、"width" 以及 "nowrap" 是不被贊成使用的。在 XHTML 1.0 Strict DTD 中,<td>標(biāo)簽的 "bgcolor"、"height"、"width" 以及 "nowrap" 是不被支持的。

更多信息請(qǐng)查看網(wǎng)頁(yè)制作
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!
相關(guān)閱讀網(wǎng)頁(yè)制作

2025國(guó)考·省考課程試聽報(bào)名

  • 報(bào)班類型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)