2014-01-22 107 views
-3

我有一個菜單文件「menu_include.php」,它將包含在6個頁面中。我希望每個元素每頁都改變一次。讓我們說我們在「about.php」我想要「約」改變顏色沒有鏈接。我該如何做到這一點Php包含在.css中

+0

這就是樣式表的用途吧? – jboneca

+0

您不能在.css文件中使用PHP(除非您將服務器設置設置爲這樣)。 – putvande

+0

http://www.mstudiostalk.com/2008/03/11/pure-css-to-display-the-active-page-in-the-navigation/ –

回答

3

一個簡單的方法來做到這一點將是包括你的菜單之前設置一個變量,就像這樣。

$currentPage = "about"; // change this on each page. 
include 'menu_include.php'; 

然後在menu_include,你可以做這樣的事情,每個環節

<nav role='navigation'> 
    <ul> 
    <li><a href="#" <?php if(isset($currentPage) && $currentPage == 'home'){ echo ' class="active" '; } ?> >Home</a></li> 
    <li><a href="#" <?php if(isset($currentPage) && $currentPage == 'about'){ echo ' class="active" '; } ?> >About</a></li> 
    <li><a href="#" <?php if(isset($currentPage) && $currentPage == 'clients'){ echo ' class="active" '; } ?> >Clients</a></li> 
    <li><a href="#" <?php if(isset($currentPage) && $currentPage == 'contact'){ echo ' class="active" '; } ?> >Contact Us</a></li> 
    </ul> 
</nav> 

然後,你可以將樣式類.active,你想改變顏色..

.active { 
background:lime; 
} 

編輯:要回答你的問題,是的,你會想要包裝變量,幷包含在這樣的PHP標籤..我沒有把它們放在之前,因爲我假設你只是把它們放在你現有的php標籤中。

<?php 
$currentPage = "about"; // change this on each page. 
include 'menu_include.php'; 
?> 

這聽起來像你可能希望瞭解更多的關於PHP,甚至考慮使用一種流行的CMS像WordPress的 - http://wordpress.org也有很多教程/視頻,可以幫助你,可惜我不要爲你寫所有的代碼;)儘可能地提供幫助。

更新:迴應您的最後一個問題,您可以將懸停狀態添加到您的.onthepage課程中。

.menu > li > a.onthepage:hover { 
    color:#f00; 
    font-weight:bold; 
} 

這樣,當你將它懸停時,它不會改變,我期待這就是你要做的。

+0

你可以爲我做代碼嗎?我有點困惑如何編碼變量。 –

+0

你對什麼感到困惑?比方說,你在about.php你可以像我之前做的那樣包含它,然後在一個聯繫頁面上舉例..你會說$ currentPage ='contact'; – codeaddict

+0

我想完整的代碼放在每一頁上。我有點知道這一點。例如它是這樣的嗎??php $ currentPage =「about」; //在每頁上更改此設置。 包括'menu_include.php'; ?> –