我正在尝试使用我的主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浏览器中的内容部分重叠。如果我使用绝对或相对定位,它就不会变得更好...... :(
答案 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包含的地方。我正在更换没有绝对定位的导航,因此包含必须放在相同的位置。