שרתים ודפדפנים מתקשרים ביניהם על ידי שליחת בייטים של נתונים דרך באינטרנט. אם השרת לא מציין איזה פורמט קידוד תווים מדובר כאשר הוא שולח קובץ HTML, הדפדפן לא יידע איזה תו מייצג כל בייט. ההצהרה לגבי קידוד תווים המפרט פותר בעיה זו.
איך הבדיקה של charset
במסגרת Lighthouse נכשלה
מגדלור דגלים של דפים שאינם מציינים את קידוד התווים שלהם:
מערכת Lighthouse מתייחסת לקידוד התווים כהצהרה אם הוא מוצא אחד מהדברים הבאים:
- רכיב
<meta charset>
ב-<head>
של המסמך ריק באופן מלא ב-1,024 הבייטים הראשונים של המסמך. - כותרת תגובת HTTP
Content-Type
עם הוראהcharset
שתואמת ל- שם IANA תקין - סימן הזמנה מסוג בייט (BOM)
איך עוברים את הבדיקה של charset
הוספת רכיב <meta charset>
ל-HTML
צריך להוסיף רכיב <meta charset>
בתוך 1,024 הבייטים הראשונים של מסמך ה-HTML.
הרכיב צריך להיות כלול במלואו בתוך 1,024 הבייטים הראשונים.
השיטה המומלצת היא להפוך את הרכיב <meta charset>
לרכיב הראשון
<head>
של המסמך.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
…
צריך להוסיף כותרת תגובת HTTP Content-Type
מגדירים את השרת להוספת Content-Type
כותרת תגובת HTTP שכוללת הוראת charset
.
Content-Type: text/html; charset=UTF-8