有人知道 HTML 作为传输标记语言的效率吗?在我看来,拥有结束标签而不仅仅是一个结束大括号(或只是</>
)会在文件中添加大量文本。带宽是一种宝贵的资源,当数十亿(万亿?)的 HTML 文件不断在世界范围内传输时,这些结束标签就会加起来。
我的问题是它们加起来是否足以产生重大影响。使用更简短的结束标签,页面加载速度会显着提高吗?
有人知道 HTML 作为传输标记语言的效率吗?在我看来,拥有结束标签而不仅仅是一个结束大括号(或只是</>
)会在文件中添加大量文本。带宽是一种宝贵的资源,当数十亿(万亿?)的 HTML 文件不断在世界范围内传输时,这些结束标签就会加起来。
我的问题是它们加起来是否足以产生重大影响。使用更简短的结束标签,页面加载速度会显着提高吗?
不。
如果您想要更小的下载大小,请自动配置您的网络服务器以gzip
压缩所有text/html
响应。
不。相对于图像(和视频!)HTML 仍然很小。加上压缩,它变得更加如此(尤其是重复的字符串(例如标签名称)压缩得很好。
维护成本的增加将抵消带宽节省。
HTML 效率不高,而且所有迹象都表明它的效率会降低。
看看下面的例子:
<b>some bold text</b>
对比
<span class="boldText">some bold text</span>
.boldText {font-weight:bold;}
好的 - 这是一个小例子,但它确实说明了我的观点。
回到 56k 调制解调器的时代,我曾经在客户端编写 Javascript 函数,然后使用 Ajax(在它被称为 ajax 之前)只传递值(而不是描述),然后使用客户端在DOM,这被证明效率提高了大约 20%,但让我思考是否有人会发明 HTML 速记。没有人这样做,相反,我们刚刚升级了我们的连接,你是对的 - 我们正在扔掉大量不需要的东西。
但谁在乎?
一般来说,就带宽而言,HTML 标记并不是限制因素。两个主要原因:
您的观点是正确的,但与音频、视频和图像等富媒体相比,“浪费的空间”可以忽略不计。
HTML,作为一种标记语言,很冗长;但是如果你去掉一些冗长的内容,它会突然变得更加难以处理。
虽然从技术上讲,结束标签增加了 HTML 文件大小的一定百分比,但在所有数据在网络上传播的宏伟计划中,它仍然是无限小的。
如果您真的很担心,您可以随时设置您的网络服务器,以便在提供 html 内容时对其应用压缩。
谷歌在其网页上省略了结束标签,但压缩后节省的成本微乎其微。大多数人更喜欢符合标准并能够验证他们的页面。