2013-04-29 16 views
1

对于哪个版本的IE,在HTML中使用空元素最小化(自关闭元素)是安全的?

目前我编码到HTML5规范,这让我收自行闭合的元素是这样的:

<br /> 

我已经习惯了的XHTML规范,想继续使用这个大会,但我有理由担心观众与一些相当老的浏览器,并有兴趣知道IE获取支持。

也许不支持的浏览器忽略的空间和斜杠反正,我的担心是多余的?

+0

你一直服务您的XHTML作为'支持application/xhtml + xml'?如果没有,那么改变你的Doctype并不会影响你一直支持的浏览器。 – Quentin 2013-04-29 05:15:15

+0

@Quentin我一直将它作为XHTML使用,但是通过PHP选择性地完成,因此8之前的IE版本很好地实现了它。对于那些接收XHTML版本的页面,我的页面没有文档类型,因为浏览器在以xml呈现时忽略它们。在这里,我主要试图找出我的xhtml习惯是否完全向后兼容。 – OscillatingEthmoid 2013-04-29 05:49:57

回答

1

在HTML5的HTML语法(HTML序列化)中,允许使用表示法<br/>以实现兼容性,意思与<br>相同。标签名称和斜杠之间允许有任意数量的空白字符。在XHTML语法HTML5,所有XML规则强制执行,但你可能不会使用HTML5真正的XHTML,与XHTML的内容类型,因为这将意味着,页面不显示在IE 8及以上的。

当处理HTML(与处理真正的XHTML相反)时,当前使用的所有浏览器都会忽略<br/>中的斜线,无论是否有空格干涉。按照批准的回答质疑Is it still necessary to put a space before closing an empty element in XHTML?最后浏览器所需要的空间是Netscape 4的,但根据评论那里,它是真正的Netscape 3.显然没有版本的IE永远需要它。无论如何,即使是这样,空间的必要性;似乎没有要,将有困难忽略标签斜线<br />浏览器的任何证据。

+0

谢谢!我实际上通过使用PHP来检查HTTP_ACCEPT头来选择性地处理XHTML5。尽管我正在使用的脚本已经很老了,但我知道我可能会或可能不会正确使用HTTP_ACCEPT方法。它还包含一个函数,用于处理text/html格式的空格和正斜杠。这似乎没有必要,因此提出了这个问题。 – OscillatingEthmoid 2013-04-29 05:35:30

3

每个版本!你可以用每个版本来做。

相关问题