我正在创建一个CSS导航栏,它存储在名为“includes”的文件夹中。基本上我想要的是,当点击链接时,它变为活动状态。我用“include('includes / header.php');”
链接到这个文件夹
我的CSS是:
nav ul li a {
font-size:22px;
color:#fff;
height:67px;
line-height:67px;
text-decoration:none;
min-width:101px;
text-align:center;
float:left;
background: grey;
border-right:1px solid black;}
nav ul li a.current, nav ul li a:hover {padding-bottom:5px;}
header.php的内容是:
<header>
<div class="container">
<nav>
<ul>
<li><a href="index.php">Home</a></li>
<li><a href="services.php">Services</a></li>
<li><a href="#">Blog</a></li>
<li><a href="/forum/index.php">Forums</a></li>
<li><a href="contact.php">Contact</a></li>
<li><a href="#">Account</a></li>
</ul>
</nav>
如何使用此方法,并在点击时激活每个链接?
答案 0 :(得分:1)
您可以为标题
执行类似的操作<ul>
<li><a <?php if (isThisTheCurrentPage) echo 'class="current"'?> ...>...</a></li>
<li><a <?php if (isThisTheCurrentPage) echo 'class="current"'?> ...>...</a></li>
<li><a <?php if (isThisTheCurrentPage) echo 'class="current"'?> ...>...</a></li>
...
</ul>
一旦我不得不做类似的事情,我通过在每个php文件的开头设置一些变量来实现这一点。然后,header.php必须在if语句中测试这些变量。
答案 1 :(得分:0)
我过去做过类似的事情,与罗曼所说的非常相似:
我将每个页面命名为类似并包含导航文件:
<?php $page = 'one';
require_once'./template/nav.php';?>
以下是我的导航文件的内容:
<ul class="nav navbar-nav">
<li <?php echo ($page == 'one') ? "class='active'" : ""; ?> >
<a href="http://example.com">Home</a></li>
<li <?php echo ($page == 'two') ? "class='active'" : ""; ?> ><a
href="http://example.com/page-two">Page two</a></li>
<li <?php echo ($page == 'three') ? "class='active'" : ""; ?> ><a
href="http://example.com/page-three">page three</a></li>
</ul>
希望有所帮助