【问题标题】:Gzip compressed css file with php header, first css line does not work带有 php 头的 Gzip 压缩 css 文件,第一个 css 行不起作用
【发布时间】:2024-01-22 13:27:01
【问题描述】:

我正在使用 gzip 压缩我的文件,所以我需要将以下代码添加到顶部。

ob_start("ob_gzhandler");
header("content-type: text/css; charset: UTF-8");
header("cache-control: must-revalidate");
header("expires: ".gmdate('D, d M Y H:i:s', time() + 1000)." GMT"); 

现在的问题是我文件中的第一行 css 代码不起作用。例如

body{
  color: red;
  font-weight: bold;
}

使用它,文本将是粗体但不是红色。

期待建议。

提前致谢。

【问题讨论】:

    标签: php css header compression gzip


    【解决方案1】:

    编辑:

    从cmets看来,原来是因为:

    php 代码插入了一些东西 进入css文件。

    可能:


    font-color 属性不存在。

    请改用color: red

    如果文本确实是粗体,那么您的 CSS 文件可以正常工作,因此应该不会有任何问题。

    虽然我认为你的 PHP 的最后一行应该是:

    header("expires: ".gmdate('D, d M Y H:i:s', time() + 1000)." GMT"); 
    

    【讨论】:

    • 好吧,我确实在帖子中对其进行了编辑,但这绝对不是问题。我在测试时确实使用了正确的 css。它真的只是不适用于第一行。删除 php 代码的第一行有效,如果代码在那里,它不会。还有其他想法吗?
    • 我想不出body{color:red;font-weight:bold} 会导致“非红色”粗体文本的单一场景。如果整个选择器被忽略(“不是红色”并且不是粗体),那将是有意义的。要么是您没有提出问题,要么是一些非常奇怪的问题,例如:*.com/questions/4944067/… 另外,如果您这样做body{font-weight:bold;color:red} 会发生什么-您得到的文本不是粗体而是红色的吗?
    • 如果您可以制作一个包含完整测试用例的.zip 文件或类似文件,那将有所帮助。
    • 谢谢老兄,这是一个奇怪的问题案例。显然 php 代码在 css 文件中插入了一些东西。我重做了标题部分,现在它就像一个废话。谢谢。如果您可以将此部分作为答案发布,我可以将其作为正确答案进行检查。
    最近更新 更多