我正在制作一个网站,作为大学作业的一部分。我有一个使用CSS样式的页面导航列表,所以当选择页面时,链接会显示为粗体,旁边有一个图像。我想保留这个菜单的风格,但将这部分html代码移到一个.php文件中,并将其包含在每个页面上,以便代码重用。
然而,这很容易做到,因为我有一个类集来确定选择了哪个页面——改变链接的外观——我将如何将其传递到PHP文件——这可能吗?
下面的代码段。。。
当前HTML列表:
<ul>
<li class="selected"><a href="index.html">Home</a></li>
<li><a href="login.html">Members Login</a></li>
<li><a href="#">Music Categories</a></li>
<li><a href="#">Contact Us</a></li>
</ul>
所选页面的CSS:
nav ul li.selected a
{
color:#fff;
font-weight:bold;
background:url(images/music_note2.png) center left no-repeat;
}
有什么代码我可以用传递页面名称吗?应用程序我从未使用过php。不确定这是否重要,但稍后我还需要在菜单上隐藏或显示某些链接,这取决于用户是否登录
如果你想的话,你可以在css中完成。只需在每个页面的body
中添加一个类,比如home
到主页,contact
到联系人,等等。
<body class="home"> // for home page
...
<body class="contact"> // for contact page
...
然后你在导航中添加相同的类,比如:
<ul>
<li class="home"><a href="index.html">Home</a></li>
<li class="login"><a href="login.html">Members Login</a></li>
<li class="music"><a href="#">Music Categories</a></li>
<li class="contact"><a href="#">Contact Us</a></li>
</ul>
现在,您可以突出显示您的活动菜单项,如:
.home .home a,
.login .login a,
.music .music a,
.contact .contact a {
color:#fff;
font-weight:bold;
background:url(images/music_note2.png) center left no-repeat;
}
最简单的方法是简单地设置一个变量,您所包含的菜单文件将检查该变量:
<?php
$cur_page = 'home';
include('menu.php');
然后在菜单中.php
<li<?php echo ($cur_page == 'home') ? ' class="selected"' : '' ?>><a href etc.....
<li<?php echo ($cur_page == 'members') ? ' class="selected"' : '' ?>> etc....