当我使用PHP Smarty时,一件奇怪的事情。似乎php文件的编码会影响css。
PHP文件(ANSI)--test2.php
<?php
include_once("inc/smarty_inc.php");
$smarty->display('test.tpl.htm');Smarty文件(ANSI)--test.tpl.htm
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>JPR</title>
</head>
<body>
<div style="width:500px;height:200px; background-color:Red;margin:auto;">
test
</div>
</body>
</html>当这两个文件是ANSI时。div显示在页面的中心。( IE和firefox都有)
当其中一个被转换为utf-8时。div显示在页面的左侧。(仅在IE中,Firefox可以使用它)
这是怎么回事?如何在IE中使用uff-8使其正常运行?
发布于 2012-12-05 20:07:42
您使用BOM将文件保存为UTF-8格式,这会导致响应中的第一个字节是字节顺序标记的字节,而不是doctype。当IE没有首先看到doctype时,它会进入quirks模式,其中的box模型是不同的。
您需要将其转换为不带的UTF8BOM。这取决于您使用的文本编辑器或转换器。
https://stackoverflow.com/questions/13719889
复制相似问题