2009-11-04 29 views
0

我有一个(可能不是)与我正在寻求建议的CSS背景div独特的问题。我使用Wordpress,它可以动态创建我的页面。首页和其他一些页面使用一种背景(渐变),而内部页面则使用纯白色。现在我被迫有两个样式表 - main.css用于渐变背景,然后是internal.css用于内部 - 仅用于此背景div。如何用Wordpress处理这个C​​SS问题?

有没有办法使用一个css文件并轻松处理这两个背景div?我可能需要使用一点的PHP ...

本质上,我只是试图通过两个不同的背景div,无论是家庭或一些内部页面。

回答

0

您可以在所有页面上使用正常的样式表,设置纯白色背景。然后,你的头版和其他“特殊”的页面上,你可以与背景图像的标记,将覆盖白色:

<head> 
<link rel="stylesheet" type="text/css" href="main.css" /><!-- This has background-color:white; --> 
<?php if(!empty($special)){ 
echo <<<HTML 
    <style> 
    body{ 
     background-color:transparent; 
     background-image:url('image_url'); 
    } 
    </style> 
HTML; 
?> 
</head> 

然后,你只需设置$特别为true或当你的东西在'特殊'页面上。

+0

感谢您的帮助!在Wordpress中,由于它动态生成页面,我将如何分配“特殊”页面? – HollerTrain 2009-11-04 14:23:59

0
<?php 
    if(is_home) { 
     echo '<div class="bg for main page">'; 
    } else { 
     echo '<div class="bg for internal page">'; 
    } 
?> 
+0

如果您尝试在此处粘贴代码段,则不起作用。 – 2009-11-04 14:25:15

2

只要使用不同的模板文件(你本来也应该这样做,因为外观上的不同),并且使用像在身上的标签的ID来检查这样的:

<body id="grad"> 
    ... 
</body> 

<body id="white"> 
    ... 
</body> 

而在你的样式表使用:

#grad { 
    background-image:url(something.png); 
} 
#white { 
    background-color:#FFF; 
} 

确保检查出template hierarchy页面,了解如何轻松创建您需要的模板文件。在home.php中使用#grad和/或应用到首页的自定义模板文件(如果它是静态的),然后在其他所有内容中使用#while(category.php,tag.php,single.php和page .php可能是基础知识)。

+0

如果标题是显示body标签的文件,这将如何工作? – HollerTrain 2009-11-04 18:41:16

0

我没有想到这一点,但这里是代码:

<body<?php if (!is_home()) echo ' style="background-image: url(images/about_bg.png);"'; ?>> 

把它放在头。