2010-07-22 90 views
0

我有menu.php,并在menu.php<head>部分,我有menu.css是理所当然的link rel标签,两者完全正常工作。正确的链接相对CSS样式表没有得到执行的菜单

由于menu.php是一个'菜单',我在require d它需要一个'菜单'以浏览网站。但是,只要我 menu.php在其自己的 CSS样式表,menu.php继承<body>字体大小的其他样式表。

这是我想说:如果我requiremenu.phpprofile.phpmenu.php元素会变成什么,而不是他们真的应该是(menu.css)的profile.css大小。我如何解决以下问题?目前,我是requiringmenu.php之前的<html>标记。

我应该把这个放在<head>以内吗?别的地方?

谢谢。


某些代码从menu.php:

<html> 
<head> 
<link rel="stylesheet" type="text/css" href="menu.css" /> 
</head> 
<body> 
</body> 
</html> 

我已经把我的PHP代码上述文件中的<html>标记之前。

下面的代码来自main.php

<head> 
<link rel="stylesheet" type="text/css" href="main.css" /> 
</head> 
+0

Euhm,通过各种手段,建立有效的HTML(在标记之前的内容?),与W3C验证同时验证HTML和CSS,它不能正常工作,请在http://doctype.com/ – Wrikken 2010-07-22 23:39:15

+0

提示:考虑使用Smarty等模板引擎。 – CrociDB 2010-07-22 23:39:20

+0

顺便说一句,我需要'menu.php'到'main.php',所以我可以看到为什么会发生这样的麻烦......有一个页面的两个样式表hmmm – 2010-07-23 01:21:20

回答

1

如果我理解你正确地说,您在main.php的html之前包含了由menu.php生成的完整的HTML页面。这会让你在一个文件中获得2 <html>部分,2 <body>部分等。这应该会导致很多麻烦。

你应该包括你在菜单例如div主页一样(只是一个例子)内:

main.php:

<body> 
<div id="nav"> 
<?php require 'menu.php'; ?> 
</div> 
... 
</body> 

,并把所有菜单样式的主要风格 - 表,用#nav预先修正。或者作为单独的样式表,但仍用#nav(每种样式)预先修正,以覆盖主文档的样式。

+0

谢谢你的帮助。 :) – 2010-07-23 21:03:52

+0

不客气! – jeroen 2010-07-23 21:53:51

0

你能粘贴menu.php的内容?因为如果有那里和部分...你做错了,因为那样你就会有两个头部和两个身体部位。认为在PHP中需要复制和粘贴。

您的选择:

  • 迁移到一些模板系统(如Smarty的举例)。
  • 如果有应该每一页上menu.php,为什么不把这个CSS静态文件中的头
  • 粘贴一些代码,所以我们可以帮助您更轻松;)
+0

@ Vladimiroff - 我添加了代码我的文件在编辑部分。谢谢。 – 2010-07-23 01:12:25