我有一个(可能不是)独特的问题与css背景div我正在寻求建议。我正在使用Wordpress,它动态创建我的页面。首页和其他一些页面使用一种背景(渐变),而内部页面使用纯白色。现在我被迫有两个样式表 - 渐变背景的main.css,然后是内部的internal.css - 仅用于此背景div。
有没有办法使用一个css文件并轻松处理这两个背景div?我可能需要使用一些PHP ...
基本上我只想在家里或内页上传递两个不同的背景div。
答案 0 :(得分:2)
只需使用不同的模板文件(由于外观不同,你应该这样做),并在body标签上使用类似ID的内容进行检查:
<body id="grad">
...
</body>
或
<body id="white">
...
</body>
并在样式表中使用它:
#grad {
background-image:url(something.png);
}
#white {
background-color:#FFF;
}
请务必查看WordPress codex中的template hierarchy页面,了解如何轻松创建所需的模板文件。在home.php中使用#grad和/或应用于首页的自定义模板文件(如果它是静态的),然后在其他所有内容中使用#while(category.php,tag.php,single.php和page .php可能是基础知识。)
答案 1 :(得分:0)
<?php
if(is_home) {
echo '<div class="bg for main page">';
} else {
echo '<div class="bg for internal page">';
}
?>
答案 2 :(得分: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>
然后,当你在'特殊'页面时,你只需将$ special设置为true或其他东西。
答案 3 :(得分:0)
我没有想到这一点,但这里是代码:
<body<?php if ( !is_home() ) echo ' style="background-image: url(images/about_bg.png);"'; ?>>
将它放在标题中。