我有一个索引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类都运行正常但是包含页面中的样式类不起作用它们只是没有样式
答案 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?>;
。希望有所帮助