我开始学习OOP和PHP模式,我在使用MVC时遇到了一些麻烦。我有以下文件:
索引.php
<?php
include_once("controller/controller.php");
$controller = new Controller();
$controller->view->display();
?>
控制器.php
<?php
class Controller
{
public $view;
public function __construct()
{
include_once("view/view.php");
$this->view = new View();
}
}
?>
查看.php
<?php
class View
{
public $layout = "layout/layout.html";
public function display()
{
include $this->layout;
}
}
?>
布局.html
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Dokument bez tytułu</title>
<style>
body {
background-color:#0066CC;
margin:0;
padding:0;
}
#page {
background-color:#000;
width:960px;
height:650px;
margin:0 auto;
}
</style>
</head>
<body>
<div id="page"></div>
</body>
</html>
任何人都可以解释为什么浏览器以 Quirks 模式显示此网站?最糟糕的是屏幕顶部的边距,这真的很烦人。我很高兴提供有关此问题和解决方案的任何信息。
它看起来像一个有效的HTML5 DOCTYPE。
确保您的 PHP 文件在开始<?php
之前没有任何多余的空格或换行符。在文本编辑器中,确保将它们另存为 UTF-8 而不带 BOM 。在Windows上,默认情况下,许多文本编辑器将插入BOM(字节顺序标记(,这可能会导致垃圾作为文件的第一行发送到屏幕。DOCTYPE 之前的任何内容都将触发怪癖模式。
另外,我认为style
标签应该<style type="text/css">
如果您不包含完全正确的 DOCTYPE 信息,则 Quirks 模式是默认模式。
<!DOCTYPE HTML>
不会削减它。
http://www.quirksmode.org/css/quirksmode.html
显然我所知道的一切都是错误的,因为在阅读此链接后,显然任何文档类型都应该触发严格模式。
这个链接非常棒,尤其是附录,可以尝试了解跨浏览器是否在这里工作。
把你的php标签放在上面。 文档类型需要位于文件顶部,以便IE不会进入怪癖模式。