这几天发现网站上部总是多出一个24px的空白栏,找来找去找不出原因。开始想可能是css的问题,后来干脆把body的背景色设置成了黑色,这样和黑色顶栏融为一体,看着没这么扎眼。
昨天用百度的网站速度检测,提示css没放在head段内,跑到了body段内。引起浏览器二次渲染,影响加载速度。
看看源码都正常,但用浏览器按F12键看,确实有一个空白的<head></head>段,css和meta都被移到body后面去了。有人说是uft-8编码后的bom文件头引起的,php不处理bom文件头,引起浏览器出错。想来是我图简单,用windows自带的记事本改过php文件,用winhex打开改过的文件,发现文件头上确实多出了EF BB BF三个标记字符。删除后重新上传,发现问题还在,估计是因为用windows记事本改过的文件太多,有遗漏。于是用了 https://bbs.csdn.net/topics/380258641 这里的一段php代码,在服务器上跑了一遍,又找出两个带bom头的文件并自动修正。至此浏览器先出原始页面再重新渲染的问题消失,浏览器顶部多出的24px空白栏也不见了。网页恢复正常。