סקירה כללית בסיסית של תהליך היצירה של סמל אתר מותאם.
בפוסט הזה אני רוצה לשתף את הדרך שבה יצרתי סמל favicon גמיש באמצעות SVG. כדאי לנסות את הדגמה.
אם אתם מעדיפים סרטון, הנה גרסה של הפוסט הזה ב-YouTube:
סקירה כללית
סמל אתר בהתאמה אישית הוא דרך נהדרת ליטוש פרויקט באינטרנט. הוא מוצג בכרטיסיות בדפדפן במחשב,
גם בקוראים מסוג 'שמירה למועד מאוחר יותר', בפוסטים אחרים בבלוג שמקושרים לאתר שלכם ועוד. בעבר, הפעולה הזו בוצעה באמצעות קובץ מסוג .ico
, אבל לאחרונה הדפדפנים החלו לאפשר שימוש בפורמט וקטור של SVG. באמצעות שיפור הדרגתי, תוכלו להציג סמלי favicon מסוג .ico
עם תמיכה טובה, ולשדרג ל-.svg
אם הוא זמין.
קובצי SVG יכולים להתאים לגדלים שונים בלי לגרוע מהאיכות, והם יכולים להיות קטנים מאוד. הם יכולים גם לכלול CSS מוטמע, ואפילו שאילתות מדיה מוטמעות. כלומר, אם משתמשים בסמל אתר בפורמט SVG באפליקציית קורא או בסרגלי סימניות, יש סיכוי שהמשתמש יקבל סמל רלוונטי לעיצוב (בהיר או כהה), בגלל סגנונות של העדפה כהה שמסופקים ב-SVG. לאחר מכן, קובץ ה-SVG יתאים את עצמו באמצעות הסגנון המוטמע שלו להעדפות של המשתמשים לגבי צבעים בהירים וחשוכים.
Markup
הרכיבים של ה-SVG הם XML עם סיומת של סוג הקובץ .svg
, שמאפשרת לשמור סוגי קוד דינמיים יותר.
מתחילים ביצירת favicon.svg
יוצרים קובץ חדש בשם favicon.svg
ומוסיפים את הפרטים הבאים:
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 400 400">
</svg>
זה קובץ ה-SVG שלי. שיניתי את הגודל של viewBox
בהתאם לגרפיקה שלי:
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 447 428">
</svg>
הוספת צורות ונתיבים
בשלב הבא מוסיפים קוד נתיב SVG. לרוב, המשמעות היא פתיחת קובץ ה-SVG בעורך קוד, אבל בדרך כלל הקוד הזה לא ידידותי למשתמש. כאן תוכלו למצוא מדריך מצוין בנושא ייצוא של קובצי SVG ואופטימיזציה שלהם בכלים לעיצוב.
הגרפיקה של אתגר GUI הזה הגיעה ממעצב שיצר את הגרפיקה ב-Adobe Illustrator. ביצעתי אופטימיזציה משמעותית. העברתי אותו דרך SVGOMG ואז ערכתי ידנית את הקוד הלא רצוי.
זו דוגמה לקבוצת הנתיב של הגרפיקה skull
מהפרויקט שלי, אחרי הניקוי:
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 447 428">
<g id="skull">
<path id="skull-outline" class="favicon-stroke" stroke-linejoin="round" d="M19.62 188.39A166.62 166.62 0 0 1 186.24 21.77c115.25 0 166.61 74.59 166.61 166.62 0 1.83-.08 3.64-.13 5.46h.13s.68 175.09.68 178.65c0 30.11-16.26 41.67-36.32 41.67-12.7 0-35.22-3.93-36.22-32.69h-.2c-1 28.76-16.81 32.69-36.22 32.69-18 0-32.87-6.78-35.77-32.53-2.9 25.75-17.8 32.53-35.8 32.53-20.06 0-36.32-11.56-36.32-41.67 0-2.48.36-24.88.36-24.88A166.68 166.68 0 0 1 19.62 188.39Z" />
<path id="eyes-and-nose" d="M180.77 205.76c0 23.64 12.84 42.81 28.68 42.81s28.68-19.17 28.68-42.81-12.84-42.82-28.68-42.82-28.68 19.17-28.68 42.82M275 205.76c0 23.64 12.84 42.81 28.68 42.81s28.68-19.17 28.68-42.81-12.84-42.82-28.68-42.82S275 182.11 275 205.76M264.51 276.85s-29.26 43.53-20.12 49.23c7.07 4.41 20.49-16.71 20.49-16.71s12.82 22.58 16.76 20c16.24-10.71-17.13-52.5-17.13-52.5"/>
<path id="jawline" class="favicon-stroke" fill="none" stroke-linecap="round" d="M114.92 284.33c22.54-1 22 7 22 62.48" />
</g>
</svg>
שימו לב לבוררי מזהה שניתנים לקריאה על ידי בני אדם, כמו #eyes-and-nose
, ולכיתות כמו .favicon-stroke
. אלה מהעריכה הידנית שלי, כהכנה ל-CSS.
אין צורך להוסיף כיתות ומזהים כדי ש-SVG יהיה סמל favicon גמיש.
קישור קובץ ה-SVG של סמל האתר מ-HTML
בתג <head>
של ה-HTML, אחרי סמל האתר .ico
, צריך להוסיף את הפרטים הבאים:
<link rel="icon" href="/favicon.ico" sizes="any">
<link rel="icon" href="/favicon.svg" type="image/svg+xml">
הסמל החדש עשוי להיראות זהה לגרסת .ico
, לכן צריך לוודא שהוא נמצא בשימוש. פותחים את החלונית Network (רשת) ב-DevTools. מסננים לפי תמונות ומחפשים את הסמל של האפליקציה:
סגנונות
כמו ב-HTML, אפשר להוסיף תג <style>
לתג ה-Markup לשימוש ברמת המסמך:
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 447 428">
<style>
</style>
…
</svg>
גרסת העיצוב הבהיר תהיה צבע ברירת המחדל של קובץ ה-SVG של סמל האתר שלי. הסגנונות שכתבתי לצורך הבדיקה היו בעיקר צבעים של קווים ומילוי:
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 447 428">
<style>
.favicon-stroke {
stroke-width: 8px;
stroke: #8929ff;
}
#skull-outline { fill: white }
#eyes-and-nose, #hat-outline { fill: #8929ff }
#hat-fill, #hat-bill { fill: #e662e6 }
</style>
…
</svg>
השלב הבא הוא החלק הכי מהנה: עיצוב הגרסה של הסמל של האתר בעיצוב כהה. הסגנונות שלהם יועברו לשאילתת מדיה בתוך תג הסגנון:
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 447 428">
<style>
…
@media (prefers-color-scheme: dark) {
/* dark theme styles */
}
</style>
…
</svg>
התוצאה שלי הייתה כזו:
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 447 428">
<style>
…
@media (prefers-color-scheme: dark) {
.favicon-stroke { stroke: #343a40 }
#skull-outline { fill: #adb5bd }
#hat-outline { fill: #343a40 }
#eyes-and-nose { fill: #343a40 }
}
</style>
…
</svg>
בחרתי להחליף את הגבולות הסגולים הבהירים בצבע אפור כהה קריר (#343a40
),
שיניתי את צבע העצם של הגולגולת מללבן לאפור בהיר בהיר (#adb5bd
), אבל
השארתי את הכובע המשני הוורוד.
סיכום
עכשיו, אחרי שהסברתי איך עשיתי את זה, איך היית? 🙂
נרחיב את הגישות שלנו ונלמד את כל הדרכים לפיתוח באינטרנט. אתם יכולים ליצור גרסת דמו, לשלוח לי קישורים בטוויטר ואוסיף אותה לקטע 'רמיקסים של הקהילה' שבהמשך.