PHP+Smarty模板中CSS问题:Firefox下正常显示,而在IE下,显示得很混乱
第一个原因是:bom的问题(在页面上输出空信息) [转] 先制作好了页面的模板(用UTF-8编码),当载入Smarty运行的时候,发现在Firefox下正常显示,而在IE下,显示得很混乱!难道 是smarty和CSS结合有问题?PHP+Smarty时显示混乱,而不用Smarty转而采用原始的PHP+HTML混写的时候则无此现象,查阅代 码,无法找出任何破绽,因此开始怀疑Smarty有问题。 根据以往的经验,我开始怀疑是当PHP输出HTML的时候向其中加入了额外的不可见代码,于是将PHP输出的内容原封不动保存为HTML,然后提交到 validator.w3.org [ 这个网站很有用,可以帮你检测html的错误信息 ]进行XHTML验证,果然,验证失败,提示文件头部被加入了BOM(万国码档案签名:Byte Order Mark, U+FEFF)标记,妈的,就是这个垃圾标记,已经不是第一次害我了! 于是,重新打开DM和UltraEdit重新对PHP页面以及模板页面进行编码转换,去除了其中的BOM标记,一切正常! 解决此问题的最简单的方法是:把原来的模板文件及php文件用 UltraEdit 打开,然后重新保存时选择 UTF-8-无BOM格式即可。呵呵,是不是很简单呢。这是我在建我的小站:创意产品网 www.cygoods.com 过程中遇到的问题,记录下来