页面顶部出现空白行(#65279)的解决办法
最近在编辑站点模板文件的时候,总发现页首有莫名奇妙的空行。
用浏览器审查元素的时候发现有连续两个双引号的代码。
不是伪类和伪元素,查了半天也没有发现原因。
直到有一天,用了google浏览器后才发现其实这段代码是下面图里的这个样子。
妈蛋,原来不是原生的chrome浏览器就是不一样,我用的是猎豹浏览器。
知道真相后,百度了一下发现,原来是UTF-8编码的关系。
使用WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,
会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM)。
它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。
PHP不会忽略BOM,所以在读取、包含或者引用这些文件时,
会把BOM作为该文件开头正文的一部分。
但是因为没有实际字符显示,所以就变成了空白行。
我一直习惯用UltraEdit编辑PHP文件,代码高亮简洁好用。
想要解决这个问题,直接在另存为的时候,格式选择为无BOM即可,如下图: