คำอธิบายปัญหา:
ปัญหานี้มักเกิดขึ้นเมื่อพัฒนาด้วยการเข้ารหัส UTF-8
·ใน IE คุณจะพบว่ามีพื้นที่ว่างอีกบรรทัดในหน้าเว็บ และถูกตัดออกว่าเกิดจาก CSS
·หากคุณดูที่แผนผัง DOM ในปลั๊กอิน firebug สำหรับ firefox คุณจะพบว่ามีพื้นที่ว่างอีกหนึ่งบรรทัดใน HTML แต่ไม่มีผลกระทบต่อรูปแบบของหน้า
·วางโค้ดหน้าไว้ใต้เลขฐานสิบหกใต้ UltraEdit แล้วดูที่บริเวณนั้น คุณจะพบว่าที่ช่องว่างนั้นถูกสร้างขึ้น จะมีอักขระ "锘? " แต่สัญลักษณ์ " < " ดั้งเดิมหายไป
หากเป็นหน้าเดียวก็จะปรากฏที่ตำแหน่งอักขระแรกของหน้า
หากปรากฏในไฟล์รวมของคุณ มันจะอยู่ที่ตำแหน่งอักขระแรกของไฟล์ที่รวมไว้
-
แสดงให้เห็น:
นี่เป็นปัญหาที่เกิดจากลายเซ็น UTF-8
ลายเซ็น UTF-8 หรือที่เรียกว่า BOM (Byte Order Mark) เป็นเครื่องหมายมาตรฐานที่ใช้ในการระบุการเข้ารหัสในรูปแบบการเข้ารหัส UTF หากมีการตั้งค่าลายเซ็นหลายไฟล์ สตรีมไบนารี่จะมีลายเซ็น UTF-8 หลายรายการ และ IE ไม่สามารถจดจำลายเซ็น UTF-8 หลายรายการได้ ดังนั้นให้ใช้บรรทัดว่างแทน ในบางโปรแกรมที่ประมวลผล อักขระที่คล้ายกับ "锘?" จะปรากฏขึ้น .
คำอธิบายอย่างเป็นทางการของ W3C: http://www.w3.org/International/questions/qa-utf8-bom