【问题标题】:Is a webpage loaded/rendered faster with HTML 4 transitional or HTML 5 DTD?使用 HTML 4 过渡或 HTML 5 DTD 加载/呈现网页是否更快?
【发布时间】:2017-04-02 04:22:23
【问题描述】:

我有一个符合HTML 4 transitionalHTML 5 的网页。在最新版本的浏览器中,如果我对页面进行编码以使用 HTML5 DTD(这意味着不要放置 DTD)而不是 HTML 4 过渡 DTD,是否会提高性能(减少加载/呈现页面的时间) ?

【问题讨论】:

  • 您为什么不尝试对其进行基准测试?
  • 为什么要依赖 HTML 中只有 1 行的内容来提高速度。优化 HTML 本身以获得一些速度。
  • 1 行代码更改很容易实现,在这种情况下风险很低,我可以将其扩展到多个页面。我引用的页面只是一个例子。我工作的公司正在考虑转换,我想知道性能影响。

标签: performance html dtd html4


【解决方案1】:

HTML5 doctype 比以前的迭代小了几个字符,这意味着更少的字节和更小的文件大小,这在理论上表明 HTML5 版本具有更好的性能。

但是,我建议如果您所做的只是更改文档类型,那么性能提升将是微乎其微的。

【讨论】:

    【解决方案2】:

    【讨论】:

    • 不,根据那篇文章,Gecko 的新 HTML5 兼容解析器比旧解析器更快。但是无论文档类型是什么,都会使用新的解析器。更改文档类型不会获得速度优势。
    【解决方案3】:

    DTD 只是用来告诉浏览器(和验证器)您使用的 HTML 类型以及您的标签如何被视为“有效”。

    DTD 使用简洁的形式语法,准确地声明哪些元素和引用可能出现在特定类型的文档中,以及元素的内容和属性是什么。

    DOCTYPE 告诉浏览器使用什么模式:严格模式或怪癖模式,它决定了浏览器应该如何布局页面。

    现代网络浏览器中的 HTML 布局引擎执行 DOCTYPE “嗅探”或“切换”,其中作为 text/html 的文档中的 DOCTYPE 确定布局模式,例如“怪癖模式”或“标准模式”。

    HTML5 的文档类型为 <!DOCTYPE html> - 没有 DTD 的 DOCTYPE

    不要混淆它们,它们是不同的东西。

    据我所知,它没有性能提升。但是,使用DOCTYPE 会使浏览器以符合标准(并且更一致,但不完全)的方式跨浏览器布局页面。这是一个“漂亮”的好处,而不是速度。

    由于 Web 浏览器是使用专用 HTML 解析器而不是通用的基于 DTD 的解析器实现的,因此它们不使用 DTD,即使提供了 URL,也永远不会访问它们。 DOCTYPE 在 HTML5 中保留为“大部分无用,但需要”标头,仅用于在普通浏览器中触发“标准模式”。

    【讨论】:

      猜你喜欢
      • 2011-09-13
      • 1970-01-01
      • 1970-01-01
      • 2011-05-08
      • 2012-08-20
      • 2011-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多