שרתים ודפדפנים מתקשרים ביניהם על ידי שליחת בייטים של נתונים באינטרנט. אם השרת לא מציין באיזה פורמט קידוד תווים הוא משתמש כשהוא שולח קובץ HTML, הדפדפן לא יודע איזה תו מייצג כל בייט. המפרט של הצהרת קידוד התווים פותר את הבעיה.
איך הבדיקה של charset
ב-Lighthouse נכשלת
מערכת Lighthouse מסמנת דפים שלא מצוין בהם קידוד התווים:
![בדיקת קידוד התווים שנכשלה.](https://developer.chrome.com/static/docs/lighthouse/best-practices/charset/image/the-failing-character-enc-65708532bd6a6.png?authuser=9&hl=he)
במסגרת 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
מגדירים את השרת להוספת כותרת תגובת HTTP של Content-Type
שכוללת את ההוראה charset
.
Content-Type: text/html; charset=UTF-8