【问题标题】:PHP webpage navigation and active pagePHP网页导航和活动页面
【发布时间】:2015-04-29 16:22:47
【问题描述】:

我有 template.php,并且我在单独的页面中包含了 navigation.php,当我浏览我的网站页面时,我想要的模板是我要使用 css 样式激活的页面,我想链接到 css页面为我的链接采用活动样式链接。

这里是我的 naviation.php 页面。

   <body>
  <?php 
    $directoryURI = $_SERVER['REQUEST_URI'];
    $path = parse_url($directoryURI, PHP_URL_PATH);
    $components = explode('/', $path);
    $first_part = $components[1];
     ?>

    <div id="navigation">
<div class="shell">
    <ul>
 <li class="<?php if ($first_part=="Home") {echo "active";  } else  {echo "noactive";}?>"><a href="Home.php"> <span>HOME</span></a></li>
 <li class="<?php if ($first_part=="About") {echo "active"; } else  {echo "noactive";}?>"><a href="About.php"> <span>ABOUT</span></a></li>
 <li class="<?php if ($first_part=="services") {echo "active"; } else  {echo "noactive";}?>"><a href="services.php"> <span>SERVICES</span></a></li>
 <li class="<?php if ($first_part=="Products") {echo "active"; } else  {echo "noactive";}?>"><a href="products.php"> <span>Products</span></a></li>
 <li class="<?php if ($first_part=="clients") {echo "active"; } else  {echo "noactive";}?>"><a href="clients.php"> <span>Clients</span></a></li>
 <li class="<?php if ($first_part=="contacts") {echo "active"; } else  {echo "noactive";}?>"><a href="contacts.php"> <span>CONTACT</span></a></li>
    </ul>
</div>

这是我的 CSS 样式。

#navigation { background:#4073b9 url(images/navigation.gif) left top repeat-x; height:50px; }
#navigation ul { list-style:none; }
#navigation ul li { float:left; height:42px; line-height:42px;}
#navigation ul li a { float:left; height:42px; line-height:42px; color:#fff; font-size:13px; font-weight:bold; text-decoration:none;  padding:0 0 0 33px;  }
#navigation ul li a span { float:left; height:42px; line-height:42px; padding:0 33px 0 0; }
#navigation ul li a:hover,
#navigation ul li a.active { background:url(images/navigation-active.gif) left top no-repeat; }
#navigation ul li a:hover span,
#navigation ul li a.active span { color:#4073b9; background:url(images/navigation-active.gif) right top no-repeat; }
   <body>
      <?php 
        $directoryURI = $_SERVER['REQUEST_URI'];
        $path = parse_url($directoryURI, PHP_URL_PATH);
        $components = explode('/', $path);
        $first_part = $components[1];
         ?>
        
        <div id="navigation">
	<div class="shell">
		<ul>
     <li class="<?php if ($first_part=="Home") {echo "active";  } else  {echo "noactive";}?>"><a href="Home.php"> <span>HOME</span></a></li>
     <li class="<?php if ($first_part=="About") {echo "active"; } else  {echo "noactive";}?>"><a href="About.php"> <span>ABOUT</span></a></li>
     <li class="<?php if ($first_part=="services") {echo "active"; } else  {echo "noactive";}?>"><a href="services.php"> <span>SERVICES</span></a></li>
     <li class="<?php if ($first_part=="Products") {echo "active"; } else  {echo "noactive";}?>"><a href="products.php"> <span>Products</span></a></li>
     <li class="<?php if ($first_part=="clients") {echo "active"; } else  {echo "noactive";}?>"><a href="clients.php"> <span>Clients</span></a></li>
     <li class="<?php if ($first_part=="contacts") {echo "active"; } else  {echo "noactive";}?>"><a href="contacts.php"> <span>CONTACT</span></a></li>
		</ul>
	</div>
</div>
    </body>

希望你能帮助我,谢谢。

【问题讨论】:

标签: php html css


【解决方案1】:

我平时做的就是这样,简单又安全。

header.php

<div id="navigation">
    <ul>
        <li class="<?php if ($current_page=="home") {echo "active"; }?>"><a href="home.php"><span>HOME</span></a></li>
        <li class="<?php if ($current_page=="about") {echo "active"; }?>"><a href="about.php"><span>ABOUT</span></a></li>
        <li class="<?php if ($current_page=="services") {echo "active"; }?>"><a href="services.php"><span>SERVICES</span></a></li>
        <li class="<?php if ($current_page=="products") {echo "active"; }?>"><a href="products.php"><span>PRODUCTS</span></a></li>
        <li class="<?php if ($current_page=="clients") {echo "active"; }?>"><a href="clients.php"><span>CLIENTS</span></a></li>
        <li class="<?php if ($current_page=="contacts") {echo "active"; }?>"><a href="contacts.php"><span>CONTACT</span></a></li>
    </ul>
</div>

index.php(主页)

<?php
$current_page = 'home';
include('header.php');
?>

/*rest of your page content follows */

关于.php

<?php
$current_page = 'about';
include('header.php');
?>

/*rest of your page content follows */

等等……

并在您的 CSS 中更正这些行:

替换这个:

#navigation ul li a.active { ... }
#navigation ul li a.active span { ... }

有了这个:

#navigation ul li.active a { ... }
#navigation ul li.active a span { ... }

【讨论】:

  • 我没有工作我认为我的 css 页面中的问题导致链接工作正常,但它没有采用 css 的样式,这是我的问题,但感谢您的帮助:3
猜你喜欢
  • 2011-10-08
  • 1970-01-01
  • 1970-01-01
  • 2016-04-06
  • 1970-01-01
  • 1970-01-01
  • 2014-06-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多