学习一些关于XHTML和HTML之间的区别,我看着我们的网页之一的源:此页面是否为正确的HTML编码不正确?
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
这是正确的吗?似乎它试图成为一个HTML页面,但是有一个指向XHTML命名空间的链接?
学习一些关于XHTML和HTML之间的区别,我看着我们的网页之一的源:此页面是否为正确的HTML编码不正确?
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
这是正确的吗?似乎它试图成为一个HTML页面,但是有一个指向XHTML命名空间的链接?
它看起来像有人在使用XHTML文档类型,以及相关的xmlns
属性:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
接着就听到HTML5是闪亮的新文档类型,所以他们改变到和结束:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" >
只是为了说清楚,这是它应该是什么:
<!DOCTYPE html>
<html>
您提供的编码,
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
是完全没问题。这意味着该网页使用XHTML5,即HTML5的XML序列化。但是,如果您希望将页面呈现为适当的XHTML5,则应将页面的内容类型标题发送为application/xhtml+xml
;在XHTML5中不允许使用text/html
。
对于实际的原因(尤其是与以前的IE版本的兼容性,最值得注意的是IE 6),你应该使用HTML5,而不是XHTML5,如下所示:
<!DOCTYPE html>
<html>
注意,当然,前提是该xmlns
属性已被删除。
这意味着你可以放弃'xmlns'属性,因为它不是HTML5所必需的。 – 2011-06-14 11:08:36
@James Allardice然而,它对于XHTML5是必需的。 – mc10 2011-06-14 21:39:37
@ mc10 - 确实如此,但正如答案在谈论HTML5一样,该属性不是必需的(因为答案现在已更新为显示)。 – 2011-06-14 21:44:39