PracticU

יצירת טבלה עם CSS & Grid

בלי כתוביותעם כתוביות
PracticU › קורס CSS 3 - בדגש על Flex & Grid › יצירת טבלה עם CSS & Grid
מילון מושגים:
CSS - שפת עיצוב שקובעת את המראה של דפי אינטרנט: צבעים, גופנים, מיקום וסידור הרכיבים.
HTML - שפת הסימון שבה בונים את מבנה ותוכן דפי האינטרנט, באמצעות תגיות שמגדירות כותרות, פסקאות, קישורים ועוד.
גופן - העיצוב הגרפי של האותיות והתווים המוצגים בטקסט, הכולל צורה, סגנון וגודל.
פיקסל - נקודת הצבע הקטנה ביותר שמרכיבה תמונה או תצוגה על המסך.
סלקטור - ביטוי, בעיקר ב-CSS, שבוחר אילו רכיבים בדף יושפעו מכלל עיצוב או פעולה.

יצירת טבלה עם CSS & Grid
אפשר לבנות טבלה בעזרת CSS Grid בלבד, בלי table, tr ו-td. Grid שולט בפריטים בשני ממדים, ובדוגמה הזאת רואים כמה קוד הוא חוסך.
השלבים העיקריים
1. HTML מינימלי: section עם ה-class container, ובו div לכל תא: שורת כותרת (first name, last name, salary) ושלוש שורות נתונים, עם שמות מרחוב סומסום ומשכורות.
2. עיצוב כללי, לא של Grid: מרווח (margin), גודל גופן, יישור טקסט למרכז, מסגרת של פיקסל, צבע רקע, ו-padding של 10 פיקסלים. הכותרת (nth-child 1, 2, 3) מודגשת וצבועה באפור בהיר. בפרויקט אמיתי מגדירים את הסלקטור כ-.container > div.
3. הפעלת Grid: על הקונטיינר כותבים display: grid ו-grid-template-columns. למשל 40% 40% 20% ליצירת שלוש עמודות, והתאים מסתדרים בהן לפי הסדר.
4. יחידות fr: במקום אחוזים אפשר להשתמש ב-2fr 2fr 1fr, שהן יחידות יחסיות כמו ב-Flex. repeat(3, 1fr) נותן שלוש עמודות שוות.
5. גובה שורות: grid-auto-rows: 70px קובע גובה קבוע, אבל טקסט ארוך נחתך. עם minmax(70px, auto) התא גדל לפי הצורך, ועם auto בלבד כל שורה תופסת כמה שהיא צריכה.
6. רווחים: column-gap ו-row-gap נותנים רווחים בין עמודות ושורות, ו-gap: 5px קובע את שניהם. בטבלת HTML רגילה זה קשה יותר.
פקודות והגדרות
display: grid · grid-template-columns · fr · repeat() · grid-auto-rows · minmax() · column-gap · row-gap · gap
אחרי ההרצאה אפשר ליצור טבלה עם עמודות, גובה שורות ורווחים באמצעות כמה שורות CSS.
השיעור הבא בקורס: עיצוב מטרו - Metro - חלק 1

פרקי ההרצאה: יצירת טבלה עם CSS & Grid

  1. 00:00

    Grid דו-מימדי מול Flex חד-מימדי

  2. 00:38

    טבלת HTML רגילה מול Grid

  3. 01:21

    הטבלה שרוצים לבנות

  4. 02:16

    מבנה HTML עם Container ופריטים

  5. 03:51

    עיצוב כללי לפריטי הטבלה

  6. 05:52

    הדגשת שורת הכותרת

  7. 06:37

    display grid ו-grid-template-columns

  8. 08:22

    רוחב עמודות ביחידות fr

תמלול ההרצאה: יצירת טבלה עם CSS & Grid

הטקסט המלא של הדקות הראשונות בהרצאה «יצירת טבלה עם CSS & Grid» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

    אנחנו מגיעים לשימוש בגריד. גריד מאפשר לנו לשלוט על סדרה של פריטים שאנחנו רוצים להציג בדו-מימד. פלקס אפשר להציג רשימה של פריטים בחד-מימד, שורה או עמודה, גריד דו-מימד.

  2. 00:23

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

  3. 00:38

    בדוגמא הזאת מה שאני רוצה להראות זה איך אפשר בעזרת גריד של CSS כמובן להציג טבלה. הרי איך אנחנו מציגים תמיד טבלה ב-HTML?

  4. 00:50

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

  5. 01:10

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

  6. 01:33

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

  7. 01:58

    אנחנו רואים שיש כאן את הערכים עצמם שזה שמות של כנראה ויש לנו את המשכורות שלהם ואנחנו רוצים להצליח לעשות את הטבלה הזאת זה כמובן תשלובת של html וcss אז בואו נראה איך אנחנו יכולים להשיג את זה דבר ראשון אני ב html רוצה לכתוב את המינימום שצריך

  8. 02:21

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

  9. 02:41

    אז יש לי רק שני חלקים, קונטיינר ואת הפריטים עצמם. מפה זה הפריטים, אז יש לי את ה-first name, יש לי מתחת את ה-last name ו-salary זה השורה הראשונה.

  10. 02:58

    יש לנו כאן דיווים עבור בן אדם מספר שתיים, הוא נקרא מוישה אופניק ויש לו סלארי של 10,000.

  11. 03:10

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

  12. 03:39

    אז הנה יש לנו כרגע את השורה של הכותרת ושלוש שורות של תוכן. מפה אנחנו רוצים לגשת ולשלב CSS. בואו נראה שחיברנו.

  13. 03:51

    מעולה. הדבר הראשון שהיינו עושים זה הגדרות כלליות שלא קשורות לגריד ויהיה General Styling. רק בשביל להבין שזה עדיין לא הגריד בואו נפנה לקונטיינר ונגיד לו Margin בואו ניקח 5% נניח.

  14. 04:12

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

  15. 04:31

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

  16. 04:43

    בואו נטפל בזה נתחיל עם מרג'ין 5% וכבר זה זז לו כזה אולי ניתן 3% יהיה קצת הדבר הבא שאנחנו רוצים זה בואו נטפל בפונט סייז שלנו וניתן לו אקסטרה לארג' שהוא יהיה טיפה יותר גדול מעולה אנחנו רוצים לפנות לכל אחד מהדיבים וכמובן שבאתר אמיתי הייתי עושה .container חץ דיב או איזה שהוא גלף ששייך לטבלה כמובן כי אחרת כל הדיווים באתר מושפעים וזה לא

  17. 05:22

    משהו שאנחנו נרצה כי תמיד יש לנו עשרות אם לא מאות דיווים באתר ואנחנו רוצים טקסט עליין סנטר בואו נשים כל פריט הוא באמצע זה כבר אמור לעוף לי לאמצע ניתן לו בורדר 1px solid black בואו ניתן לו background ראונד אליס ובוא ניתן פאדינג 10 פיקסלים שהוא יהיה טיפה מרווח.

  18. 05:52

    דבר נוסף שהייתי עושה וזה עדיין לא קשור לגריד זה שאת הכותרת הייתי צובע באיזשהו צבע אחר כמו שהיה לנו בתמונה אז div nth child 1 ו-time ו-3 בואו ניתן לו font-weight bold אז שלושת הראשונים אנחנו רואים שהם boldים וניתן light gray והנה שלושת הראשונים הפכו להיות gray.

  19. 06:29

    מכאן אנחנו מתחילים grid for creating a table כי עם grid אפשר לעשות המון המון דברים. הדוגמה הראשונה שאנחנו רוצים לראות בסרטון הזה זה איך להשתמש בגריד בשביל לייצג טבלה מבלי להשתמש בכלל בתגיות של table של html כל מה שאנחנו צריכים לעשות זה לגשת לרמת הקונטיינר ולהגיד לו א', דיספלי גריד וברגע

  20. 06:59

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

  21. 07:34

    מה שהוא יכול 40% ואנחנו עושים פה רווח לא פסיק ועוד 40% ואז יש לנו עמודה מספר 2 ושימו לב שהגריד מתחיל לסדר את כולם לפי הסדר בעמודות ובואו ניגש לעמודה האחרונה וניתן 20% והנה יש לנו כבר טבלה שימו לב 2 פקודות 1 2 וזהו תכף אנחנו נראה עוד דברים מגניבים אבל עד כדי כך זה חוסך לנו קוד.

  22. 08:11

    ב-CSS יש לנו מינימום וב-HTML לא השתמשתי עם טייבל, לא השתמשתי עם TR ו-TDs, שמתי את המינימום שאני צריך. אבל בואו נראה עוד כל מיני דברים מעניינים שיש כאן.

  23. 08:26

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

לקורס המלא: קורס CSS 3 אונליין

ההרצאה הקודמת: הסבר על Flex - חלק 4

ההרצאה הבאה: עיצוב מטרו - Metro - חלק 1

הרצאות קשורות מקורסים אחרים

  • CSS - עיצוב טבלה רק על ידי DIV
  • יצירת טבלה - פקודות
  • Grid Layout
  • Bootstrap Grid

קורסים נוספים במסלול

  • קורס יסודות HTML - בניית אתר אינטרנט פשוט
  • קורס Javascript כולל JQuery
  • קורס ג'אווה סקריפט מעשי - JavaScript
  • קורס TypeScript
  • קורס ריאקט - React
  • קורס NodeJS