PHP包含有CSS问题的file.php

时间:2015-07-12 17:51:32

标签: php html css html5 css3

我有一个索引PHP页面,其中包含所有PHP文件,如index.php?page=example。所有页面都在另一个文件夹中,这是结构:

public_html/index.php
public_html/css/style.php
public_html/pages/

索引从css/style.php调用CSS文件 使用GET函数从index.php调用页面(include pages/example.php)。

如果我运行index.php我没有遇到CSS问题,如果我只运行包含example.php这样的网页,我会遇到CSS问题因为CSS在index.php,显然不会显示CSS正确。

但是当我运行index.php并包含index.php?page=example时,索引CSS显示正确但包含页面中的类不起作用...

我认为include只会导入代码,但服务器似乎有问题,或者我做错了什么?

这是我正在使用的示例代码。这是index.php

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
      <link rel="stylesheet" href="css/style.css"> 
  </head>
  <body>
        <?php 
        include('pages/example.php'); 
        ?>
  </body>
</html>

Index.php所有css类都运行正常但是包含页面中的样式类不起作用它们只是没有样式

2 个答案:

答案 0 :(得分:5)

你不应该在php文件中编写你的css代码。更好地创建一个css文件并将样式指令放在那里。你可以通过以下约定最好地包括css样式,创建一个基本的html模板,如下所示,并链接到你的css文件,并在那里包含PHP。

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
      <link rel="stylesheet" href="part/to/file.css"> <!-- link your stylesheet here -->
  </head>
  <body>
        <?php 
        include('path/to/file.php'); // include your php code here
        ?>
  </body>
</html>

答案 1 :(得分:1)

确保您有标题(&#34;内容类型:text / css&#34;);作为你的PHP文件的第一行,所以它正确呈现为CSS。然后不要包含该文件。而不是像普通的css文件那样引用它只会将.css更改为.php。 <link rel="stylesheet" href="part/to/file.php">。这应该让你工作。我假设您从数据库中提取数据以填写您的CSS,因此请确保它的格式正确。不要使用像.headertext{ color:<?=$row['headercolor'];?>;这样的东西。而是在php标签中声明它。 $color= $row['headercolor'];。然后在css部分php文件中调用那个变量。 .headertext{ color:<?=$headercolor?>;。希望有所帮助