php - HTML 源代码写成一长行是不是很糟糕?

标签 php html minify

我只是想知道。

在我的 PHP CMS 应用程序中,我将大部分生成的 HTML 捕获到缓冲区中,然后在模板页面的正确位置刷新它们的内容。这是由我自己的缓冲区类完成的,我最近添加了一个方法来(某种程度上)使用正则表达式缩小生成的 HTML,将 2 个或更多空格 替换为 一个空格

这样做的结果是,最终的 HTML 根本没有新行。这在浏览器中运行良好,并且显示良好,没有任何问题。

我对任何其他 HTML 缩小方法或执行相同操作的其他 PHP 类不感兴趣。我有一个简单的两行代码,可以完成我需要的一切,并且生成的 HTML 比以前小得多。

我感兴趣的是:拥有一个内容根本没有新行并且将所有源代码放在一个很长的内容中的 .html 文件是否有任何缺点线?

当然,除了人类可读性之外:)我对一些技术(甚至可能是其他)原因感兴趣,这会使这是一种不好的做法。

最佳答案

某些代理或浏览器可能会在单行上处理非常大的 HTML 文件时出现问题。

例如,对于 JavaScript,缩小代码的工具通常会以特定的时间间隔添加换行符。

The Closure Compiler intentionally adds line breaks every 500 characters or so. Firewalls and proxies sometimes corrupt or ignore large JavaScript files with very long lines. Adding line breaks every 500 characters prevents this problem. Removing the line breaks has no effect on a script's semantics. The impact on code size is small, and the Compiler optimizes line break placement so that the code size penalty is even smaller when files are gzipped.

UglifyJS 也做同样的事情:

--max-line-len (default 32K characters) — add a newline after around 32K characters. I’ve seen both FF and Chrome croak when all the code was on a single line of around 670K. Pass –max-line-len 0 to disable this safety feature.

关于php - HTML 源代码写成一长行是不是很糟糕?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18509853/

相关文章:

php - 在 WooCommerce 存档页面中使用自定义字段在表/ ListView 中显示特定产品

php - MySQL 选择总和的记录

javascript - 如何循环遍历具有相同类名的复选框组?

javascript - 显示脚本数据来自数据库而不用javascript执行?

java - REST - 如何缩小 Json 响应

php - 删除子数组中的键

php - 2个sql在一个php while循环中

css - 使用来自 Compass/Codekit 的不同配置将一个 SASS 编译为两个 css

javascript - 为什么展开卡片预览文字在打开和关闭后会变大?

css - 如何自动更新相对 CSS 路径以进行缩小?