更新日:2019年7月12日
公開日:2012年9月10日

HTML制作でBOMにまつわるトラブルがあったので情報共有します。

SSIインクルードを使っている場合に、インクルード「される側」のファイルを BOM付きUTF-8 で作成すると、ページのレイアウトに不自然な余白ができてしまう、というものです。BOMを取り除くとレイアウトの乱れが解消しました。

HTMLやCSS、JavaScript、PHP など、WEBサーバで扱うUTF-8のファイルにBOMをつけてもトラブルの原因になるだけなので、特別な場合をのぞいて、つけないのが無難です。
※特別な場合→Excel+UTF-8+CSVがからむ場合

SSIインクルードでは複数のファイルを1つにまとめてページを生成しますが、その中にBOMが含まれていると、本来ファイルの先頭にだけ存在するはずの BOM がファイルの途中に現れてしまい、そこで表示が乱れる場合があるようです。

WEBチーム:堤