HTML5向后兼容XHTML吗?

简短的问题:我可以将现有X HTML 1.0网站的DOCTYPE更改为 HTML5吗?这会导致任何问题吗?

很长的故事:

我们有一个用ASP.NET webforms编写的网站.由于它很旧,认的DOCTYPE设置为XHTML(Visual Studio认设置),所有控件也都呈现XHTML.不是非常有效,但到目前为止我们在任何浏览器都没有问题.

也就是说,直到最近我们才注意到IE下不同机器上的一些奇怪行为.事实证明,IE认情况下以“兼容模式”呈现内部网网站,从而打破了局面.

现在,我有两个选择.我可以添加

<Meta http-equiv="X-UA-Compatible" content="IE=edge" >

或者我可以添加

<!DOCTYPE html>

我更喜欢DOCTYPE路线,因为它可以为很多简洁的HTML5功能打开大门.但是我想知道它是否会与我们现有的XHTML布局不兼容.

解决方法

首先,IE确实认情况下以兼容模式呈现Intranet站点.但是,这是一个配置设置,可以关闭:如果可能的话,我建议您的第一个解决方案就是在网络上的所有计算机上关闭此设置. (这是否可行的解决方案将取决于您的网络规模,您的组策略以及其他内部网站点将受到影响)

现在回答你的问题.

可以在要以标准模式呈现的任何网站上指定HTML5文档类型.如果您已经在使用XHTML,那么对您来说唯一的影响就是浏览器将不再严格执行严格的XHTML合规性.您完全有权继续使用XHTML代码,但不会强制执行.

HTML5 doctype是专门选择的,因为它适用于现有的浏览器,包括旧版本的IE.你应该可以将它放在任何页面上,它应该可以工作.

它不会对IE进入兼容模式有任何影响.任何其他文件类型也不会.您提到的X-UA兼容解决方案是解决方案(除非您可以设置我之前提到的配置设置),并且与doctype无关 – 即使您使用HTML5 doctype,您仍然需要它.

相关文章

HTML5和CSS3实现3D展示商品信息的代码
利用HTML5中的Canvas绘制笑脸的代码
Html5剪切板功能的实现
如何通过HTML5触摸事件实现移动端简易进度条
Html5移动端获奖无缝滚动动画实现
关于HTML5和CSS3实现机器猫的代码