除了它对人类不可读之外,当我从html源代码中删除每个换行符和空格时,是否有任何缺点?
浏览器的渲染方式是否不同?渲染会变得更快(或者更慢)吗?
答案 0 :(得分:1)
有很多关于缩小HTML的问题。以下是一些:
答案 1 :(得分:0)
您将拥有较小的文件大小,因此可以下载得更快(尽管它可能不会引起注意)。确实有tools。
答案 2 :(得分:0)
如果删除换行符,则无任何伤害。但是根据你的问题
...当我从html源代码中删除 每个 换行符和空格时?
如果您确实删除了每个换行符和行余额,则可能无法提供您的目的。 您应该只删除额外的换行符和空格。还要注意不要更改数据属性表单数据或任何其他属性。
关于它可以提供的改进:
它可以渲染得更快,因为它需要解析较少的数据。但这种加速非常小。我甚至不鼓励它,因为它降低了可读性,并且CPU的加速速度为几百个时钟周期。下载也一样。它只减少了数据(除非文档有太多的空格)
最好在服务器端输出GZIP压缩。以下是来自php的一行启用它。如果您的服务器中有php,那么只需将* .html文件重命名为* .php,然后在任何输出之前添加以下代码:
if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) ob_start("ob_gzhandler");
您也可以使用.htaccess文件执行此操作。谷歌对此更多。
答案 3 :(得分:0)
有点晚但仍然......通过使用output_buffering,它就像那样简单:
function compress($string)
{
// Remove html comments
$string = preg_replace('/<!--.*-->/', '', $string);
// Merge multiple spaces into one space
$string = preg_replace('/\s+/', ' ', $string);
// Remove space between tags. Skip the following if
// you want as it will also remove the space
// between <span>Hello</span> <span>World</span>.
return preg_replace('/>\s+</', '><', $string);
}
ob_start('compress');
// Here goes your html.
ob_end_flush();