我们在 Magento 上有一个标准的导航栏,我已经设法复制它(通过复制和编辑 HTML/CSS 的位)并将其放置在原始导航栏下方 - 所以我们实际上有 2 个。
原始导航栏通过 Magento 代码工作,并识别类别 URL 是否处于活动状态,然后该类别的导航栏以红色突出显示。
我现在想尝试复制这个。我在本地做这个。
HTML:
<div class="nav-container2">
<ul id="nav2">
<li class="downloads"><a href="http://127.0.0.1/foscamsite/downloads" id="Downloads"><span>Downloads</span></a></li>
<li class="forum"><a href="http://127.0.0.1/foscamsite/forum" id="Forum"><span>Forum</span></a></li>
</ul></div>
CSS:
.nav-container2 { width:940px; margin:auto; height:30px;}
#nav2 { width:547px; height:40px; float:right; margin:1px 0 0 0; font-size:105%; background:url(../images/bg-nav.png) 0 0 repeat-x; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; box-shadow:0 0 3px #ccc; }
#nav2 li { position:relative; text-align:left; }
#nav2 li.over { z-index:998; }
#nav2 a,
#nav2 a:hover { display:block; line-height:1.3em; text-decoration:none; }
#nav2 span { display:block; cursor:pointer; white-space:nowrap; }
#nav2 li ul span {white-space:normal; }
#nav2 ul li.parent a { background:url(../images/bkg_nav2.gif) 100% 100% no-repeat; }
#nav2 ul li.parent li a { background-image:none; }
#nav2 li { float:left; margin:0 1px 0 0; }
#nav2 li.active a { background:url(../images/bg-nav-hover.png) 0 0 repeat-x; color:#fff; }
#nav2 a { float:left; padding:12px 14px 11px; color:#787878; font-size:105%; }
#nav2 li.over a,
#nav2 a:hover { background:url(../images/bg-nav-hover.png) 0 0 repeat-x; color:#fff; }
感觉有些 CSS 是不需要的,只是不知道从哪里开始修改它。
试试这个。请注意,我已经去掉了服务器地址并使 URL 相对,因此希望它能让迁移到实时服务器变得更简单:
<?php
echo "<div class=\"nav-container2\">\n";
echo "<ul id=\"nav2\">\n";
echo "<li class=\"downloads";
if ($_SERVER['REQUEST_URI'] == "/foscamsite/downloads") echo " active";
echo "\"><a href=\"/foscamsite/downloads\" id=\"Downloads\"><span>Downloads</span></a></li>\n";
echo "<li class=\"forum";
if ($_SERVER['REQUEST_URI'] == "/foscamsite/forum") echo " active";
echo "\"><a href=\"/foscamsite/forum\" id=\"Forum\"><span>Forum</span></a></li>\n";
echo "</ul>\n";
echo "</div>\n";
?>
如果您在标题上方添加 php 变量并将其用于导航中的活动状态,这可能会更容易做到。
例如:
<?php $page = $_SERVER['REQUEST_URI']; ?>
<div class="nav-container2">
<ul id="nav2">
<li <?php if ($page == 'downloads.php') { ?>class="active"<?php } ?>><a href="downloads.php" id="Downloads"> <span>Downloads</span></a></li>
<li <?php if ($page == 'forum.php') { ?>class="active"<?php } ?>><a href="forum.php" id="Forum"><span>Forum</span></a></li>
希望这有帮助