网站的加载时间与其功能一样重要。您可以拥有一个很棒的网站,但谁愿意等待它加载呢? CSS 压缩可以帮助您的网站更快地加载并轻松维护其功能。我创建了一个易于使用的 PHP 文件来压缩您的 CSS 以获得最佳的客户端下载时间。
代码
该过程在两个文件中进行:一个我们称之为 css.css 的 PHP 文件(是的,使用“.css”扩展名)和您目录的 .htaccess文件。
这是 css.css 的 PHP:
$css = ''; $root = $_SERVER['DOCUMENT_ROOT'].'/css/'; //directory where the css lives $files = explode(',',$_SERVER['QUERY_STRING']); if(sizeof($files)) { foreach($files as $file) { $css.= (is_file($root.$file.'.css') ? file_get_contents($root.$file.'.css') : ''); } } return str_replace('; ',';',str_replace(' }','}',str_replace('{ ','{',str_replace(array("\r\n","\r","\n","\t",' ',' ',' '),"",preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!','',$css)))));
css.css 文件获取给定的查询字符串并将其在逗号上分解成一个数组。如果查询字符串中有一些东西(应该有,除非程序员搞砸了),应该用逗号分隔,查询字符串就会被分隔成一个数组。对于数组中的每个字符串,脚本会查找具有匹配名称的 CSS 文件。然后脚本将文件的内容附加到字符串变量 ($css)。一旦所有 CSS 内容都在 $css 变量中,CSS 内容就会被清除掉所有空白。更少的空格和一个文件意味着更快的下载速度,因为只有一个压缩文件请求。
下面是您要放入 .htaccess 文件中的代码,以便 css.css 被视为 PHP 文件:
<FILES css.css> SetHandler application/x-httpd-php </FILES>
用法
使用 css.css 文件很简单:
<link href="/css/css.css?reset,base,forms,template" rel="stylesheet" type="text/css" media="screen" />
本质上,在上面的示例中,我们希望使用 reset.css、base.css、forms.css 和模板.css。如果其中一个文件不存在,则不会添加它们(并且没有错误消息)。
你对我的剧本有什么建议吗?有什么想法可以优化 CSS 吗?