Git*_*idd 9 html javascript css php html5
这是我的第一篇文章,原谅我在网络开发领域的新篇章.
通常,当我尝试创建一个网站时,我创建了一个名为header.html和footer.html的文件,这样我只在所有页面中更改一次数据,而不是在许多html文件上有多个相同的标题.并将它们全部包含在php文件中,以及每页显示的内容和php代码.
现在我的问题是因为我只有1个标题,css的设计方式无论当前菜单/标签是什么,它都会被标记为"已选择",这样就可以向用户显示它们当前所在的页面.
我的问题是如何解决这个问题:
1.)class="selected"取决于当前页面/网址是什么.
<!--Menu Starts-->
<div class="menu">
<div id="smoothmenu" class="ddsmoothmenu">
<ul>
<li><a href="index.php" class="selected">Home</a></li>
<li><a href="about.php">About</a> </li>
<li><a href="services.php">Services</a> </li>
<li><a href="features.php">Features</a></li>
<li><a href="#">Support</a>
<ul>
<li><a href="support1.php">Support 1</a></li>
<li><a href="support2.php">Support 2</a></li>
</ul>
</li>
</ul>
</div>
</div>
<!-- Menu Ends--!>
Run Code Online (Sandbox Code Playgroud)
谢谢 :)
Chr*_*ray 13
如果你正在寻找一个非javascript/php方法......
首先,您需要确定应将哪个导航链接设置为活动,然后添加所选类.代码看起来像这样
php文件中的HTML
<a>在链接目标请求uri中传递的超链接标记内部调用php函数
<ul>
<li><a href="index.php" <?=echoSelectedClassIfRequestMatches("index")?>>Home</a></li>
<li><a href="about.php" <?=echoSelectedClassIfRequestMatches("about")?>>About</a> </li>
<li><a href="services.php" <?=echoSelectedClassIfRequestMatches("services")?>>Services</a> </li>
<li><a href="features.php" <?=echoSelectedClassIfRequestMatches("features")?>>Features</a></li>
<li><a href="#">Support</a>
<ul>
<li><a href="support1.php" <?=echoSelectedClassIfRequestMatches("support1")?>>Support 1</a></li>
<li><a href="support2.php" <?=echoSelectedClassIfRequestMatches("support2")?>>Support 2</a></li>
</ul>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
PHP功能
php函数只需要比较传入的请求uri,如果它与正在渲染的当前页面匹配,则输出所选择的类
<?php
function echoSelectedClassIfRequestMatches($requestUri)
{
$current_file_name = basename($_SERVER['REQUEST_URI'], ".php");
if ($current_file_name == $requestUri)
echo 'class="selected"';
}
?>
Run Code Online (Sandbox Code Playgroud)