【问题标题】:Value of whitespace in html source codehtml源代码中空格的值
【发布时间】:2010-02-26 15:03:45
【问题描述】:

我正在使用一个函数来生成 php 中的所有输出。使用该功能,我可以控制是否显示这样的代码:

<html><header></header><body><p>Hello World!</p></body></html>

或者像这样

<html>
<header>
</header>
<body>
    <p>Hello World!</p>
</body>
</html>

包括缩进和所有。

显示缩进和间隔的代码是否有特殊价值(除了看似较慢的加载时间)?我通常不需要查看源代码,因为我可以简单地访问 PHP 文件。在开发过程中,我很可能更喜欢空白,但在生产时它一定是有利的吗?

谢谢!

【问题讨论】:

    标签: html whitespace code-formatting


    【解决方案1】:

    如果您可以选择的话,我会把它留出空间,用空白来制作 可读 并没有什么问题,而使用 GZip,它使下载的差异不是那么重要。你永远不知道什么时候你必须调试一个样式,相信我,它现在可以为你节省时间,相信我。

    【讨论】:

    • 以易读性为代价的简洁性也不是我认为的良好编码实践。 +1
    【解决方案2】:

    所有的空格都被压缩成一个空格,而不是什么都没有,所以会有细微的差别。例如:

    <img src="image.jpg"><img src="image2.jpg">
    

    会产生与此略有不同的结果:

    <img src="image.jpg">
    <img src="image2.jpg">
    

    因此,至少在标签之间使用一个空格/换行符。就我个人而言,我更喜欢在实时站点上使用间距,因为它有助于实时调试,而且在使用 gzip 时,空格和无空格之间的差异仍然很小。

    当然,这也有助于那些可能希望了解“它是如何完成的”的新开发人员。

    【讨论】:

    • 您的第二个示例与第一个示例的输出相同,两个标签之间有一个空格,顺便说一句。
    【解决方案3】:

    我更喜欢省略空格,尤其是在生产环境中。

    您仍然可以通过 Firebug 查看代码。没有理由做“查看源代码”。

    请注意,空格可能会导致一些问题,因为它们被视为空格。

    【讨论】:

    • 是的!如果像 FireBug 或同等工具这样的工具可以让您阅读它,那么手动操作(尤其是在模板/包含之间)会浪费大量时间。 (换行符可能很有价值,但管理标签?没那么多。)
    • 是的,这也是强项。虽然添加新空间并不难,而且使用 GZIP 也不会产生影响,但如果不管理标签,它就没有任何价值。这对 PHP 来说真的很难。
    【解决方案4】:

    如果你去掉空格,你会后悔有一天你必须在某个远程客户端机器上的 Internet Explorer 中查看源代码,并且不得不通过一大堆 HTML 标记。

    【讨论】:

      【解决方案5】:

      空白会不必要地积累网络带宽。不,GZIP 不会 100% 修复它。我自己从响应中删除所有空白,然后通过 GZIP 传递它。唯一关心 HTML 源代码中空白的人是对页面源代码的外观感到好奇的 Web 开发人员。它们真的不值得浪费网络带宽——除非你实际上是唯一的访客;)

      【讨论】:

        【解决方案6】:

        是 Javascript 还是 PHP 生成您的 Html?无论哪种方式 - 使用转义字符。

        \n = 换行

        \t = 制表符

        \r = 回车

        <?php echo "This is a test. <br> \n"; ?> 
        

        【讨论】:

        • 问题是“为什么?”不是“如何?”
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-08-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-08-22
        • 1970-01-01
        相关资源
        最近更新 更多