gpt4 book ai didi

php - CSS 样式表中的 If ... else 条件语句处理为 PHP

转载 作者:行者123 更新时间:2023-11-28 18:20:20 25 4
gpt4 key购买 nike

我通过在我的 CSS 文件顶部包含以下内容来将 CSS 样式表作为 PHP 处理:

<?php
header("Content-type: text/css; charset: UTF-8");
?>

我的 CSS 样式表 (style.css) 是这样调用的:

<style type="text/css">@import url("style.css") only screen and (min-device-width: 321px), only print;</style>

我已经按照以下方式修改了我的 Apache 配置文件,使 CSS 文件能够被 PHP 引擎处理:

<FilesMatch "^.*?common.*?$">
SetHandler php5-script
</FilesMatch>

在我的 CSS 文件中,标题下方是常规 CSS 内容,偶尔会有 php 片段,例如

...

<?php echo "* {margin: 10px; padding: 10px;}"; ?>

html
{
background-color: #FFF;
overflow-y: scroll;
}

以上工作正常,但是如果我尝试包含一个 php 条件语句,我会遇到问题。例如,以下内容:

<?php
echo "* {";
if ($fixed_navigation_Home == "none") {echo "display: none;";}
else {echo "display: block;";}
echo "}";
?>

... 只产生:

* {
}

... 而不是 PHP 中请求的两个样式规则之一。

有谁能告诉我可能出了什么问题吗?感谢阅读。

最佳答案

糟糕...

问题是我的变量 $fixed_navigation_Home 是由 Controller 文件声明的。感谢 Alien 先生引起我的注意。

我现在意识到,问题是网页是无状态的:一旦 PHP 处理器处理完页面变量就会被销毁。因此,我的变量没有被“记住”,因为浏览器页面生成后调用了样式表。

由于上面给出的原因,将变量声明为全局变量没有帮助。对于那些对该问题感兴趣的人,还有其他页面解释了如何解决“页面之间传递变量”问题:

https://stackoverflow.com/questions/9726352/using-php-variables-across-different-files

Number of ways to share a variable defined in one PHP file among all the files of a website / application?

Using PHP variables on multiple pages

感谢您的回复。

关于php - CSS 样式表中的 If ... else 条件语句处理为 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17040986/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com