用記事本修改文件保存后,刷新html頁面后,發(fā)現(xiàn)頂部有一小段空白。審查元素后發(fā)現(xiàn)字符頁面頭部出現(xiàn)#65279字符,通過搜索,了解到這原來是UTF-8的BOM的問題。
這個問題只會在chrome和edge瀏覽器出現(xiàn),UTF-8 + BOM編碼方式一般會在windows操作系統(tǒng)中出現(xiàn),比如WINDOWS自帶的記事本等軟件,在保存一個以UTF-8編碼的文件時,會在文件開始的地方插入三個不可見的字符(0xEF 0xBB 0xBF,即BOM)。它是一串隱藏的字符,用于讓記事本等編輯器識別這個文件是否以UTF-8編碼。對于一般的文件,這樣并不會產生什么麻煩。但對于 PHP來說,BOM是個大麻煩。因為PHP并不會忽略BOM,所以在讀取、包含或者引用這些文件時,會把BOM作為該文件開頭正文的一部分。根據(jù)嵌入式語言的特點,這串字符將被直接執(zhí)行(顯示)出來,即我們看到的(#65279)字符。
解決方法:使用notepad++或其他工具存儲為“UTF-8無BOM”即可解決。