我想使用php突出显示菜单中的活动页面。该页面是静态版本,只有普通文件使用include中的include来调用,即header.php,footer.php,navigation.php
navigation.php
<div class="collapse navbar-collapse" id="navbar-collapse-1">
<ul class="nav navbar-nav">
<li class="active"><a href="index.php">Home</a></li>
<li><a href="contact-us.php">Contact</a></li>
</ul>
</div>
的index.php
<?php
// Including Files
include('includes/header.php');
include('includes/navigation.php');
?> Rest HTML code goes here
答案 0 :(得分:3)
<强> PHP 强>
$activePage = basename($_SERVER['PHP_SELF'], ".php");
<强> HTML 强>
<ul class="nav navbar-nav">
<li class="<?= ($activePage == 'index') ? 'active':''; ?>"><a href="index.php">Home</a></li>
<li class="<?= ($activePage == 'contact-us') ? 'active':''; ?>"><a href="contact-us.php">Contact</a></li>
</ul>
答案 1 :(得分:0)
您应该在navigation.php文件中的每个li class属性中使用条件语句。使用$ _SERVER [&#34; PHP_SELF&#34;]预定义变量,例如用于联系人链接:
<li class="<?php $_SERVER['PHP_SELF'] === '/contact-us.php' ? 'active' : '' ?>"><a href="contact-us.php">Contact</a></li>
答案 2 :(得分:0)
您可以在每个页面的<li>
元素中添加适当的类,然后稍后使用一些CSS突出显示相应的页面按钮。
代码示例:
<强> navigation.php 强>
<div class="collapse navbar-collapse" id="navbar-collapse-1">
<ul class="nav navbar-nav">
<li class="index"><a href="index.php">Home</a></li>
<li class="contact><a href="contact-us.php">Contact</a></li>
</ul>
</div>
<强>的index.php 强>
// after php includes
<head>
.index {
color:red;
}
</head>
与-us.php 强>
// after php includes
<head>
.contact {
color:red;
}
</head>
......等等。
答案 3 :(得分:-1)
您可以使用以下内容:
.active, .home:hover {
background-color: #666;
color: white;
}
&#13;
<div class="collapse navbar-collapse" id="navbar-collapse-1">
<ul class="nav navbar-nav">
<li class="home active"><a href="index.php">Home</a></li>
<li><a href="contact-us.php">Contact</a></li>
</ul>
</div>
&#13;
答案 4 :(得分:-2)
您为ID
提供#activeHome
和#activeContact
。
<li><a href="index.php" id="activeHome">Home</a></li>
然后,您更改HTML
仅在Home
加载,例如background
。
<style>
#activeHome {
background:blue;
}
</style>
在页面Contact
上对应。