2012-01-02 223 views
1

我在的Joomla 1.7開發了一個網站。我想只在主頁上保留背景圖片而不在其他頁面上。更改背景圖片

代碼是這樣的。

HTML

<body> 
<div id="wrapper"> 
    all content goes here 
</div> 
</body> 

CSS

body{margin:0px; padding:0px;} 

#wrapper{background:url(../images/bg-img.jpg) repeat-x;} 

回答

1

正如Purmou提到的,這些方法都將工作,因爲的Joomla從模板中使用相同的index.php,讓每個網頁的網站將包括CSS類或ID,如果你在那裏編寫它。

幸運的是,的Joomla把這個在考慮,你可以很容易地做你正在嘗試用一個簡單的MOD到您的模板做。 Joomla使用所謂的頁面類後綴來讓你製作頁面特定的CSS。每次創建菜單項時,都可以選擇包含僅添加到該菜單項中頁面的頁面類後綴。爲了把該後綴在身體標記,以便你能達到什麼你正在嘗試做的,在你的模板的代碼添加到您的index.php:

<?php 
$app = JFactory::getApplication('site'); 
$params = & $app->getParams('com_content'); 
$pageclass = trim($params->get('pageclass_sfx')); 
?> 
<body id="<?php echo $pageclass ? $pageclass : 'default'; ?>"> 

如果您添加頁面類後綴添加到菜單項目,它將作爲身體標記ID插入。如果你不這樣做,它會使用「默認」。通過這種方式,您可以基於每個頁面控制正文的ID,並針對網站上的每個頁面進行男性更改。

+0

謝謝布倫特,這是我想要的,因爲這是真正聰明的答案。 – RoyalEnfy 2012-01-03 05:39:11

0

撥打第二包裝(只在您的主頁),其中有 「homepage_wrapper」 的ID,並使用CSS設置那個背景。

+0

如何只在網頁上設置第二包裝? – RoyalEnfy 2012-01-02 07:15:42

1

在您的body處給ID,然後爲該頁定義css

這樣的:

HTML:

<body id="home"> 
<div id="wrapper"> 
    all content goes here 
</div> 
</body> 

CSS:

#home #wrapper{background:url(../images/bg-img.jpg) repeat-x;} 
#wrapper{background:red} 
+0

但這個css在每個頁面都會保持不變,意味着每個頁面都會保留背景圖片。可以請你解釋一下 – RoyalEnfy 2012-01-02 07:17:27

+0

背景圖像僅在#wrapper指定 – sandeep 2012-01-02 08:02:31

0

你可以使用它類爲好。

<body> 
<div id="wrapper" class="home"> 
all content goes here 
</div> 
</body> 

CSS:

#wrapper{} 
.home {background:url(../images/bg-img.jpg) repeat-x;} 

如果您將使用(#wrapper指定),將覆蓋。家裏類屬性的背景,所以請確保您將使用在後臺(。家裏)類

+0

我使用Joomla意味着CSS將保持在每一頁相同#home頁面,意味着背景圖像將保留在每一頁上。你能解釋一下你的想法來改變背景圖片嗎? – RoyalEnfy 2012-01-02 07:30:26

+0

您只能將此課程放在主頁上。 不要把這個類放在外部文件中 – 2012-01-02 07:32:56

+0

我不能把這個類只放在主頁上,因爲這個包裝不是這個部分的主容器,我想要適合分辨率的背景圖像,主容器只有960像素的寬度。那麼我怎樣才能在主容器中使用外包裝。希望你能理解。 – RoyalEnfy 2012-01-02 08:55:07