a標簽不可以嵌套交互式元素
塊級元素可以包含內聯元素和某些塊級元素,內聯元素不能包含塊級元素,只能包含內聯元素
p標簽不能包含塊級元素
不可包含塊級元素的標簽
li標簽可以包含div以及ul,ul的子元素應該只有li
元素并排(塊級和塊級并列,內聯和內聯并列)
字符實體引發的錯誤
錯誤的使用 role 屬性
行內元素強制轉成塊級元素,塊級元素強制轉成行內元素
使用 disabled=false
頁面中同一個ID出現兩次及以上
內嵌的 script 標簽含有 src 屬性
標簽錯誤嵌套
語法錯誤
* a標簽不可以嵌套交互式元素[a, audio(如果設置了controls屬性), button, details, embed, iframe, img(如果設置了usemap屬性), input(如果type屬性不為hidden狀態), keygen, label, menu(如果type屬性為toolbar狀態),object(如果設置了usemap屬性), select, textarea, video(如果設置了controls屬性)]
下面這些寫法瀏覽器是不能夠正常解析的
a href= a href= click /a /a a href= button click /button /a a href= input type= text /a a href= textarea name= id= cols= 10 rows= 5 /textarea /a a href= a href= click /a /a a href= button click /button /a a href= input type= text /a a href= textarea name= id= cols= 30 rows= 10 /textarea /a
有的雖然解析正常,但卻達不到預想的目的
語義錯誤
頁面可能正常解析,但不符合語義。這是因為瀏覽器自帶容錯機制,對于不規范的寫法也能夠正確的解析,各瀏覽器的容錯機制不同,所以盡量按規范來寫。
* 塊級元素可以包含內聯元素和某些塊級元素,內聯元素不能包含塊級元素,只能包含內聯元素
/*規范的寫法*/ div h2 jikexueyuan /h2 p IT education /p /div /*不規范的寫法*/ span div wrong /div /span
* p標簽不能包含塊級元素
/*不規范的寫法*/ p h1 /h1 /p p div /div /p
* 如下的標簽不可包含塊級元素
h1、h2、h3、h4、h5、h6、p
* li標簽可以包含div以及ul(這個是不是很牛,可以包含父級元素)
/*規范的寫法*/ li ul li /li li /li li li /ul div /div /li /*不規范的寫法*/ ul a href= 迷路的a標簽 /a li /li li /li li /li /ul
* 元素并排(塊級和塊級并列,內聯和內聯并列)
/*規范的寫法*/ div h2 /h2 p /p /div div img src= alt= a href= /a span /span /div /*不規范的寫法*/ div span 我是內聯元素 /span p 我是塊級元素 /p /div
字符實體引發的錯誤
有些字符是 html 預留的,不能夠直接書寫,但是可以通過字符實體來顯示。 如:
空格 - nbsp;
大于符號 -
- amp;
......
但如果稍不注意,在如下的情況下就會引發錯誤:
a href= ?art copy Art and Copy /a
這里的 copy 會被轉換為 符號,從而得不到預期的效果
正確的做法是所有的保留字符全部用實體字符替代。
a href= ?art amp;copy Art and Copy /a
錯誤的使用 role 屬性
role 屬性使用來增強標簽的語義的,但如果使用不當,反而得到負面的效果,所以使用的時候一定要注意。
input type=radio role=progressbar
這里的是一個 input標簽,但是卻通過 role 指定了進度條的語義,但是 input是不能夠作為進度條的,所以這里反而模糊了語義。
行內元素強制轉成塊級元素,塊級元素強制轉成行內元素
如下做法是不推薦的:
給 div 標簽設置 inline-block 屬性
給 span 標簽設置 block 屬性
使用 disabled=false
disabled 屬性是用來禁用標簽的,一般用于 input 、button等,表示不可點擊。
正常的用法是:
input type= text name= lname / input type= text name= lname disabled= disabled /
錯誤的寫法:
input type= text name= name disabled= false /
這里雖然 disabled= false 語義也代表不禁用,但實際上是被禁用的。
頁面中同一個 ID 出現兩次及更多
ID重復會引起元素選擇錯誤,從而引發 Javascript 隱藏問題,因此需要注意。
注:每一個ID會在瀏覽器中生成一個同名的全局變量
內嵌的 script 標簽含有 src 屬性
當 script 標簽包含 src 屬性時,其包含的 Javascript 腳本是不會執行的。
以上就是HTML不能這么寫,你造嗎?的詳細內容,html教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答