都不被接收給屬性值加引號(hào)。改寫成等。一些空格的屬性有時(shí)候出現(xiàn)有做括號(hào)而沒有右括號(hào),瀏覽器不宜定按照你的意愿解析,不同的瀏覽器有不同的解析效果,這就有可能造成跨瀏覽器問題。
補(bǔ)足遺漏的屬性。改成等。XHTML不支持只有屬性名稱而沒有值的語法。
將空標(biāo)簽替換為空元素標(biāo)簽。XML解析器要求所有的起始標(biāo)簽都有匹配的結(jié)束標(biāo)簽
要有對(duì)應(yīng)的
,
改寫為等消除重疊。xxxx改寫成xxxx等。不同的瀏覽器對(duì)包含重疊元素的文檔所構(gòu)建的DOM樹不一樣。在重疊元素面前,javascript,css以及其他需要讀取DOM的程序都變得難以創(chuàng)建,排錯(cuò)和維護(hù)。
有效性
有效性比良構(gòu)稍微嚴(yán)格,即不僅要確保文檔的語法正確,還要保證語義正確。保證元素和屬性只能按自身語義出現(xiàn)在恰當(dāng)?shù)牡胤健?/p>
有效性是面向未來開發(fā)的基石。有效的網(wǎng)站與設(shè)備無關(guān),有效的頁面為不同的讀者傳達(dá)相同的信息,就算讀者使用的是界面不相同的瀏覽器。
良構(gòu)和有效性檢查是基本的語法約束保證,接下來要保證語義是恰當(dāng)?shù)摹?/p>
具體實(shí)現(xiàn)方法:
1,加入過渡型DOCTYPE聲明
過渡式DTD讓你不必要完全語義標(biāo)記就能讓文檔通過驗(yàn)證,并且他允許包含i,b和center等這些不推薦使用的表現(xiàn)性元書,因此,在進(jìn)一步改善文檔的語義之前,你可以找出比修復(fù)更嚴(yán)重的結(jié)構(gòu)問題。
2,刪除所有不存在的標(biāo)簽
3,用CSS替代center,i,font等不被推薦或棄用的標(biāo)簽。
4,把行內(nèi)(inline)元素,放在塊(block)元素中
要做到有效,文檔中所有元素是有效的嚴(yán)格性XHTML元素還不夠,還必須保證它們之間的正確關(guān)系,瀏覽器和其他程序處理XHTML需要依賴元素間的正確位置。
布局
1,熟悉元素語義
每一個(gè)元素都應(yīng)各司其職:ul是無序列表,ol是有序列表,table是表格式數(shù)據(jù),blockquote是應(yīng)用,h1~h6是標(biāo)題等。恰當(dāng)?shù)恼Z義元素有助于屏幕閱讀器呈現(xiàn)更容易理解的結(jié)構(gòu),也能保證不同平臺(tái)間正確顯示。對(duì)于初學(xué)者,很多本來語義良好的元書,如ul,blockquote,table等,被濫用與實(shí)現(xiàn)某種特定布局效果。這些濫用的目的是給網(wǎng)頁生成特定的外觀,然而這些外觀難以跨瀏覽器,幾乎除了設(shè)計(jì)者自己的電腦,通常很多地方都不通用的。
2,替換表格布局
基于CSS的頁面比基于表格的頁面更小更簡單。
a)編寫和編輯更容易,下載更快,
b)通過轉(zhuǎn)向CSS,可以節(jié)省帶寬。同時(shí)外聯(lián)的css文件可以緩存和重用,不必隨每次頁面的下載又重下一次。
取代濫用本用于呈現(xiàn)表格數(shù)據(jù)的table元素而使用表格布局,可以考慮頻繁使用的分欄式布局:
1)兩欄,左側(cè)固定寬度的側(cè)欄,右邊是彈性寬度的內(nèi)容欄
2)三欄,左右各固定寬度的側(cè)欄,中間是內(nèi)容。
當(dāng)然我們的頁面也需要漂亮的外觀,以幫助我們?cè)诟偁幹忻摲f而出。這可以通過在獨(dú)立的CSS樣式中放置有關(guān)表現(xiàn)的信息來實(shí)現(xiàn)。CSS用來描述網(wǎng)頁的外觀,而瀏覽器可以自由選擇不同的樣式表或是修改過的樣式表。實(shí)際上,你可以為不同的瀏覽器隨意發(fā)送不同的樣式表,也可以為它們獨(dú)特的能力量身定制。這是響應(yīng)式設(shè)計(jì)的基本實(shí)現(xiàn)方法。
“響應(yīng)式網(wǎng)頁不僅僅是響應(yīng)不同類型的設(shè)備,而且需要響應(yīng)不同的用戶需求。響應(yīng)式的初衷是為了讓信息更好的傳遞交流,讓所有人無障礙的獲取信息,同時(shí)這也是 Web 的初衷。”
出于方便或者是自身的編碼習(xí)慣,在修改某種被更改的需求的樣式代碼時(shí)候,我們很容易在html代碼中直接鑲嵌樣式代碼。這樣的做法除了更快的完成你暫時(shí)的任務(wù)之外沒有任何好處。
4,使用CSS定位替代框架
網(wǎng)站使用框架的理由實(shí)際上就兩種:
(1)為所有頁面引入相同的靜態(tài)內(nèi)容,而不用單獨(dú)編輯每個(gè)頁面。例如導(dǎo)航,網(wǎng)頁頭部尾部。也就是說,單獨(dú)的非框架頁面可能比相應(yīng)的框架頁面更耗帶寬,因?yàn)榭蚣軆?nèi)容每次都要給客戶端重新發(fā)送內(nèi)容。
(2)顯示多欄外觀。例如Java API,包含包和類的列表,主體內(nèi)容
然而,過多使用框架將降低可用性:
(1)難以標(biāo)記數(shù)千或返回指定頁面
(2)難以保存和打印頁面
(3)過多的滾動(dòng)條占據(jù)屏幕的寶貴空間
在每一個(gè)頁面上都有導(dǎo)航和其他相同或幾乎相同的內(nèi)容,對(duì)網(wǎng)站來說是非常普遍的,使用CSS取代框架,關(guān)鍵在于設(shè)立對(duì)應(yīng)每個(gè)框架的div,每個(gè)div內(nèi)容是對(duì)應(yīng)框架里的文檔內(nèi)容。然而,這樣做的問題在于,它違反了DRY原則(Don't Repeat Youself,別重復(fù)你自己),對(duì)于相同的內(nèi)同,雖然有時(shí)候只是很小的變化,但還是需要不斷在這一頁那一頁重復(fù)出現(xiàn)。重復(fù)內(nèi)容通常也是代碼的壞味道。框架在靜態(tài)頁面上避免惡劣不必要的重復(fù),我提倡清晰,可維護(hù)的代碼,在不損害用戶界面的前提下,我更愿意選擇難看的代碼而不是難看的用戶界面。日常中原始的HTML是重復(fù)的,但不是我們必須編輯的,很多時(shí)候我們可以通過后臺(tái)自動(dòng)生成重復(fù)內(nèi)容。
5,正確標(biāo)記列表
正確標(biāo)記列表能夠提升可訪問性,通常我們?cè)诹斜碇袑?shí)現(xiàn)跳轉(zhuǎn)和導(dǎo)航。
6,為圖片添加width和height屬性
width和height屬性能讓瀏覽器更快地樣式化頁面并展現(xiàn)給用戶。但注意,這樣做,對(duì)頁面的顯示速度有提升,但對(duì)下載速度并沒有幫助。
出于一般項(xiàng)目開發(fā)觸覺,改變圖片的尺寸意味著要修改HTML,否則圖片會(huì)奇怪地變大變小。如果需要經(jīng)常改變圖片,比如設(shè)計(jì)頁面是,最好是在最后的階段插入確定的寬度和高度。
網(wǎng)站標(biāo)題:重構(gòu)HTML改善Web應(yīng)用設(shè)計(jì)
網(wǎng)頁地址:http://jinyejixie.com/news/113999.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、定制開發(fā)、Google、ChatGPT、網(wǎng)站設(shè)計(jì)、關(guān)鍵詞優(yōu)化
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源:
創(chuàng)新互聯(lián)
青阳县|
喜德县|
托克逊县|
盐城市|
山西省|
将乐县|
呼伦贝尔市|
芮城县|
东乡县|
阳春市|
SHOW|
内丘县|
黑河市|
平顶山市|
玛曲县|
新疆|
宣城市|
苏州市|
拜泉县|
大洼县|
酉阳|
桐梓县|
黔江区|
林口县|
沙河市|
井研县|
南召县|
曲阳县|
岳阳市|
射阳县|
平远县|
海淀区|
巢湖市|
都江堰市|
阿巴嘎旗|
独山县|
南和县|
龙泉市|
诸城市|
万州区|
兴文县|