הסופר בחר ב־קרן הרב גווניות בטכנולוגיה לקבל תרומה כחלק מתוכנית כתיבה למענה.
הקדמה
טפסי רשת הם רכיב נפוץ בעיצוב אתרי אינטרנט, שנעים ברמת המורכבות משדה טקסט לטפסי יצירת קשר וסינון נתונים מורכבים. לדעת כיצד להשתמש ב־CSS כדי לעצב ולעבוד עם אלו הרכיבים עוזר לספק פתרונות טובים יותר לבעיות היומיומיות אלו, ויכול לשפר את חוויית המשתמש של האתר שלך.
המדריך הזה מכסה את יצירת טופס רשת ועיצובו הכולל של טופס זה, המבקש מידע שונה מהמשתמש. הטופס ישתמש בשדות טקסט, כפתורי רדיו, תיבות סימון, בחירות נפתחות, אזור טקסט, וכפתורי שליחה ואיפוס. תיצר ותעצב את הטופס ואת הרכיבים שלו על ידי איפוס הסגנון עם מאפיין appearance
, הגדרת סגנון עצמאי עבור הטופס, הוספת תשובות מציינות מקום עבור שדות הטקסט, והתאמה אישית של כפתורי הרדיו והתיבות סימון עם פסאודו־מחלקות ופסאודו־אלמנטים שונים.
דרישות קדם
- ניסיון בשימוש בבוררים מתקדמים כדי למצוא וליישם סגנונות על אלמנטי HTML עם CSS. למידע נוסף על כך, ראה את המדריך איך לבחור אלמנטי HTML באמצעות ID, Class ו-Attribute Selectors ב-CSS.
- ידע במודל התיבה של CSS, שניתן למצוא במדריך איך לעבוד עם המודל של התיבה ב-CSS.
- ידיעה מולחתת עם כיתות-פסאודו ב-CSS. ראה איך להשתמש בקישורים ובכפתורים עם כיתות-פסאודו ב-CSS להקדמה.
- קובץ HTML ריק שמור במחשב המקומי שלך בשם
index.html
שבו תוכל לגשת מערכת העריכה שלך ולדפדף בדפדפן האינטרנט שלך לבחירתך. כדי להתחיל, ראה את המדריך שלנו איך להגדיר את פרויקט ה-HTML שלך, ועקוב אחרי איך להשתמש ולהבין אלמנטים ב-HTML להוראות על איך לצפות ב-HTML שלך בדפדפן שלך. אם אתה חדש ב-HTML, נסה את סדרת איך לבנות אתר עם HTML כולה.
הגדרת ה-HTML וה-CSS הבסיסיים
בסעיף זה הראשון, תגדיר את ה-HTML והסגנונות הראשוניים שבהם תעבוד במהלך שאר המדריך. ה-HTML הזה יצביע את תשתית העמוד ויצור את שדות הטופס שתעצב מאוחר יותר.
התחל על ידי פתיחת קובץ ה-index.html
בעורך שלך. לאחר מכן, הוסף את ה-HTML הבא כדי לספק מבנה בסיסי לקובץ:
האלמנטים שנמצאים בתוך האלמנט <head>
מגדירים את שם העמוד באמצעות האלמנט <title>
ואיפה לטעון את גיליון הסגנון באמצעות האלמנט <link>
. התגיות <meta>
מגדירות את קידוד התווים ומדריכות את הדפדפן על איך להציג את האתר במכשירי מסך קטנים. תוכן הטופס הראשי ישהה בתוך התגיות <body>
ו-<main>
.
באשף העיקרי, בתוך האלמנט <main>
, צור אלמנט <form>
. בתוך <form>
תוסיף שוניות של רכיבי טופס ואלמנטים <div>
לעזור בפריסה. במדריך זה, הוספות לקוד משלבים קודמים מודגשות. הוסף את ה-HTML המודגש מבלוק הקוד הבא לקובץ index.html
:
מבנה טופס HTML מורכב מערכי ערכות המחוברים זה לזה כדי שהטופס יעבוד כמצופה. קוד זה יוצר טופס ששואל את המשתמש על שמו וכתובת האימייל שלו, שואל אותו על המהדר המועדף שלו ב־CSS ואם הוא מכיר ב־CSS Grid, מספק שדה להודעה שנוצרה על ידי המשתמש, ומכיל תיבת סימון כדי להרשים את המשתמש לרישום לניוזלטר. כדי למצוא עוד על כיצד למבנה טפסים ב־HTML, ראה את עמוד המסמכים של Mozilla Web Docs על מבנה טופסי האינטרנט.
ודא ששמרת את השינויים שלך ב־index.html
, ואז צור קובץ חדש באותו תיקייה בשם styles.css
.
פתח את styles.css
בעורך הטקסט שלך. קובץ זה מספק את העיצובים שהדפדפן יחול על תוכן index.html
. הוסף את קוד ה־CSS הבא לקובץ ה־styles.css
שלך:
הנבחרים של אלמנט body
ו־main
יוצרים עיצוב וסגנון טקסט ראשוניים עבור העמוד כולו. הנבחר של אלמנט form
יוצר סגנונות עבור מגוון הטפסים הכללי ואז מגדיר רשת CSS המורכבת משני עמודים בגודל שווה בעזרת grid-template-columns: 1fr 1fr;
. לאחר מכן, gap: 2rem
מספק רווח של 2rem
בין כל שורה ועמוד ברשת. לבסוף, בחירת המחלקה .full-width
מאפשרת למכשירים עם מחלקה זו להרחיב בין שני העמודים במקום להישאר בעמוד אחד.
שמור את השינויים שלך ב־styles.css
. לאחר מכן, פתח את דפדפן האינטרנט שלך לבחירתך. בחר בפריט התפריט קובץ בדפדפן ואז בחר באפשרות פתח. לאחר מכן, נווט לתיקיית הפרויקט שלך וטען את הקובץ index.html
בדפדפן. התמונה הבאה מדגימה איך הדף יוצג בדפדפן:
הטופס מוצג בתוך תיבה לבנה על רקע אפור בהיר. כל אלמנט של הטופס מתפזר על הרשת כאשר הפריטים העליונים הארבעה משתנים בין שני העמודים והשלושה האחרונים מוצבים בצורה נדבקת, נטוים על שני העמודים. עיצוב ברירת המחדל של אלמנטי הטופס הוא כפי שהם מוצגים ב־Firefox; כל דפדפן משתמש בעיצוב ברירת מחדל שונה לאלמנטי הטופס.
במקטע זה, התקנת את ה־HTML וה־CSS ההתחלתיים הנדרשים כדי לעבוד עם אלמנטי טופס. גם למדת שכל דפדפן מטפל בעיצוב של אלמנטים אלו בדרך שונה. במקטע הבא, תשתמש במאפיין appearance
כדי לשווה את עיצוב אלמנטי הטופס בכל הדפדפנים.
איפוס עיצוב הטופס בעזרת מאפיין appearance
כל דפדפן מטפל בעיצוב הויזואלי של אלמנטי הטופס בדרך שונה. לעיתים קרובות, העיצוב של אלה האלמנטים עובר על יכולות ההתאמה הראשוניות של CSS ועוקב אחר האסתטיקה של מערכת ההפעלה או שפת העיצוב האישית של הדפדפן. כדי ליצור עיצוב עקבי לכל הדפדפנים, בסעיף זה תשתמשו במאפיין appearance
ובמאפיינים נוספים כדי להסיר את סגנונות ברירת המחדל של הדפדפן.
להתחלה, פתחו את styles.css
בעורך הטקסט שלכם. צרו מבחר חדש של קבוצת מזהים המורכבת מ-button
, fieldset
, input
, legend
, select
, ו־textarea
. לאחר מכן, בתוך בלוק הבחירה, הוסיפו את המאפיין appearance
שהוגדר כ־none
, כפי שמסומן בבלוק הקוד הבא:
המאפיין appearance
הוא הדרך המיועדת להסרת העיצוב המיוחד מאלמנטי הטופס. עם זאת, עקב גילויו והיוושותיו של המאפיין הזה, רוב הדפדפנים עדיין דורשים קידוד יצרן הנוסף הנוסף לשם המאפיין. קידוד יצרן (vendor prefix) הוא הוספה קודית מיוחדת שמקודמת לשם המאפיין כזיהוי עבור דפדפן מסוים. עבור Chrome, Safari, וגרסאות אחרונות של Edge ו־Opera, הקידוד הוא -webkit-
. Firefox משתמש בקידוד -moz-
.
כאשר עובדים עם תגי יצרן, חשוב לשים את גרסאות התגי יצרן של מאפיין קודם ולסיים עם הגרסה לא מקודדת. בדרך זו, דפדפנים ישנים שתומכים רק במאפיין המוקדש ישתמשו בתג יצרן, אך דפדפנים חדשים שתומכים בשני התגים יעשו שימוש בגרסת התקן שאינה מקודדת. הוסף את התגי appearance
המודגשים כפי שמיוצג בבלוק הקוד הבא:
שמור את השינויים שלך בקובץ styles.css
ואז פתח את index.html
בדפדפן שלך. המאפיינים appearance
הסירו את עיצוב הקישוט ועברו לסגנון פשוט יותר, כפי שמוצג בתמונה הבאה:
המאפיין appearance
מאפשר לך לשנות את עיצוב הדפדפן הספציפי. השינוי הגדול ביותר שעשה הערך appearance: none
הוא הסרת הכפתורים הרדיו והתיבות לבחירה לחלוטין. לשאר אלמנטי הטופס, נדרשים עוד מספר מאפיינים כדי להסיר באופן מוחלט את הסגנון הברירתי. המאפיינים המודגשים בקוד ה-CSS הבא מוסיפים את הסגנון הנדרש כדי להסיר את הסגנון הברירתי:
קובץ ה-CSS הזה מסיר את צבע הרקע ומאפס את הפרמטרים של מודל התיבה. לא כל הסגנונות האלה נחוצים לכל האלמנטים, אך מקובל לקבץ את הסגנונות אלו של איפוס על כל האלמנטים.
שמור את השינויים שלך בקובץ styles.css
, ואז רענן את index.html
בדפדפן. אלמנטי הטופס הושתלו מבחינת העיצוב מהדף, כפי שמוצג בתמונה הבאה:
בחלק זה, השתמשת במראה
ובמאפיינים נוספים כדי להסיר לחלוטין את הסגנונות הברירת מחדל מרכיבי הטופס. גם השתמשת בקידודי יצרן כדי להחיל את המאפיין באופן המתאים לגרסאות הדפדפן בעתיד. במקטע הבא, תתחילו להתאים אישית את סגנון העיצוב הוויזואלי של שדות הטופס.
הגדרת סגנונות עקביים בכל שדות הטופס
עכשיו שסגנונות הדפדפן הברירת מחדל הוסרו לחלוטין, תחילתי להחיל אסתטיקה מותאמת אישית על כל אלמנטי הטופס. זה ידרוש ליצירת מזהים קבוצתיים שונים המכוונים למאפיינים מסוימים של הטופס כדי לקבל את הסגנונות המתאימים.
כדי להתחיל, פתחו את styles.css
בעורך הטקסט שלכם. לאחר מכן, צרו מזהה קבוצתי המורכב מ input
, select
, ו textarea
. הוסיפו את הסגנונות המודגשים מהקוד הבא:
סגנונות אלו מוסיפים מסגרת אפורה כהה בגודל 2 פיקסלים
סביב כל אחד מרכיבי הקלט, יחד עם רקע לבן ופינות מעוגלות.
בשלב הבא, תחילו להחיל סגנונות על אלמנטי הקלט שמכילים טקסט בתוכם. תשתמשו בבורר מאפיין כדי לציין אילו אלמנטי input
ליהא יופקו בהתבסס על ערך המאפיין type
שלהם. ה-CSS שמודגש בבלוק הקוד הבא מספק את הסגנונות עבור האלמנטים הנדרשים:
הסגנונות האלה מיישמים גודל ומשפחת פונט קבועים בכל הרכיבים. לדוגמה, הרכיב <textarea>
, למשל, אינו יורש את ההגדרות של הפונט מהרכיב body
. המאפיינים display
, box-sizing
, width
ו־padding
מספקים מבנה ותצורה קבועים לכל אחד מרכיבי הקלט הנתונים הללו.
שמור את השינויים שלך ב־styles.css
ואז פתח את index.html
בדפדפן האינטרנט שלך. כפי שמוצג בתמונה הבאה, השדות כעת מכילים מסגרת אפורה כהה יותר והטקסט של הרכיב <select>
הוא כעת גדול יותר:
הבא, ישנם שני רכיבים שדורשים סגנון מיוחד בנוסף לסגנון הרחב שכבר כתבת. הראשון הוא להעניק גובה נוסף לרכיב textarea
, והשני הוא ליישם חץ תפיסה מותאם אישית לרכיב <select>
.
חזור אל styles.css
והוסף בחור המאפשר בחירת רכיב textarea
. בתוך הבלוק של הבחור, צור מאפיין min-height
שהוגדר לערך של 10rem
. זה יצור אזור גדול יותר למשתמש הטופס למלא טקסט בו. ה־CSS המודגש בבלוק הקוד הבא ממחיש איך זה נכתב:
לאחר הוספת הסגנונות עבור הרכיב textarea
, הדבר הבא להשלים הוא ליצור תיקייה image
. זה ניתן לעשות על ידי הרצת הפקודה הבאה בפרומפט שלך מתוך אותה התיקייה כמו קבצי ה־index.html
ו־styles.css
:
לְאַחַר מֵכָך, הַרְץ אֶת הַפְּקוּדָה curl
הַבָּאָה כְּדֵי לִהְיוֹת הוּא מְאוּתָה בַּתְּקוּפָה הַחֲדָשָׁה שֶׁל הַתִּיקָיָה images
:
הָתְמוּנָה שֶׁהוּורַדְתָּ הִיא SVG, שֶׁהִיא שְׂפָת סֵמֶל שֶׁדוֹמָה לְ-HTML וְהַמְטַרָתָהּ לִצְיָזֵר צוּרוֹת.
כְּדֵי לְהוֹסִיף אֶת הַתְמוּנָה הַחֲדָשָׁה לְאֶלֶמֶנט <select>
, חֲזוֹר אֶל styles.css
. לְאַחַר מֵכָך, צוֹר בַּחֲלִיל select
וְהוֹסֵף מְאַפֵּי background
עִם עֶרֶך הַמְסוּמָן מִתוֹך הַקּוֹד הַבָּא:
מַאֲפִיַּת background
זוֹ טוֹעֲנָה אֶת הַתְמוּנָה לְתוֹך אֲלֶמֶנט <select>
וְאֵינָה חוֹזֶרֶת עַל הַתְּמוּנָה. לְאַחַר מֵכָך, הִיא מַמְרִיצָה אֶת הַתְמוּנָה בַּאֱמֶצַע עִם center
וּמְאַזְכֵּסָה אוֹתָהּ מִצַּד יָמִין עִם right 0.75rem
.
שְׁמוֹר אֶת הַשְּׁינוּיִים שֶׁבַּקּוֹד לְתוֹך styles.css
, וְאַז חֲזוֹר אֶל הָדְפֵּס כְּדֵי לְרַעֲנֹן אוֹתוֹ. הַתָּיבָה הַמְתוּמֶנֶת כְּעֵת כְּפָלִי גְּבֹהֶה יוֹתֵר מִמָּה שֶׁהִיתְאַזְּרְךָ בְּהַתְחָלָה, וְהָאֶלֶמֶנט <select>
מְצוּי לוֹ חָץ כְּחוֹלֵף בְּצַד יָמִין. הָתְמוּנָה הַבָּאָה מַמְחִישָׁה כֵּיצַד זֹאת נִרְאָת בְּדַפְדֵפֶן:
בְּכָל רֶגַע שֶׁעָבַרְתָּ בַּסֶּעָרָה הַזֹּאת, יָצַרְתָּ אֶסְתֵּטִיקָה מְיוּחֶדֶת לְאֶלֶמֶנטֵי הַקֶּלֶט שֶׁבַּטוֹפֶם שָׁם בִּטְפָ
התאמה אישית של לחצני רדיו ותיבות סימון עם המחלקה הוירטואלית :checked
עכשיו שיצרת את האסתטיקה הבסיסית של הטופס, זמן ליישם את הסגנון הוויזואלי הזה על הפריטים האינטרקטיביים input
של לחצן רדיו ותיבת סימון.
התחל על ידי פתיחת styles.css
בעורך הטקסט שלך. תשנה את הרכיבים input
עם מאפיין type
של radio
או checkbox
כך שיהיו להם ערך גובה ורוחב שווים. לאחר מכן, תהפוך את לחצני הרדיו למעגלים. החלקים המודגשים של בלוק הקוד הבא מציגים איך נעשה זאת:
מאפיין vertical-align
מיועד ליישור פריטי טקסט בשורה. על ידי הגדרתו ל־middle
, שדות הקלט יישבו באמצע שורת הטקסט. לאחר מכן, הקלט של הרדיו עם מאפיין border-radius
של 50%
ייצור מעגל מאחר שהגובה והרוחב זהים.
שמור את השינויים שלך ב־styles.css
ואז פתח את index.html
בדפדפן שלך. שני הלחצנים של רדיו והתיבת הסימון כעת גדולים יותר וניכרים יותר כפי שמוצג בתמונה הבאה:
אם תתקשר עם לחצני הרדיו או התיבות הסימון, לא תראה שינויים גלויים. המאפיין appearance
מסיר גם את האינדיקטורים שנבחרו עבור סוגי הקלט האלה. בהמשך, תשתמש בבורר המדויק :checked
כדי ליישם סגנונות לפריט הקלט שנבחר.
חזור אל styles.css
וצור בורר חדש עבור קלט לחצן רדיו עם פסאודו-כיתה :checked
. לאחר מכן, בתוך בלוק הבורר, הוסף background-image
עם radial-gradient
כך שניתן יהיה ליישם סגנון ממולא ללחצני הרדיו שנבחרו. ה-CSS המודגש מהבלוק הקוד שלמטה מראה איך זה מפורמט:
הפונקציה calc()
מאפשרת להגדיר את המאפיין transparent
1px
אחרי ערך הצבע, יוצרת מעגל כחול מלא בתוך שדה הקלט.
שמור את השינויים שביצעת ב-styles.css
וחזור ל־index.html
בדפדפן שלך. ללחצני הרדיו יש עכשיו מעגל כחול מלא שסביבו לבן בתוך הקלט. התמונה הבאה מראה את הלחצן כן שנבחר:
בהמשך, תיבת הסימון תשתמש בתמונת רקע כדי לציין את מצב ה־:checked
שלה, בדומה לחץ חציוני של <select>
.
הריץ את הפקודת curl
הבאה כדי להוריד את תמונת הסימון לתיקיית התמונות שלך:
עכשיו שיש לך את התמונה הורדה ומוכנה לשימוש, חזור ל־styles.css
בעורך הטקסט שלך.
הבא, הוסף בחירת סלקטור ל־input[type="checkbox"]
עם פסאודו־קלאס :checked
מצורף. בבלוק הסלקטור, הוסף מאפיין background
שטוען את התמונה check.svg
ומקטין אותה כך שתתאים לתוך התיבה. ה־CSS המודגש בבלוק הקוד הבא מציין איך זה נכתב:
ערכי המאפיין background
מבטיחים שתמונת הסימון ממורכזת בתוך התיבה, אינה חוזרת, ומוקטנת ב־75% באופן פרופורציונלי.
שמור את השינויים ב־styles.css
ורענן את העמוד בדפדפן. כאשר בוחרים את תיבת הסימון קבל את ניוזלטרנו, כעת מופיע סימן סימון בתוכה, כפי שמודגש בתמונה הבאה:
בסעיף זה, יצרת כפתורי רדיו מותאמים אישית ושדות קלט והפעלת את מצב הבחירה שלהם דרך שימוש ב־:checked
פסאודו־קלאס. בסעיף הבא, תעצב את אלמנטי ה־<label>
וה־<legend>
בעמוד.
הוספת סגנונות מיוחדים לתוויות ולאגדות
האלמנטים הבאים לעיצוב הם ה־<label>
וה־<legend>
בטופס. ישנם שני סגנונות שונים שישמשו: סגנון תווית קטנה לכפתורי רדיו ותיבות הסימון, וסגנון תווית גדולה לאלמנטים השותפים הנותרים.
פתח את index.html
בעורך טקסט שלך. תוסיף מאפיין class
לכל אחת מהתגיות <label>
ו־<legend>
עם ערך של large-label
או small-label
, כפי שמסומן בבלוק הקוד הבא:
...
<form>
<div>
<label for="name" class="large-label">Name</label>
<input id="name" type="text" />
</div>
<div>
<label for="email" class="large-label">Email</label>
<input id="email" type="email" />
</div>
<div>
<label for="comp" class="large-label">Favorite CSS Compiler</label>
...
</div>
<div>
<fieldset>
<legend class="large-label">Are you familiar with CSS Grid?</legend>
<input type="radio" name="grid" id="yes" value="yes" />
<label for="yes" class="small-label">Yes</label>
<input type="radio" name="grid" id="no" value="no" />
<label for="no" class="small-label">No</label>
</fieldset>
</div>
<div class="full-width">
<label for="message" class="large-label">Message</label>
<textarea id="message"></textarea>
</div>
<div class="full-width">
<input type="checkbox" id="newsletter" />
<label for="newsletter" class="small-label">Receive our newsletter?</label>
</div>
...
</form>
...
שמור את התוספות אלו ב־index.html
, ואז פתח את styles.css
בעורך הטקסט שלך.
ב־styles.css
, הוסף בחרת מחלקה .large-label
והוסף את המאפיינים הבאים כפי שמסומנים בבלוק הקוד הבא:
אלו הגדרות מוגדרות את האלמנטים large-label
להיות גדולים ומודגשים עם גודל פונט של 1.5rem
, שזה שווה ל־24px
. אז המאפיין margin-bottom
מספק מרווח בין התווית לקרנות שלה.
שמור את השינויים האלו ב־styles.css
ופתח את index.html
בדפדפן האינטרנט שלך. הטקסט של התווית מעל שדה הקלט יהיה גדול ומודגש, כפי שמוצג בתמונה הבאה:
חזור אל styles.css
וצור בחרת מחלקה נוספת עבור .small-label
. מכיוון שאלה הן התוויות שבצד ימין של כפתור או תיבת סימון, יהיה עליהן צורך בסגנונות שונים של רווח וגודל מול .large-label
. הוסף את ה־CSS המופיע מסומן בבלוק הקוד הבא ל־styles.css
שלך:
המאפיין vertical-align: middle
יסדר את הטקסט מעט. הפונט מוגדר כ־1.25rem
, ששווה ל־20px
, עם גופן sans-serif
. המאפיינים margin
בצדדים מספקים מרווח בין שדות הקלט והתווית.
שמור את העדכונים שלך ב־styles.css
ורענן את index.html
בדפדפן. התוויות ליד כפתורי הרדיו והתיבות עכשיו גדולות יותר ומספקות יותר רווח, כפי שמוצג בתמונה הבאה:
במקטע זה, יצרת סגנונות עבור שני סוגים שונים של תוויות בהתבסס על מיקומן ביחס לערך הקלט שלהן. התוויות עכשיו דופקות, מספקות נגישות וניווט קל יותר בכל הטופס. במקטע הבא, תספק דוגמה לעיצוב נתונים דרך שימוש במאפיין placeholder
.
ספק תוכן מקום באמצעות ייבוא פסאודו־אלמנט ::placeholder
תוכן מקום באלמנט input
או textarea
מספק למשתמשי הטופס הדגמה חזותית של סוג המידע שנדרש ואיך לעצב אותו. המאפיין placeholder
מתווסף ל־HTML עם ערך שמתאר אותו. לאחר מכן, הפסאודו־אלמנט ::placeholder
מאפשר להתאים אישית את מראה הטקסט.
להתחיל ליצור תוכן מציין מיקום, פתח index.html
בעורך טקסט שלך. הוסף מאפיין placeholder
לטקסט של שם <input />
, האימייל <input />
, ולאלמנטים של <textarea>
. ה-HTML שמודגש בבלוק הקוד הבא מציין איפה להוסיף את ה-placeholder
ואת הערך שיש להשתמש בו:
שמור את השינויים שלך ב-index.html
, ואז פתח את העמוד בדפדפן אינטרנט. לשלושת אזורי הטקסט כעת יש תוכן בתוכם. פעם ששדות הטקסט האלה נבחרים ונוסף תוכן, הטקסט שמחזיק במקום יוסר על ידי הדפדפן. התמונה הבאה ממחישה איך סגנונות המציינים הברירת מחדל נראים בדפדפן:
כדי לעצב את ה-placeholder
, פתח את styles.css
בעורך הטקסט שלך. הוסף מבחר בחברה עבור input::placeholder
ו־textarea::placeholder
. וודא שאתה משתמש בנקודותיים כפולות בין הבחירה והפסאודו־אלמנט, מכיוון שכך הדפדפן מזהה את ההבדל בין פסאודו־מחלקה ופסאודו־אלמנט. ה-CSS שמודגש בבלוק הקוד הבא מראה איך כתוב זה:
הדבר היחיד שיש לשים לב אליו הוא שפיירפוקס דורש ערך ל-opacity
שהוא 1
כדי לקבל את ערך הצבע המלא. אחרת, פיירפוקס מפחית את ה-opacity
, מדמיע את צבע הטקסט ויוצר בעיות בנגישות של ניגודיות צבעים בהתאם לערך הצבע. מכיוון שזהו מצב של פיירפוקס בלבד, תגובת הערה נמצאת שם כדי להסביר את המטרה של נכס ה-opacity
.
שמור את השינויים שביצעת ב־styles.css
וחזור לדפדפן כדי לרענן את index.html
. הטקסט המציין עכשיו משתמש בצבע כחול זהה לצבע השימושי עבור החץ הנפתח ולמצבים שנבחרו עבור לחצני הרדיו והתיבת סימון. התמונה הבאה ממחישה כיצד הדפדפן עושה רנדום לתוכן של placeholder
:
עם קטע זה, יצרת תוכן של placeholder
על שדות הטקסט ועיצבת אותם באמצעות השימוש באלמנט-הפרט הוירטואלי ::placeholder
. בקטע הבא, תיצור סגנונות מותאמים אישית עבור אלמנטי טופס <button>
.
יצירת סגנונות לחצני אינטראקטיביים
בטפסים ברשת, אלמנטים של <button>
נהוג לשמש לשליחת או איפוס טופס. ב־index.html
, ישנם שני לחצנים, אחד עם type
של submit
והשני עם reset
. שניהם שימושיים מבחינה פונקציונלית, אך מבצעים פעולות הפוכות. הלחצן של submit
ישלח את הטופס אל מעבד, כאשר הלחצן של reset
מאפס את כל הנתונים שהוזנו בטופס. עקב הפעולות השונות, על האלמנטים של <button>
להיראות שונה מבחינה חזותית גם.
להתחיל, פתח את styles.css
בעורך הטקסט שלך וצור בחירת button
אלמנט. בבלוק הבחירה הזה, תוסיף את הסגנונות שמשותפים בין אלמנטי ה-submit
וה-reset
<button>
, כפי שמודגש בבלוק הקוד הבא:
ה-font
מגדיר שני כפתורים לקבל את אותו סגנון וגודל פונט. לאחר מכן, מאפיין ה-border-radius
מוסיף פינה מעוגלת לשני הכפתורים. ה-cursor
משנה את סגנון העכבר להיות מצביע כף יד. לבסוף, מאפיין ה-padding
מגדיר את הרווח בין התוכן שבפנים של הכפתור.
שמור את השינויים ב-styles.css
ואז פתח את index.html
בדפדפן האינטרנט שלך. הטקסט בכפתור יגדל והרווח בין הטקסט יגדל ויראה יותר רחב עקב הרווח. התמונה הבאה מראה כיצד הכפתורים מתייחסים בדפדפן:
באשף הבא, חזור ל-styles.css
כדי להוסיף סגנונות לכל סוג של כפתור על ידי שימוש בבורר מאפיינים שמתמקד בכל אחד. לכפתור ה-submit
, הוסף צבע רקע כחול וצבע טקסט לבן
. לכפתור ה-reset
ייתן קו תחתון דומה לקישור ו-רווח
כדי להוסיף עוד מרווח בין הכפתורים. הוסף את סגנון ה-CSS המודגש מהבלוק הקוד הבא לקובץ ה-styles.css
:
שמור את התוספות אלה ב-styles.css
ואז רענן את index.html
בעורך הטקסט שלך. הכפתור ה-submit
כעת נמצא בצבע כחול בולט וטקסט לבן, בעוד שהכפתור ה-reset
הוא טקסט עם קו תחתון מוזן, כפי שמוצג בתמונה הבאה:
אלמנט ה־<button>
אינו מגדיר מצב :hover
כברירת מחדל, לכן עתה תוסיף את זה לעיצוב שלך. מצב :hover
שימושי כדי לספק משוב חזותי למשתמשים שמשתמשים בסמן העכבר והסמן נמצא על הכפתורים.
כדי ליצור מצבי :hover
עבור אלמנטים אלה של <button>
, חזור ל־styles.css
בעורך הטקסט שלך. הגדר את background-color
של הכפתור submit
להקישור בעת העכבור מעליו. לאחר מכן, הפוך את הקו התחתון של הכפתור reset
להימחק בעת העכבור מעליו. הקטע המסומן ב־HTML מציין איך לכתוב את העיצובים האלה:
שמור את השינויים שלך ב־styles.css
ולאחר מכן חזור לדפדפן כדי לרענן את index.html
. כפי שמתבטא באנימציה הבאה, אלמנטים ה־<button>
משנים את העיצוב שלהם כאשר הסמן של העכבר נמצא מעליהם:
במקטע זה, יצרת עיצובים עבור אלמנטי <button>
כדי להפוך את ההבדלים ביניהם לגלויים מבחינה חזותית. שינית איך הסמן מופיע בעת העכבור על ידי כיוון מאפיין ה־cursor
. יצרת עיצובים מותאמים אישית להחיל על כל כפתור כדי לספק משוב חזותי נוסף. במקטע האחרון, תספק משוב חזותי נוסף על פעילות כאשר אלמנט של טופס בשימוש במצב הנוכחי עם המדליה :focus
.
הבהרת שדות הטופס הפעילים עם :focus
כאשר ממלאים טופס, חשוב שהמשתמש יודע באיזה שדה הוא עובד כרגע. ניתן להשיג זאת באמצעות שימוש בפסאודו-קלאס :focus
. באופן ברירת המחדל, הדפדפנים משתמשים במאפיין outline
כדי לציין כאשר האלמנט עם :focus
, אך לעיתים יכול להיות שהוא אינו מראה אינדיקציה בולטת, או שהוא מתנגש עם אספקטים ויזואליים אחרים של העיצוב. במקטע זה, תיצור סטייל למצב :focus
מותאם אישית המתאים לאסתטיקת הטופס שלך.
כדי להתחיל לעבוד עם מצבי :focus
של שדות הטופס, פתח את הקובץ styles.css
בעורך הטקסט שלך. צור מאגר בחירה עבור input
, select
, ו־textarea
, כולם עם פסאודו-קלאס :focus
, כפי שמודגש בבלוק הקוד הבא:
סגנונות אלה מסירים את הערך הברירתי של הדפדפן במאפיין outline
ומחליפים את הסגנון בקו כחול עבה הנוצר בעזרת מאפיין box-shadow
. הערכים הראשונים של box-shadow
הם עבור מיקום הצל וכמות הטשטוש. הרביעי נקרא פיזור, אשר במקרה זה יוצר קו עבה בגובה 4px
סביב האלמנט עם :focus
.
בנוסף, הכפתורים יקבלו מצב :focus
מעט שונה, מאחר שהכפתור submit
הוא באותו צבע כחול. מטרתו וכוונתו של מצב ה־focus היא למשוך תשומת לב ברורה לאלמנט הממוקד, כך שתבדיל בין המתארים האלה בדרכים שונות.
הוסף בחלק ה CSS של קובץ styles.css את הבחירה button:focus
. בבלוק הבחירה, השבת את הגבול המוגדר כברירת מחדל והוסף נכס box-shadow
. ערכי המיקום, הערפל והפיזור יישארו זהים כמו בשדות הקלט, אך הצבע יהיה שחור במקום כחול, כפי שמודגש בבלוק הקוד הבא:
שמור את השינויים בקובץ styles.css וחזור לדפדפן שלך. רענן את index.html והתחל ללחוץ על הקישור Tab כדי שהמוקד יישאר בין כל אלמנט בטופס. האנימציה הבאה מראה איך נקבע סגנון מוקד שמתיישב עם השינוי במוקד בעזרת מקש Tab:
בחלק זה, יצרת סגנונות מצב מוקד המספקים משוב ויזואלי ברור כאשר האלמנט של טופס נמצא במוקד. הסגנון הויזואלי הזה מועיל למשתמשי עכבר, מגע ומקלדת.
מסקנה
הטפסים הם רכיב נפוץ בעיצוב האינטרנט. הם מאפשרים למשתמשים להתקשר עם אפליקציות, לחפש תוכן ולתת משוב. במדריך זה, יצרת ועצבת טופס מלא. הסרת את הסגנון המוגדר כברירת מחדל של הדפדפן עם מאפיין appearance
, ויצרת מראה אישי חדש למספר רב של אלמנטים. השתמשת בפסאודו-מחלקה :checked
כדי ליצור מצבים נבחרים עבור כפתורי רדיו ותיבות סימון. לאחר מכן הוספת תוכן מקום והתאמת העיצוב עם הפסאודו-אלמנט ::placeholder
. לאחר מכן, יצרת סגנונות מותאמים אישית לכפתורים, והחלת סגנון :focus
תוך הענקת משוב חזותי מועיל למשתמשי הטופס.
אם ברצונך לקרוא עוד מדריכי CSS, נסה את המדריכים האחרים בסדרת כיצד לעצב HTML עם CSS.
Source:
https://www.digitalocean.com/community/tutorials/how-to-style-common-form-elements-with-css