更改PHP包含的标头上的CSS

时间:2019-07-23 14:20:20

标签: javascript php html css

我想使用<?php include 'header.php';?>为网站的每个页面都包含一个标题,因此我只需要在一个地方更改标题即可。该网站将在总共20多个不同的页面上重复使用标题。我想知道的是,在使用php include时如何更改特定的突出显示文本?

我创建了一个网站,该网站的标题包含5个链接(家庭,投资组合,关于,联系方式和商店)。目前,我正在使用CSS代码通过突出显示所选链接(Page)向用户显示他们在网站的哪个部分。

在下面的示例中,主页“链接”以白色突出显示。 (请参见下面的CSS代码。)

下面的代码在标题中:

<nav>
<ul>
    <li><a id="selected" href="index.html">Home</a></li>
    <span>|</span>
    <li><a href="portfolio.html">Portfolio</a></li>
    <span>|</span>
    <li><a href="about.html">About</a></li>
    <span>|</span>
    <li><a href="contact.html">Contact</a></li>
    <span>|</span>
    <li><a href="store.html">Store</a></li>
</ul>
</nav>

CSS代码:

/* Selected Link */
#selected {
color: white;
}

我是否需要一些代码来检测网站的某些部分,或者可以通过一些简单的方法手动操作突出显示的链接?这种事情的最佳实践是什么。谢谢您的投入。

2 个答案:

答案 0 :(得分:3)

您可以在包含页眉之前在每个页面上添加$pageName变量。例如在家:

$pageName = 'home';
<?php include 'header.php';?>

....

在header.php内

<nav>
<ul>
    <li><a id="<?php echo $pageName == 'home' ? 'selected' : ''?>" href="index.html">Home</a></li>
    <span>|</span>
    <li><a href="portfolio.html">Portfolio</a></li>
    <span>|</span>
    <li><a href="about.html">About</a></li>
    <span>|</span>
    <li><a href="contact.html">Contact</a></li>
    <span>|</span>
    <li><a href="store.html">Store</a></li>
</ul>
</nav>

答案 1 :(得分:1)

这很适合您:

//PHP :

$curr_page = $_SERVER['REQUEST_URI']; // or basename(__FILE__)

//HTML :

<nav>
<ul style="background: #c02828;">
    <li><a <?php if (strpos($curr_page, "index.html") !== false){ ?>id="selected" <?php } ?> href="index.html">Home</a></li>
    <span>|</span>
    <li><a <?php if (strpos($curr_page, "portfolio.html") !== false){ ?>id="selected" <?php } ?> href="portfolio.html">Portfolio</a></li>
    <span>|</span>
    <li><a <?php if (strpos($curr_page, "about.html") !== false){ ?>id="selected" <?php } ?> href="about.html">About</a></li>
    <span>|</span>
    <li><a <?php if (strpos($curr_page, "contact.html") !== false){ ?>id="selected" <?php } ?> href="contact.html">Contact</a></li>
    <span>|</span>
    <li><a <?php if (strpos($curr_page, "store.html") !== false){ ?>id="selected" <?php } ?> href="store.html">Store</a></li>
</ul>
</nav>