后端PHP代码是否会影响页面布局?这只发生在IE中。在Firefox和Chrome中,一切看起来都很好。
事情是,我们有这个HTML代码,然后由<?php include "[name of file]";?>
插入该页面上的函数的后端代码。我们包含的php文件没有任何样式,但它神秘地使整个页面转到左边缘(而不是居中)。如果我们从页面中删除该文件,它将正常呈现。
我们已经了解到,如果我们在该文件上注释掉代码的某个部分(见下图),那么布局就会得到修复:
//function position_list() {
global $db, $core, $global;
ob_start('ob_gzhandler');
include ROOT.'templates/listing.php';
ob_flush();
//}
我只是想知道是否有人遇到过类似的问题?可能有什么不对?
答案 0 :(得分:3)
包含的代码可能存在问题,而不是样式但标签损坏。有些嵌套正在进行,标签正在被打开它之外的其他东西关闭或者某些东西被打开。您应该尝试通过严格的html验证程序运行输出代码来查找错误。
答案 1 :(得分:2)
使用和不使用include行比较IE中的源代码。这是你期望的吗?有没有PHP警告?
很奇怪看到你注释function {}
部分而没有注释掉函数的主体。你实际上现在正在调用position_list();
。导致渲染发生变化的是哪条线?
如果这完全在doctyle和<html>
标记之前,则可能是输出触发浏览器以怪异模式呈现,而不是标准合规模式。
答案 2 :(得分:2)
听起来你正在将IE置于怪癖模式。如果你正在使用保证金:auto;在一个元素上,IE往往会在怪癖模式下忽略它。
确保doctype是输出文件中的第一件事(没有换行符,空格,注释等)。另外,请确保您的页面针对给定的doctype进行验证。
如果以上操作不起作用,请发布更多代码。