Web Design
הסוף ל-Margin מינוס: איך text-box-trim פותר את בעיית הפונטים בעברית
מדריך מעשי לשימוש בתכונת ה-CSS החדשה text-box-trim. למדו איך להעלים שוליים נסתרים בפונטים בעברית וליישר כותרות וכפתורים בצורה מדויקת ללא האקים.
TL;DR
תכונת ה-CSS החדשה text-box-trim פותרת סופית את הרווח הנסתר מעל ומתחת למילים. במקום לרדוף אחרי פונטים בעברית עם האקים של margin-top שלילי, אפשר לגרום לטקסט להיצמד במדויק לקופסה שלו בצירוף שורת קוד אחת.
מעצבים מגישים פיגמה מושלמת.
הטקסט יושב בדיוק בגובה 16 פיקסלים מאייקון ה-Checkmark.
ואז אתם פותחים את המחשב, כותבים את ה-HTML, טוענים פונט עברי כמו "רוביק" או "אלף", ופתאום מגלים רווח נסתר של 8 פיקסלים מעל הכותרת.
התגובה הטיפוסית? margin-top: -6px.
זה עובד, עד שמחליפים פונט, מובייל משנה את גודל הטקסט, או שהמערכת נטענת במסך ברזולוציה שונה.
המצב "לפני": האקים, המספרים הקסומים והחוב הטכנולוגי
כל פונט שמורידים מכיל מטריקות פנימיות (Font Metrics). הגופן לא מתחיל בראש האות אלא בקו דמיוני רחוק יותר, המיועד למנוע מאותיות בשורות שונות להיצמד זו לזו.
- הגדרה · text-box-trim
מאפיין CSS שמנקה את ה-Line-height הריק שנוצר מעל ה-Cap Height ומתחת ל-Baseline, כך שגבול האלמנט נוגע ישירות בקצוות האותיות.
כשבונים ממשק בעברית, הבעיה חמורה פי כמה. מעצבי גופנים עבריים מוסיפים שוליים נדיבים למעלה כדי להשאיר מקום לניקוד. התוצאה בממשק יומי:
- כפתורים שבהם הטקסט נראה ירוד מדי למטה
- כותרות H1 שנראות רחוקות מהפאנל שמעליהן
- רשת כרטיסיות (Cards) עם גבהים לא אחידים
- כתיבת האקים מבוססי
padding-top: 3pxבתוך@mediaqueries ספציפיות
/* הקוד הישן והחלוד שכולנו כתבנו */
.card-title {
font-family: 'Rubik', sans-serif;
font-size: 24px;
margin-top: -5px; /* קוד קסם שנשבר במסכים שונים */
}
המצב "אחרי": יישור פיקסל-פרפקט ללא מאמץ
במקום לנחש כמה פיקסלים מפרידים בין גג האות אלף לבין קצה הקופסה, אנחנו אומרים לדפדפן בצורה מפורשת: "גזור את הריווח הנסתר".
100%
מהרווחים הנסתרים בפונטים נעלמים בלחיצת כפתור
מקור: W3C CSS Inline Layout Module Level 3
כך נראה הקוד המודרני כיום ב-2026:
.card-title {
font-family: 'Rubik', sans-serif;
font-size: 24px;
text-box-trim: both;
text-box-edge: cap alphabetic;
}
פתאום הכותרת נצמדת במדויק לקו ה-Padding העליון של הכרטיס. בלי חישובים. בלי מינוסים.
איך להשתמש ב-text-box-trim בפרויקטים שלכם?
המפתח להבנת המאפיין הוא השילוב בין שתי תכונות CSS:
text-box-trim: מגדיר איפה לגזור את השוליים (start,end, אוboth).text-box-edge: מגדיר עד איזה קו לגזור (capלפיסגת אותיות גדולה,exלפיסגת אותיות קטנות,alphabeticלקו הבסיס).
הנה השוואה קצרה בין הגישות:
| פרמטר | השיטה הישנה (Magic Margin) | השיטה החדשה (text-box-trim) |
|---|---|---|
| תחזוקה | שבירות רבות בכל שינוי פונט | אפס תחזוקה, מותאם אוטומטית |
| דיוק | הערכה גסה בפיקסלים | יישור מתמטי לפי מפתח הפונט |
| תמיכה בריבוי שפות | נשברת ברגע שהטקסט מתחלף לאנגלית | עובדת זהה על עברית, ערבית ואנגלית |
| קריאות הקוד | מעמיסה האקים ב-CSS | נקייה, הצהרתית ומובנת |
לפונטים בעברית, השילוב המומלץ ביותר הוא text-box-edge: cap alphabetic; יחד עם text-box-trim: both;. ה-Cap Height מתאים בדיוק לגובה האותיות העבריות הטיפוסיות (כמו ר', ד' או ב').
יישום פרקטי: כפתור עם יישור אנכי מושלם
אחד הכאבים הכי גדולים בבניית אתרים הוא ליישר טקסט עברי בתוך כפתור בצורה ממורכזת אנכית.
בעבר, display: flex; align-items: center; לא באמת מירכז את האותיות, כי הפונט הביא איתו נפח ריק נסתר מלמעלה. האותיות העבריות נראו תמיד נוטות למטה.
כעת, נטפל בזה בשלוש שורות:
.primary-button {
display: inline-flex;
align-items: center;
padding: 12px 24px;
/* ביטול השוליים הנסתרים */
text-box-trim: both;
text-box-edge: cap alphabetic;
}
התוצאה? הכפתור נראה ממורכז על הפיקסל, בכל גודל מסך ובכל פונט שתבחרו.
💡
עבודה עם Margin מינוס בשביל ליישר טקסט היא חוב טכנולוגי שנשבר ברגע שמשנים פונט או גודל מסך. text-box-trim הוא הפתרון הסטנדרטי והנקי.
סיכום
הגענו לשלב שבו אנחנו לא צריכים להילחם בדיזיין סיסטם. ב-2026 אין שום סיבה להמשיך לדחוף margin-top: -4px לכל כותרת עברית שפוגשים. תשתמשו ב-text-box-trim, תיהנו מקוד נקי, ותנו לדפדפן לעשות את העבודה עבורכם.
שאלות נפוצות
כל מה שעוד רצית לדעת
מה זה text-box-trim ולמה צריכים את זה?
האם text-box-trim עובד טוב עם פונטים בעברית?
מה עושים עם דפדפנים ישנים שלא תומכים בתכונה?
איך שולטים רק בחלק העליון או התחתון של הטקסט?
כתב
אדיר בן יעקב · Adir Ben Yaakov
מקים JustBetterSite, סוכנות בניית אתרים ושיווק דיגיטלי בתל אביב. מתמחה ב-GEO (Generative Engine Optimization) — בנייה של אתרים שמופיעים בתשובות של ChatGPT, Claude, Perplexity ו-Gemini, לא רק בגוגל.
עוד עליי →להמשך הקריאה
מאמרים קשורים
Web Design
CSS contrast-color() מול JavaScript: איך לעצב ממשק דינמי ונגיש ב-2026
השוואה מעשית בין פונקציית contrast-color() ב-CSS לבין פתרונות JavaScript ישנים. גלו איך לייצר ניגודיות נגישה ואוטומטית ללא סקריפטים כבדים.
המשךWeb Design
פונקציות ו-Mixins טבעיים ב-CSS: הקץ לעיבוד מקדים ב-2026
מדריך מעשי לשימוש ב-CSS Functions ו-Mixins טבעיים בדפדפן. איך לנהל לוגיקת עיצוב מורכבת בממשקי AI ללא Sass או מעבדים מקדימים.
המשךWeb Design
פונקציות טריגונומטריות ב-CSS: מפריסה מעגלית עד אנימציות בלי שורת JavaScript
איך להשתמש ב-sin, cos ו-tan ב-CSS מודרני כדי ליצור תפריטים מעגליים, פריסות דינמיות ואפקטים ויזואליים מורכבים בלבד.
המשך