在header.php中包含特定页面的附加样式表

时间:2015-09-20 02:17:34

标签: php html css php-include

我为我网站中的网页配置了一个非常基本的php模板,其中每个index.php包含header.phpfooter.php等。我有一个特定的实例,其中我和#39;我想仅为网站的一个部分添加一组额外的样式,我想知道我是如何注入"注入"针对此特定案例的header.php附加样式表?因此,我宁愿网站中的其他页面不加载此CSS,因为它实际上只适用于这一部分。如果可能的话,我宁愿保持干净,也不要包含CSS内联。

我想知道是否可以使用issetheader.php中的某些内容,我可以在其中包含一个额外的样式表,由适当的index.php

中的变量定义

感谢您的帮助。

更新对于寻求此问题答案的任何未来访问者,我在我的header.php中使用了以下内容,效果很好:

<?php
    if (isset($section_specific_styles))
    {
        echo "<link rel=\"stylesheet\" href=\"main/css/{$section_specific_styles}.css\">";
    }
?>

然后我为那些需要其他样式的页面设置变量$section_specific_styles

2 个答案:

答案 0 :(得分:2)

您可以这样做的一种方法是查看URI并根据检查字符串是否存在而放入适当的CSS文件。

 <?php if (strpos($_SERVER['REQUEST_URI'],"gallery")>-1) { ?>
 <link rel="stylesheet" type="text/css" href="/css/gallery.css" />
 <?php } ?>

或者如果您使用查询参数来确定您所在的页面,您将在header.php文件中执行以下操作:

 <?php if (strpos($_SERVER['QUERY_STRING'],"gallery")>-1) { ?>
 <link rel="stylesheet" type="text/css" href="/css/gallery.css" />
 <?php } ?>

对于每个页面放入header.php文件会有些安全,因为它只包含在具有&#34; gallery&#34;的URI上的样式表。在其中,但这不是执行此操作的最佳方法,因为它需要您跟踪代码中的页面和部分。但是,如果你不得不这样做,这将是实现这一目标的一种方法。

答案 1 :(得分:2)

您可以对页面网址进行测试,并仅在条件为真时添加您的CSS。在下面的代码中,我正在检查页面的URL并将其保存到$page变量。然后我检查是否可以在haystack($page)中找到针(某物),如果可以,请使我们的css可用。

<?php 
  $page = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
  $css ='<link rel="stylesheet" href="mystyle.css">';
  if (false !== strpos($page,'something')) { //test for some string
    echo $css;
  }
?>