→ כל החידושים
|עיצוב רקע הגריד בהירו של האתר

mask-image — הדרך האלגנטית לגרום לרקע להיעלם בעדינות

cssdesign

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

מושג אחד שצריך בדרך: גרדיאנט (gradient) הוא מעבר צבע הדרגתי — למשל משחור מלא לשקוף לגמרי. ב-CSS מייצרים אותו עם פונקציות כמו linear-gradient (מעבר בקו ישר) ו-radial-gradient (מעבר מעגלי מנקודת מרכז החוצה).

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

הפתרון הנכון: mask-image — מסכה. במקום לצייר משהו מעל, אומרים לדפדפן איפה האלמנט עצמו שקוף:

.hero-grid {
  background-image:
    linear-gradient(var(--line) 1px, transparent 1px),
    linear-gradient(90deg, var(--line) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: radial-gradient(
    ellipse 90% 70% at 50% 30%,
    black 40%, transparent 100%
  );
}

(שתי שורות ה-linear-gradient העליונות הן טריק ידוע לציור רשת: כל אחת מציירת קו דק אחד שחוזר על עצמו כל 72 פיקסלים — אחת לקווים אופקיים ואחת לאנכיים.)

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

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