每页都有独特的背景

时间:2012-06-14 16:16:54

标签: php jquery css drupal-7

我正在使用Drupal 7.我的bg图像在page.tpl.php文件和图像中转到css。

我的HTML:

<div class="mainimage" id="mainimg" class="clearfix"></div>

和CSS:

#mainimg {
    background: url("../img/mainimg.jpg") repeat scroll 0 0 transparent;
    height: 500px;
    left: 50%;
    margin-left: -640px;
    position: absolute;
    width: 1280px;
    z-index: 1;
    top:0;
}

我的bg图片显示所有页面。通常情况下。但我想,在每一页上更改我的bg图像。 E.G。

...
mysite.com/index.php -bg image: mainimg.jpg
mysite.com/news -bg image:news.jpg
mysite.com/about -bg image: about.jpg
...

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:2)

您可以使用built-in Drupal functionsbody添加唯一标识符,这样您就可以在CSS中单独定位每个页面。

例如,如果正文有id="news",您可以通过将其添加到CSS来更改背景图片:

#news #mainimg {
    background-image: url("../img/news.jpg");
}

答案 1 :(得分:1)

每页使用不同的课程。

mysite.com/news

HTML

<div class="mainimage news-bg" id="mainimg" class="clearfix"></div>

CSS

.news-bg {
    background: url("../img/news-bg.jpg") repeat scroll 0 0 transparent;
}

mysite.com/about

HTML

<div class="mainimage about-bg" id="mainimg" class="clearfix"></div>

CSS

.about-bg {
    background: url("../img/about-bg.jpg") repeat scroll 0 0 transparent;
}

答案 2 :(得分:-1)

使图像生成php 1)设置标题(“content-type:image / jpg”);
2)检查请求来自哪个页面并选择图像
3)回显图像的二进制数据。

假设这是在文件bg.php中,你必须设置background-image:url('bg.php');

示例:

function currentPageName() {
    return substr($_SERVER["SCRIPT_NAME"],strrpos($_SERVER["SCRIPT_NAME"],"/")+1);
}
if(currentPageName() == "news.html")
    $imagedata = file_get_contents('path/to/news.jpg');
//etc

header('Content-type: image/jpg');
echo $imagedata;