0

我这里有这行 CSS 代码...

background-image:url(upload/<?php echo $array['image']; ?>);

但是该死的东西不起作用,我得到的只是一个空白屏幕,图像在数据库中,也在服务器上的正确文件中。PHP 不能与 CSS 一起使用吗?

这不是 CSS 文件

提前致谢,J

这是完整的代码行...

<div style="width:100%; position:relative; margin:0 auto; padding-top:80px; height:350px; background-image:url(upload/<?php echo $array['image']; ?>); background-repeat:no-repeat; background-size:100%; text-align:center; padding-bottom:40px;">
4

7 回答 7

3

第1步:

我想你只是错过了报价,url('something') 所以应该是这样的:

<div style="width:100%; position:relative; margin:0 auto; padding-top:80px; height:350px; background-image:url('upload/<?php echo $array['image']; ?>'); background-repeat:no-repeat; background-size:100%; text-align:center; padding-bottom:40px;">

第 2 步:如果这不起作用,请向我们显示准确的输出,而不仅仅是“它不起作用”,复制显示页面的部分源代码,以便我们查看值是否打印正确,例如

第 3 步:如果还是不行,我建议你使用某些浏览器的“检查元素”功能来查看问题所在。我可以建议 Firefox 的 Firebug 扩展

于 2012-04-28T20:39:27.613 回答
2

在 CSS 文件中?不。(编辑 - 见评论):在技术上可能是可行的,但看起来仍然像一个有很多缺点的计划。

在 PHP(或其他,如 html 模板)生成的输出中内联:是的。

于 2012-04-28T20:25:55.790 回答
0

PHP 不在乎它与什么一起工作。你可以将它用于 CSS 文件、JS 文件、图像,以及任何你想要的 oyu。这里重要的是脚本有一个扩展名,您的网络服务器将识别为 PHP,并且发送了正确的 mime 类型的标头。

如果您将 CSS 嵌入到您的 html 中,那么它应该更容易。如果它不起作用,那么您需要验证获取的输出文件是否确实正确以及选择器是否确实正确。首先尝试对background-image属性进行硬编码,看看是否可行。

于 2012-04-28T20:33:35.203 回答
0

您的服务器很可能没有对 HTML 文件使用 php 解释器。将 html 文件的后缀更改为 .php,它应该可以工作。

于 2012-04-28T20:37:59.030 回答
0

只需将您当前的 .css 文件设置为 .php (或任何 PHP 将执行的文件,.php 将保证工作),然后让服务器将其声明为正确的 MIME 类型。扩展实际上并不重要。

blah.php(以前是 blah.css)

<?php
header('Content-type: text/css');
?>
.thing {blah;}
.other {blah;}
body {
     background-image:url(upload/<?php echo $array['image']; ?>);
}
于 2012-04-28T20:42:52.543 回答
0

如果你想要一个动态的“css”文件,你可以创建一个 php 文件并处理变量。为了使其最佳化,header("Content-type: text/css");在抛出任何东西之前包含,然后放置你的 css 规则,并添加你的变量。

您现在可以调用您的文件<link rel="stylesheet" type="text/css" href="your_php_file.php">,也可以处理参数,例如<link rel="stylesheet" type="text/css" href="your_php_file.php?layout=minimal">

你最终的 php 将是这样的:

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

    body{
            width: 0px; // your coded rules 
            background: url(upload/<?php echo $array['image']; ?> // the dynamic one
    }

是否在路径中添加引号都没有关系。

于 2012-04-28T20:43:23.213 回答
-2

不,PHP 不适用于 CSS,但使用模板引擎,str_replace或者preg_replace您可以<style>在 HTML 中的标签中输出 CSS。虽然这不是最好的主意。

于 2012-04-28T20:26:28.310 回答