希望我能解释一下我想做什么。我的网站是用PHP构建的,其中包含从mySQL数据库创建的页面。在这种情况下,我想根据文件夹中是否有与页面ID(project_id)相匹配的图像来更改项目页面的正文背景。以下代码可以很好地完成此任务:
<body style="background: url(<?php
$background = dirname(__FILE__) . "/ $myMedia images/bg/ $row[project_id].jpg";
$background = str_replace(" ", "", $background);
if (file_exists($background)) {
echo "images/bg/$row[project_id].jpg";
} else {
echo "images/bg.jpg";
}
?>) repeat-x;" />
但是,如果屏幕尺寸大于767像素,我只想更改页面的背景,否则,我想为手机视图显示不同的背景(bg-mob-380.jpg)。我已经尝试了以下代码,但是它不起作用,而且我不确定自己在做什么错。
<body style="
@media only screen and (max-width: 767px) {
background: #FFFFFF url(images/bg-mob-380.jpg) repeat-x;
}
@media only screen and (min-width: 768px) {
background: url(<?php
$background = dirname(__FILE__) . "/ $myMedia images/bg/ $row[project_id].jpg";
$background = str_replace(" ", "", $background);
if (file_exists($background)) {
echo "images/bg/$row[project_id].jpg";
} else {
echo "images/bg.jpg";
}
?>) repeat-x;
}
" />
任何帮助将不胜感激。在此先感谢:)
您可以通过一种更易于阅读的方式来组织它:
图片的网址应使用单引号/双引号:
已设法解决。我认为,因为我还有另一个链接到页面的样式表,所以我不得不将代码放在该链接之后,以便覆盖CSS文件。这是可以帮助任何人的代码(感谢亚当重写它,因此更易于阅读)