使用php include时css元素定位搞砸了

时间:2012-06-04 01:26:26

标签: php css include

我正在尝试使用我的主index.php文件,并使用“include”从其他php文件(header.php,content.php和footer.php)加载html内容和文本。

然而,当我将index.php加载到我的浏览器中时,我对元素的css定位都搞砸了。 其他文件中的元素重叠。他们只是没有按照我的意图定位他们在我的CSS中。 我试图谷歌解决方案,但没有运气找到它。 有人可以指导我一些在线参考或告诉我在PHP中使用include时元素的定位是如何工作的? 提前谢谢。

编辑/添加代码: 的index.php

<html>
<head>
<link rel="stylesheet" type="text/css" href="main.css"></link>
</head>
<body>
<?php
include './views/header_view.php';
include '/views/sadrzaj_view.php';
include '/views/footer_view.php';
?>
</body>
</html>

头文件就像这样&gt;

<div id="header" >
    <a id="logo"  onmouseover="document.getElementById('logo').style.color='#D0D0D0';" onmouseout="document.getElementById('logo').style.color='#ffffff';">LOGO</a>

</div>  

内容文件目前仅包含文字...

页脚文件就像这样&gt;

<center>
<div id="footer"> 
    123 footer
</div></center>

和CSS就像这样&gt;

body{
border:0;
margin:0;
padding:0;
position:relative;
background-image:url(slike/blue_circuit.jpg);
background-repeat:no-repeat;

}


#header{
position:absolute;
background-image:url(./slike/header_bckgnd.png);
border-bottom:1px solid black;

top:0;
height:70;
width:100%;

color:white;
font-family:helvetica;
}



#logo{
position:relative;
left:30;
top:10;
font-size:45;
font-weight:600;
text-shadow: 1px 1px 9px #1E90FF;
cursor:pointer;

}




#footer{

position:fixed;
background-image:url(slike/header_bckgnd.png);
bottom:0;
height:30;

color:white;
line-height:2em;
border:0;
margin:0;
padding:0;
width:100%;

}

页脚与我的IE浏览器中的内容部分重叠。如果我使用绝对或相对定位,它就不会变得更好...... :(

5 个答案:

答案 0 :(得分:1)

我遇到了类似的问题,经过一些缩小后我发现我的一个包含文件(纯粹是php)底部有一个echo语句,这导致我的css以某种方式争抢(似乎是div在绝对位置)。无论如何,我希望这可以帮助你。干杯!

答案 1 :(得分:0)

转到输出文件并检查标记以查看是否存在冲突。
我会从这个输出中创建一个html文件并在你的浏览器上打开它,它可能会给你一些关于最新情况的线索。

答案 2 :(得分:0)

将你的css放在index.php

的body标签的末尾

答案 3 :(得分:0)

我遇到了这个问题并最终意识到我从旧的html文件复制到我的require()语句中的部分(认为它对所有页面都是通用的)实际上对主页的编码略有不同。因此,当我从索引文件中复制html并在所有页面的require语句中使用它时,会导致不正确的定位。

答案 4 :(得分:0)

我在遇到同样的问题后发现了这篇文章。我突然意识到发生了什么事。实际上,切换到PHP包含应该与CSS定位无关。我错误的原因是我放置 PHP包含的地方。我正在更换没有绝对定位的导航,因此包含必须放在相同的位置。