织梦DEDECMS静态页面由于导致网页顶部空白一行的解决办法
今天在做一个搜索页面时遇到一个奇怪的问题,这个搜索页是通过文章列表页另存为得到了,文章列表页都显示正常,就是搜索页面不行,顶部空了一行,导致整个页面布局乱了,并且导航栏目调用没效果,仔细查看源代码。发现在源码顶部多出字符。
网上一搜索才明白,原来是UTF-8的BOM的问题,这个问题只会在chrome和edge浏览器出现。UTF-8+BOM编码方式一般会在windows操作系统中出现,比如WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF0xBB0xBF,即BOM)。它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。对于一般的文件,这样并不会产生什么麻烦。但对于PHP来说,BOM是个大麻烦。因为PHP并不会忽略BOM,所以在读取、包含或者引用这些文件时,会把BOM作为该文件开头正文的一部分。根据嵌入式语言的特点,这串字符将被直接执行(显示)出来,即我们看到的(??#65279)字符。
原来我的DW里面这个UNICOED签名这个是选中的,这就导致我另存为模板时出现BOM问题,那解决问题就方便了,用DW打开有问题的文件,页面属性里面把这个包含UNICOED签名勾去掉,应用,确实。然后问题就解决了。
声明:
1.本站主要是为了记录工作、学习中遇到的问题,可能由于本人技术有限,内容难免有纰漏,一切内容仅供参考。
2.本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!
3.本站所有原创作品,包括文字、资料、图片、网页格式,转载时请标注作者与来源。
1.本站主要是为了记录工作、学习中遇到的问题,可能由于本人技术有限,内容难免有纰漏,一切内容仅供参考。
2.本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!
3.本站所有原创作品,包括文字、资料、图片、网页格式,转载时请标注作者与来源。
THE END