CSS Layout & Positioning PDF
Document Details

Uploaded by DignifiedAlpenhorn3632
יעל סלע זעירא
Tags
Summary
This PDF document covers CSS layout and positioning. It explores concepts such as normal flow, display property, and various position types (static, relative, absolute, fixed, sticky) with code examples. It features explanations of different layout techniques and includes interactive exercises.
Full Transcript
CSS layout and Positioning יעל סלע זעירא Normal Flow אפשר להסתכל על הדף כשורות ועמודות. התגיות יוצגו לפי הסדר בו הן...
CSS layout and Positioning יעל סלע זעירא Normal Flow אפשר להסתכל על הדף כשורות ועמודות. התגיות יוצגו לפי הסדר בו הן כתובות אחת אחרי השניה. אלמנטים שהם blockיתפסו את כל השורה -כאשר שמים divבדף הוא תופס שורה שלמה (כנ"ל h,pותגיות נוספות). אלמנטים שהם inlineיתפסו עמודה -כאשר שמים spanבדף הוא תופס עמודה בשורה ,ואם נוסיף עוד הרבה spanים לבסוף הם יתפסו את כל השורה ואז תתבצע ירידת שורה. אלמנטים שהם floatיצופו שמאלה או ימינה מחוץ ל normal flowוישפיעו על האלמטים שאחריהם. יעל סלע זעירא Display property כל אלמנט בדף הוא קופסא ,ה displayקובע איך הקופסא מתנהגת. (לכל אלמנט יש displayבעל ערך ,defaultאם ברצוננו לשנותו יש לדרוס אותו ב )CSS יעל סלע זעירא תרגיל הצגה פתחו את הדף display.htmlשנמצא ב moodle ועמדו על ההבדלים יעל סלע זעירא block, Inline, inline-block blockמתנהג הפוך מ inline inline-blockו inlineמתנהגים אותו דבר אבל ב inline-blockהגובה והרוחב דינמים ל inlineלא ניתן לתת גובה הוא מקבל את המימדים שלו מהאבא. יעל סלע זעירא visibility vs display h2.a { visibility: visible; } h2.b { visibility: hidden; } יעל סלע זעירא h2.a { visibility: visible; } h2.b { visibility: hidden; } The visibility Property This heading is visible This heading is hidden Notice that the hidden heading still takes up space on the page. יעל סלע זעירא h1.hidden { display: none; } This is a visible heading This is a hidden heading Notice that the h1 element with display: none; does not take up any space. יעל סלע זעירא Positioning לפעמים נרצה שאלמנטים "יסתדרו" לא כמו ב normal flow מה קורה אם אנחנו רוצים לשים אך מה קורה אם אנחנו רוצים לשים אלמנט על אלמנט בתחתית הדף למרות שעוד אלמנט? למשל שתיאור התמונה יופיע על גבי לא הגענו עד אליו? התמונה? יעל סלע זעירא Position :מיקום האלמנט בדף Static.1 Relative.2 Absolute.3 Fixed.4 Sticky.5. נקבל את המיקום הסופיtop, right, bottom, and left בנוסף עם הגדרת יעל סלע זעירא static יעל סלע זעירא position: static כל אלמנט htmlב Normal flowמוגדר בדף כסטטי position: static הכוונה שהוא תופס את המקום הבא בדף יעל סלע זעירא position:relative.positioned {.positioned { position: static; position: relative; background: yellow; background: yellow; } } Hi, nice to meet you Hi, nice to meet you ללא שינוי יעל סלע זעירא position:relative relativeמוציא את האלמנט מהמצב ה staticשלו. relativeבפני עצמו לא יעשה שינוי ,יש להוסיףTop, bottom, left, right : ההזזה תתבצע יחסית למיקומו המקורי של האלמנט ב normal flowבאמצעות תכונות top, left, .bottom, right משאיר את המקום של האלמנט "תפוס". לא משנה את התכונות הבסיסיות של האלמנט (רוחב ,גובה). positionRelative2.html, positionRelative1.html יעל סלע זעירא position:relative זה גם יאפשר לנו להציג אלמנט על אלמנט. יעל סלע זעירא position : absolute absolute לpositionRelative2.html שנו את ?מהו השינוי יעל סלע זעירא Position:absolute – absoluteלא משאיר את המקום של האלמנט "תפוס".האלמנט הופך להיות "צף" על המסך. משנה את התכונות הבסיסיות של האלמנט ,הרוחב והגובה יהיו דינאמיים במידה ולא יוגדרו. יעל סלע זעירא Position:absolute היכן לדעתכם תופיע תגית ה?span- במקרה של - absoluteהאלמנט מבצע חישוב של ההזזה לפי "ההורה" הראשון שאינו .static במקרה זה אין ,ולכן הוא מתמקם לפי תג !body *תזכורת – ה defaultשל כל אלמנט הוא static יעל סלע זעירא Z-indexהערות עובד רק על אלמנטים שהם :position absolute relative fixed sticky flex *אם שני אלמנטים חופפים ללא z-indexהאחרון בקוד יעלה על הקודם לו. יעל סלע זעירא Z-index ראינו שעל ידי absoluteניתן "להציף" אלמנט על המסך ,אך מה קורה אם אני רוצים שהוא יצוף מתחת לאלמנט? zIndex.html יעל סלע זעירא Z-index על מנת לשלוט במי שיופיע ,נעשה שימוש בתכונת z-indexשנמצאת בתוך תכונת .style התכונה מקבלת ערך שלילי או חיובי שלילי יהיה כשרוצים להוריד את ה priority ככלל אלמנט בעל ערך zגדול מערך של אלמנט אחר יופיע מעל. לפי חוק זה ערכי z-indexשל 2ו 3עבור שני אלמנטים יתנהגו בדיוק כמו 3000ו 4000 בהתאמה. יעל סלע זעירא Z-index.green-box {.gold-box {.dashed-box { position: absolute; position: absolute; position: relative; z-index: 2; above.green-box and.dashed-box background: lightgreen; */ border: dashed; width: 20%; background: gold; height: 8em; left: 65%; width: 80%; margin-bottom: 1em; top: -25px; left: 60px; margin-top: 2em; height: 7em; top: 3em; } opacity: 0.9; } } ZindexExample.html יעל סלע זעירא Position:fixed fixedהוא כמו ,absoluteרק במקרה זה המיקום יהיה קבוע גם אם נגלול את המסך. נזיז את האלמנט יחסית לחלון הדפדפן באמצעות תכונות top, left, bottom, right יעל סלע זעירא Position:fixed FixedHeaderFooter.html יעל סלע זעירא position:sticky ממוקם על פי מיקום ה scrollשל הדף נע בין relativeל ,fixedתלוי במיקום ה scroll הוא יהיה כמו relativeעד נקודה מסוימת ואז הוא "נתקע" במקומו כמו fixed Sticky.html Stickyniceexample.html יעל סלע זעירא תרגיל כיתה צור דף חדש המכיל: (1תפריט עליון headerקבוע השתמשו ב sticky (2מתחתיו תמונה עם טקסט ממורכז על גבי התמונה (3מתחתיה שתי קוביות בגודל 200px כאשר התחתונה 100pxפנימה ולמטה ומופיעה מעל העליונה (4תפריט תחתון Footerקבוע שמופיע כל הזמן השתמשו ב sticky/fixed יעל סלע זעירא יעל סלע זעירא יעל סלע זעירא