这在HTML和PHP中是可行的还是有效的?

Jac*_*ack 0 html css php

我可以把它放在我的HTML中<head>吗?

<link rel="stylesheet" href="http://site.com/some/php/script/userid/style.php" />
Run Code Online (Sandbox Code Playgroud)

基本上,我可以通过URI段(或GET变量)将用户ID传递给PHP脚本 - 它仍然会被有效地视为样式表吗?

因此,例如,如果在我的webapp中用户的页面有自定义CSS样式表,我可以在控制器中动态加载它,将其作为样式表URL输出 - 这可能吗?我知道PHP部分肯定是可能的,但这仍然有效或完全兼容浏览器/服务器吗?

谢谢!

Pek*_*ica 6

我假设你问"这会有用吗?" 而不是"这是有效的HTML?" 为此,请参阅@ Gordon的回答.

如果您的PHP脚本输出text/css内容类型和有效的CSS,这将正常工作.

header("Content-type: text/css");
Run Code Online (Sandbox Code Playgroud)

此标头是FF解释CSS所必需的.看到这里的原因.

还需要添加一些缓存头,否则可能会在每次页面加载时请求资源.

然而...

如果您需要输出动态CSS,请考虑使用静态样式表(即不能由PHP解释的样式表)和所有常规内容,并在文档头部添加动态数据:

<link rel="stylesheet" href="http://site.com/resources/style.css" />

<style type="text/css">
  .userText { color: <?php echo $userTextColor; `> }
  etc. etc. 
</style>
Run Code Online (Sandbox Code Playgroud)

这样,CSS资源可以保持静态文件.它不需要启动PHP进程来获得服务.如果您的CSS参数在页面之间发生变化,这将为您节省HTTP请求.