我有一个网页是HTML 4 transitional和HTML 5兼容。在最新版本的浏览器中,如果我将页面编码为使用HTML5 DTD(表示不放置DTD)覆盖HTML 4过渡DTD,则性能会有所提高(加载/呈现页面的时间减少) ?用HTML 4过渡或HTML 5 DTD加载/渲染网页是否更快?
回答
的DTD
是只是为了告诉你的标签是如何认为什么类型的,你使用HTML和浏览器(和验证) “有效”。
DTD使用简洁的形式语法,它精确地声明哪些元素和引用可能出现在特定类型的文档中的什么位置,以及元素的内容和属性是什么。
A DOCTYPE
告诉浏览器使用什么样的模式:严格或怪癖模式决定浏览器应该如何布置页面。
在现代Web浏览器的HTML布局引擎执行DOCTYPE“嗅探”或“切换”,其中一个文档中的DOCTYPE担任text/html的确定的布局模式,如“快速模式”或“标准模式”。
HTML5有DOCTYPE <!DOCTYPE html>
- 没有DTD一个DOCTYPE。
不要混淆它们,它们是不同的东西。
据我所知,没有性能收益。但是,使用DOCTYPE
可以使浏览器按照符合标准的(并且更一致,但不是完全)跨浏览器的方式来布置页面。这是一个“英俊”的好处,而不是速度。
由于网页浏览器是通过专用HTML解析器实现的,而不是通用的基于DTD的解析器,所以它们不使用DTD,即使提供了URL也不会访问它们。 DOCTYPE在HTML5中被保留为“最无用的,但必需的”标题,仅用于在常见浏览器中触发“标准模式”。
HTML5解析为5% - 对壁虎快20%
https://hacks.mozilla.org/2010/05/firefox-4-the-html5-parser-inline-svg-speed-and-more/
根据该文章,不,Gecko的新HTML5兼容解析器比旧版解析器要快。但是无论doctype是什么,都使用新的解析器。通过更改文档类型不会带来速度上的好处。 – Alohci 2012-03-14 08:18:24
HTML5文档类型比以前的迭代小了几个字符,这意味着更少的字节和更小的文件大小,理论上这表明HTML5版本具有更好的性能。
但是,我会建议如果你所做的只是改变文档类型,性能提升将是最小的。
- 1. HTML 5网页过渡
- 2. 渲染HTML页面
- 3. 是html 5 <!DOCTYPE html>相当于html 4过渡文档类型吗?
- 4. 使用的HtmlUnit预渲染的Javascript网页(HTML快照)
- 5. DOCTYPE HTML PUBLIC DTD XHTML 1.0过渡
- 6. 哪个DTD更适合移动网站,“XHTML Mobile”或“HTML 5”?
- 7. 是否使用htmlentitiesdecode渲染/解析HTML?
- 8. 从网页流量获取HTML渲染
- 9. 自定义网页控制html渲染
- 10. Rails 5 - turbolinks 5,一些JS没有加载页面渲染
- 11. 通过HTML或CSS渲染订单
- 12. ASP.NET:页面HTML头渲染
- 13. 渲染multipe HTML页面
- 14. iFrame加载后网页停止渲染
- 15. 每个页面渲染是否加载远程库?
- 16. Javascript - 只渲染更新html
- 17. HTML 5帆布图像渲染
- 18. 使用clojurescript渲染HTML页面
- 19. AngularJs - html渲染
- 20. 渲染HTML
- 21. jsRender渲染HTML
- 22. 渲染angularJS HTML
- 23. 渲染HTML
- 24. 预加载html网页或非Flash网页应用程序?
- 25. 与HTML 5的FileReader相当的HTML 4?
- 26. 混合使用HTML 4和HTML 5是否合适(标准)?
- 27. 在html页面加载和渲染期间显示跳动
- 28. 渲染html页面/#:id使用烧瓶
- 29. 渲染MathJax以.html()
- 30. 在HTML网页加载RSS
你为什么不尝试做基准测试? – deceze 2012-03-14 06:46:04
为什么依赖于HTML中速度仅为1行的东西。优化HTML本身以获得一定的速度。 – Joseph 2012-03-14 06:59:05
1行代码更改很容易实现,在这种情况下风险较低,我可以在多个页面上进行扩展。我所引用的页面仅仅是一个例子。我正在为公司工作的公司正在考虑转换,并且我想知道性能影响。 – Eric 2012-03-14 15:06:13