例如:<div/>
而不是<div></div>
。
我做了这个,显然HTML5验证器将此传递为有效。我想知道这是真的吗?
PS:我正在以application / xhtml + xml
的形式提供页面答案 0 :(得分:20)
这是不有效的HTML 5(HTML不允许使用短标签,等效的HTML结构是单个开放div
标记)。它是有效的XHTML 5,因为它是有效的XML。
你可能会看到这个通过验证器的原因很好,这是因为你所说的:
PS:我正在以application / xhtml + xml
的形式提供页面
这意味着您告诉验证者它必须将您的标记视为XML。换句话说,您的网页根本不是 HTML 5。
答案 1 :(得分:14)
specific subset of HTML5 elements允许使用该语法,称为void
elements,以及其他一些案例:
然后,如果元素是void元素之一,或者元素是外来元素,则可能存在单个U + 002F SOLIDUS字符(/)。此字符对void元素没有影响,但在外部元素上,它将开始标记标记为自动关闭。
无效元素:
area,base,br,col,command,embed,hr,img,input,keygen,link,meta,param,source,track,wbr
其他任何人都不允许这样做,包括<div>
。
(我原来回答是的,这是有效的HTML5,因为它是XML中常见的结构.Rex M,并且仔细阅读spec,告诉我我错了)< / p>
答案 2 :(得分:0)
不,技术上使用自动关闭<div/>
标记是无效的HTML5。使用<div></div>
可以正常工作。