PHP的活动导航栏?

时间:2016-08-30 02:34:11

标签: php html css

我正在尝试使用PHP创建一个活动的导航栏,其中当前页面将在导航栏中突出显示或着色。我使用的代码:

<ul class="topmenu">
  <li <?php if($_GET['page']="home") { ?> class="active" <?php } ?>>
    <a href="home.php"><b>Bienvenue</b></a>
  </li>
  <li <?php if($_GET['page']="livres") { ?> class="active" <?php } ?>>
    <a href="livres.php"><b>Livres</b></a>
  </li>
  <li <?php if($_GET['page']="bibliotheque") { ?> class="active" <?php } ?>>
    <a href="bibliotheque.php"><b>Bibliothèque</b></a>
  </li>
  <li <?php if($_GET['page']="universite") { ?> class="active" <?php } ?>>
    <a href="universite.php"><b>L'université</b></a>
  </li>
  <li <?php if($_GET['page']="contact") { ?> class="active" <?php } ?>>
    <a href=""><b>Contact</b></a>
  </li>
</ul>

如果页面是导航栏中的当前页面,则代码将使类中的attribut处于活动状态。但是,在这种情况下,所有属性都将被授予课程。我该如何解决这个问题?

P.S:我不是在寻找任何JS或jQuery替代方案,我只是想用PHP工作。

4 个答案:

答案 0 :(得分:2)

我不使用PHP,但为当前页面指定活动标记,并根据文件进行更改。然后CSS中的单个类定义处理更改每个页面的颜色。

HTML:

<nav>
    <a class="active" href="/home/">Home</a>
    <a href="/cal/">Calendar</a>
    <a href="/CC/">Community</a>
</nav>

CSS:

.active {
    background-color: #4CAF50;
}

答案 1 :(得分:2)

您可以使用$ _SERVER ['SCRIPT_NAME']。

PackageInfo pinfo = context.getPackageManager().getPackageInfo( "com.myapp", 0 );
String verName = pinfo.versionName;
int verCode = pinfo.versionCode;

答案 2 :(得分:0)

  1. 在每个页面的最顶部声明​​页面变量。
  2. 示例:<? $page="home";?>
  3. 对于导航栏中的每个列表项,添加if statment以及相应的变量和活动类。
  4. 示例:<li class="<?if($page=="home"){?>active<?}?>"><a href="home.php"><b>Bienvenue</b></a></li>
  5. 这样做是为每个页面分配一个变量。该变量在导航栏的if语句中进行比较,以确定哪个li获取活动类。

答案 3 :(得分:0)

我正在使用bootstrap 4类。我已经完成了Active Class的选择。

<li class="nav-item">
    <a 
    <?php if ($_SERVER['SCRIPT_NAME'] == "/somepath/yourfile1.php") { ?> 
         class="nav-link active" 
    <?php   } else {  ?>
         class="nav-link"
    <?php } ?> 
         href="yourfile1.php">Home
    </a>
 </li>
<li class="nav-item">
    <a 
    <?php if ($_SERVER['SCRIPT_NAME'] == "/somepath/yourfile2.php") { ?> 
         class="nav-link active" 
    <?php   } else {  ?>
         class="nav-link"
    <?php } ?> 
         href="yourfile2.php">Home
    </a>
 </li>

为进一步的li标签重复此逻辑。希望这对其他人有帮助。