html頁面頂部出現一段空白,檢查控制台發現body 下出現字符,原因及解決辦法


html頁面頂部出現一段空白,檢查控制台發現body 下出現&#65279字符,原因及解決辦法

分析:

  原來是頁面編碼時增加了BOM,此頁面后端數據主要是PHP語言,對PHP來講PHP在設計時沒有考慮BOM問題,,不會忽略UTF-8編碼的文件開頭BOM的那三個字符,會把BOM作為該文件開頭正文的一部分。由於必須在<?或者<?php后面的代碼才會作為PHP代碼執行,所以將會造成在頁面上輸出這三個字符,顯示效果就要看瀏覽器了,一般是一個空行或是一個亂碼。由於在html一開頭有這3個字符的存在,即使頁面的 top padding 設置為0,也無法讓整個網頁緊貼瀏覽器頂部。由於受COOKIE送出機制的限制,在這些文件開頭已經有BOM的文件中,COOKIE無法送出(因為在 COOKIE送出前PHP已經送出了文件頭),所以登入和登出功能失效。一切依賴COOKIE、SESSION實現的功能全部無效。

解決辦法:

  在編輯、更改任何文本文件時,請務必使用不會亂加BOM的編輯器。linux下的編輯器應該都沒有這個問題。WINDOWS下,請勿使用記事本等編輯器。

推薦的編輯器是:

1、UltraEdit(需要取消‘添加BOM’的相關選項);
2、Dreamweaver(需要取消‘添加BOM’的相關選項)我是用這個解決的問題
3、Notepad(需要進行“轉換為不帶BOM的UTF-8”)等
4、對於已經添加了BOM的文件,要取消的話,可以用以上編輯器另存一次(Editplus需要先另存為gb,再另存為UTF-8。)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM