动态 css 文件无法在网络上加载,适用于 xampp
dynamic css file won't load on web, works on xampp
这是我的第一个问题,我会努力做好的。
我在开发中为我的网站使用 DSS 文件,因为我想 "display:none" 如果满足某些条件(用户已登录 -> 不需要注册表格)一些 div
所以我的 index.php 链接样式表的头标签如下所示:
<link rel="stylesheet" href="css/default.php" type="text/css">
default.php CSS 文件的开头如下:
<?php
session_start();
header('Content-type: text/css');?>
在我的本地网络服务器上(xampp 在 OS X 上)一切正常。
但是在在线服务器上 css 没有应用。您可以在这里访问损坏的网站:
hsturnierv2.pixelpioniere.net
它链接了正确的文件,但未应用样式。
编辑:
永远不要低估换行符的力量。
CSS 文件中的 php 标签没有从第 1 行开始。谢谢!
您在 CSS 文件中插入了 PHP 代码,这是错误的,请将其删除。
<?php
session_start();
header('Content-type: text/css');?>
这是你的 PHP 文件。
检查服务器返回您的 css 的 MIME 类型。 https://developer.mozilla.org/en-US/docs/Incorrect_MIME_Type_for_CSS_Files
注意:即使您希望它以您想要的方式工作,您也应该 double-check 如果 CSS 文件大小的减少弥补了无法缓存 CSS client-side.
除此之外,实际问题是您在 header 已经发送时尝试修改 header 信息。这会将错误消息输出放在 css 之上,使其无效。
<br />
<b>Warning</b>: session_start(): Cannot send session cache limiter - headers already sent (output started at /www/htdocs/w011c30e/hst/public_html/css/default.php:2) in <b>/www/htdocs/w011c30e/hst/public_html/css/default.php</b> on line <b>3</b><br />
<br />
<b>Warning</b>: Cannot modify header information - headers already sent by (output started at /www/htdocs/w011c30e/hst/public_html/css/default.php:2) in <b>/www/htdocs/w011c30e/hst/public_html/css/default.php</b> on line <b>4</b><br />
您的服务器在实际 css:
之前发送错误消息
http://hsturnierv2.pixelpioniere.net/css/default.php
禁用错误显示,或修复 headers 的问题。
我去你的 CSS link 并收到警告:
Warning: session_start(): Cannot send session cache limiter - headers already sent
这意味着您的脚本文件在 session_start() 之前为客户端发送输出。
- 确保
<?php
之前绝对没有空格或其他字符
- 如果失败,请尝试注释掉 session_start(),因为您的包含之一可能已经开始会话,如下所示:
/**session_start(); **/
这是我的第一个问题,我会努力做好的。
我在开发中为我的网站使用 DSS 文件,因为我想 "display:none" 如果满足某些条件(用户已登录 -> 不需要注册表格)一些 div
所以我的 index.php 链接样式表的头标签如下所示:
<link rel="stylesheet" href="css/default.php" type="text/css">
default.php CSS 文件的开头如下:
<?php
session_start();
header('Content-type: text/css');?>
在我的本地网络服务器上(xampp 在 OS X 上)一切正常。 但是在在线服务器上 css 没有应用。您可以在这里访问损坏的网站:
hsturnierv2.pixelpioniere.net
它链接了正确的文件,但未应用样式。
编辑:
永远不要低估换行符的力量。 CSS 文件中的 php 标签没有从第 1 行开始。谢谢!
您在 CSS 文件中插入了 PHP 代码,这是错误的,请将其删除。
<?php
session_start();
header('Content-type: text/css');?>
这是你的 PHP 文件。
检查服务器返回您的 css 的 MIME 类型。 https://developer.mozilla.org/en-US/docs/Incorrect_MIME_Type_for_CSS_Files
注意:即使您希望它以您想要的方式工作,您也应该 double-check 如果 CSS 文件大小的减少弥补了无法缓存 CSS client-side.
除此之外,实际问题是您在 header 已经发送时尝试修改 header 信息。这会将错误消息输出放在 css 之上,使其无效。
<br />
<b>Warning</b>: session_start(): Cannot send session cache limiter - headers already sent (output started at /www/htdocs/w011c30e/hst/public_html/css/default.php:2) in <b>/www/htdocs/w011c30e/hst/public_html/css/default.php</b> on line <b>3</b><br />
<br />
<b>Warning</b>: Cannot modify header information - headers already sent by (output started at /www/htdocs/w011c30e/hst/public_html/css/default.php:2) in <b>/www/htdocs/w011c30e/hst/public_html/css/default.php</b> on line <b>4</b><br />
您的服务器在实际 css:
之前发送错误消息http://hsturnierv2.pixelpioniere.net/css/default.php
禁用错误显示,或修复 headers 的问题。
我去你的 CSS link 并收到警告:
Warning: session_start(): Cannot send session cache limiter - headers already sent
这意味着您的脚本文件在 session_start() 之前为客户端发送输出。
- 确保
<?php
之前绝对没有空格或其他字符
- 如果失败,请尝试注释掉 session_start(),因为您的包含之一可能已经开始会话,如下所示:
/**session_start(); **/