这可能是一个新手问题,但我需要知道我需要知道的事情:)
为什么某些html开始标记以正斜杠结尾? 例如:
<meta name="keywords" content="bla bla bla" />
什么是持续的斜线?如果删除它会发生什么?
另外一些其他标签也有这个...我已经删除了一些没有发生任何事情。
答案 0 :(得分:28)
XHTML <foo />
是<foo></foo>
的简写。在HTML中,语法为obscure and marked as "don't do this",因为浏览器不支持它。
如果您正在编写XHTML但是pretending it is HTML(以便不支持XHTML的浏览器(例如Internet Explorer 8)可以处理它),那么规范中定义为EMPTY
的元素必须是用那种方式表示(和那些不是必须的元素)。
答案 1 :(得分:7)
在HTML的早期阶段,找到如下代码并不罕见:
<ul>
<li>item 1
<li>Item 2
<li>Item 3
</ul>
这种方法的问题在于它导致HTML解析非常繁琐,因为通常很难理解意图。因此,解析HTML的开发人员必须依赖一些[通常]不可靠的假设。
为了缓解这个问题,标准委员会要求XHTML为well formed。因此,所有标签都需要同时包含开始标记和结束标记,并使用以下内容替换上述HTML:
<ul>
<li>item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>
这适用于包含内部文本或子元素的标记,但它不适用于独立的标记(例如&lt; br&gt;标记)。为了克服这个问题,在遵守规则规定所有标签必须具有相应的结束标签的同时,标准委员会支持前进斜杠(例如,&lt; br /&gt;)。但应注意,在XHTML中,以下内容也是合法的:&lt; br&gt;&lt; / br&gt;。
答案 2 :(得分:3)
这是没有结束标记的元素的xhtml语法
答案 3 :(得分:1)
在XHTML语法中,<tag />
相当于<tag></tag>