Critical CSS, ואיך הוא מקצר את ההופעה הראשונה

שיפור מהירות אתר עם Critical CSS לטעינה מהירה יותר.

Critical CSS הוא קוד העיצוב המינימלי שהדפדפן צריך כדי להציג את המסך הראשון של העמוד. במקום לחכות לכל קובצי העיצוב של האתר, הדפדפן מקבל את המעט הזה בתוך העמוד עצמו ומציג תוכן מיד. כאן אני מסביר איך זה עובד, מה הגישה שבחרתי באתר הזה ומה המחיר שלה.

שיפור מהירות אתר עם Critical CSS לטעינה מהירה יותר.
הפכו את האתר למהיר ביותר ותפסיקו לאבד לקוחות יקרים.

אל תתנו למהירות לעכב אתכם. השאירו פרטים לשדרוג האתר.

למה קובצי עיצוב מעכבים את העמוד

דפדפן לא מציג שום דבר עד שהוא מוריד ומעבד את כל קובצי העיצוב שבראש העמוד. התיעוד של Lighthouse מכנה אותם משאבים חוסמים. באתר וורדפרס עם בונה עמודים ותוספים, אלה יכולים להיות עשרות קבצים, וכל אחד מהם מוסיף זמן עד שהגולש רואה משהו.

הבעיה חריפה במיוחד בטלפון, שבו כל קובץ דורש בקשה נוספת ברשת איטית יחסית. העמוד עצמו כבר הגיע, הטקסט כבר שם, והגולש עדיין מסתכל על מסך לבן כי קובץ עיצוב של תוסף שלא קשור למסך הראשון עוד לא ירד.

איך Critical CSS פותר את זה

מפרידים את העיצוב לשני חלקים. החלק שנדרש למסך הראשון מוטמע בתוך קוד העמוד, ולכן מגיע יחד איתו בלי בקשה נוספת. כל השאר נטען אחר כך, בלי לחסום את ההצגה. לפי web.dev, כדאי שהחלק המוטמע יהיה קטן, כדי שייכנס בסבב הראשון של הנתונים מהשרת.

ההפרדה של Critical CSS נעשית בכלי אוטומטי שטוען את העמוד, בודק אילו כללי עיצוב משמשים את המסך הראשון ומוציא אותם. בוורדפרס עושים את זה תוספי מהירות כמו Perfmatters ו WP Rocket, בלי לכתוב קוד.

מה עשיתי באתר הזה

באתר הזה בחרתי בגישה קרובה: Perfmatters בונה לכל עמוד קובץ עיצוב רק עם הכללים שהעמוד באמת משתמש בהם, ומטמיע אותו בתוך העמוד. בדף הבית אין אף קובץ עיצוב חוסם, וכל העיצוב, כ-225 קילובייט, מגיע בתוך העמוד עצמו.

היתרון הוא שאין בקשה נוספת לפני ההצגה. המחיר הוא שקוד העמוד שוקל כ-430 קילובייט לפני דחיסה, והעיצוב לא נשמר בדפדפן בין עמודים. לפני שניקיתי את רשימת החריגות של התוסף, החלק המוטמע הגיע ל-413 קילובייט. זה ההבדל בין Critical CSS אמיתי, שמטמיע רק את המסך הראשון, לבין הטמעה של כל מה שהעמוד צריך.

עיצוב מוטמע בדף הבית: 413 קילובייט לפני ניקוי, 225 היום, ואפס קובצי עיצוב חוסמים
כמה עיצוב מוטמע בדף הבית של האתר הזה

טעויות נפוצות

מסך ראשון שנראה שבור לרגע

אם הכלי פספס כלל עיצוב שנדרש למסך הראשון, הגולש רואה לרגע עמוד בלי עיצוב, ואז הכל קופץ למקום. זה קורה בעיקר עם תפריטים, סליידרים ואלמנטים שמופיעים רק בטלפון. בודקים את המסך הראשון בטלפון ובמחשב אחרי כל שינוי.

קוד מוטמע ענק

כשמטמיעים יותר מדי, העמוד עצמו נהיה כבד ונטען לאט יותר. רשימת חריגות רחבה מדי בתוסף היא הסיבה הנפוצה, וזו בדיוק אחת התקלות שמצאתי באתר הזה. כדאי לבדוק כמה שוקל העיצוב המוטמע, ולצמצם כללים רחבים שמשאירים בפנים כמעט הכל.

עיצוב שלא מתעדכן

אחרי שינוי עיצובי באתר, הקובץ שנוצר מראש לא תמיד מתעדכן לבד. אם שינוי לא מופיע באתר, מנקים את המטמון של תוסף המהירות ואת קובצי העיצוב שהוא יצר, ובודקים שוב.

שאלות ותשובות על עיצוב קריטי

האם עיצוב מוטמע משפר את הציון ב PageSpeed?

בדרך כלל כן, כי הוא מקצר את ההופעה הראשונה ואת הופעת התוכן הראשי, ומעלים את האזהרה על משאבים חוסמים. השיפור גדול יותר באתרים עם הרבה קובצי עיצוב חיצוניים.

האם אפשר לכתוב אותו ידנית?

אפשר, אבל באתר וורדפרס זה לא מעשי. כל עמוד שונה, וכל שינוי בעיצוב מחייב לכתוב מחדש. כלי אוטומטי בתוך תוסף המהירות עושה את זה לכל עמוד ומתעדכן לבד.

מה ההבדל בינו לבין הסרת עיצוב שלא בשימוש?

עיצוב קריטי מפריד בין המסך הראשון לשאר. הסרת עיצוב שלא בשימוש מוחקת כללים שהעמוד לא משתמש בהם בכלל. הרבה תוספים משלבים את שתי השיטות, וזה מה שקורה באתר הזה.

האם זה עובד עם אלמנטור?

כן, אבל צריך לבדוק היטב. אלמנטור טוען הרבה עיצוב לכל ווידג'ט, ותפריטים או חלונות קופצים שמופיעים רק אחרי לחיצה עלולים לאבד את העיצוב שלהם אם הכלי לא זיהה אותם.

הצעד הבא

האתר שלכם מציג מסך לבן לפני שהתוכן מופיע? שלחו לי את הכתובת. אבדוק אילו קובצי עיצוב חוסמים את ההצגה, כמה שוקל העיצוב המוטמע, ומה ההגדרה שתתאים לאתר שלכם.

רוני קוקליטסקי

מומחה לשיפור מהירות אתרים וקידום אורגני

אני מקדם אתרים בגוגל כבר עשר שנים, ולאורך הדרך ראיתי שוב ושוב שמהירות היא לא עניין טכני צדדי: אתר איטי מאבד גולשים ולקוחות עוד לפני שהם קראו מילה. ב-2022 סיימתי במקום השישי בתחרות המהירות העולמית של Cloudways. כאן אני מסביר בשפה פשוטה מה מאט את האתר שלכם ומה באמת משפר אותו.

עוד עליי ועל הניסיון שלי
או צרו קשר עכשיו
בקרוב ניצור איתך קשר

הצוות שלנו כבר בודק את הנתונים ויחזור אליך תוך 24 שעות עם המלצות לשיפור.