תכונות CSS הקשורות לפריסה
מאמר זה מסביר על תכונות CSS הקשורות לפריסה.
ניתן ללמוד על השימוש ואופן הכתיבה של תכונות display ו-position.
YouTube Video
HTML לתצוגה מקדימה
css-layout.html
1<!DOCTYPE html>
2<html lang="en">
3<head>
4 <meta charset="UTF-8">
5 <meta name="viewport" content="width=device-width, initial-scale=1.0">
6 <title>CSS Properties Example</title>
7 <link rel="stylesheet" href="css-base.css">
8 <link rel="stylesheet" href="css-layout.css">
9</head>
10<body>
11 <!-- Header -->
12 <header>
13 <h1>CSS Properties For Layout</h1>
14 </header>
15
16 <!-- Main content -->
17 <main>
18 <header>
19 <h2>Layout Related Properties</h2>
20 </header>
21 <article>
22 <h3>display: block</h3>
23 <section>
24 <header><h4>CSS</h4></header>
25<pre class="sample">
26.block-element {
27 display: block;
28 width: 400px;
29 background-color: lightblue;
30 padding: 10px;
31 margin-bottom: 10px;
32}
33</pre>
34 <header><h4>HTML</h4></header>
35 <pre><div class="block-element">This is a block element.</div></pre>
36 <header><h4>HTML+CSS</h4></header>
37 <section class="sample-view">
38 <div class="block-element">This is a block element.</div>
39 </section>
40 </section>
41 </article>
42 <article>
43 <h3>display: inline</h3>
44 <section>
45 <header><h4>CSS</h4></header>
46<pre class="sample">
47span.inline-element {
48 background-color: lightgray;
49 padding: 10px;
50}
51
52div.inline-element {
53 display: inline;
54 background-color: lightblue;
55 padding: 10px;
56}
57</pre>
58 <header><h4>HTML</h4></header>
59<pre>
60<span class="inline-element">This is an inline element.</span>
61<div class="inline-element">div tag with "display: inline"</div>
62</pre>
63 <header><h4>HTML+CSS</h4></header>
64 <section class="sample-view">
65 <span class="inline-element">This is an inline element.</span>
66 <div class="inline-element">div tag with "display: inline"</div>
67 </section>
68 </section>
69 </article>
70 <article>
71 <h3>display: inline-block</h3>
72 <section>
73 <header><h4>CSS</h4></header>
74<pre class="sample">
75.inline-block-element {
76 display: inline-block;
77 width: 200px;
78 background-color: lightblue;
79 padding: 10px;
80}
81</pre>
82 <header><h4>HTML</h4></header>
83<pre>
84<span class="inline-element">This is an inline element.</span>
85<div class="inline-block-element">This is an inline-block element.</div>
86<span class="inline-element">Another inline element.</span>
87</pre>
88 <header><h4>HTML+CSS</h4></header>
89 <section class="sample-view">
90 <span class="inline-element">This is an inline element.</span>
91 <div class="inline-block-element">This is an inline-block element.</div>
92 <span class="inline-element">Another inline element.</span>
93 </section>
94 </section>
95 </article>
96 <article>
97 <h3>display: none</h3>
98 <section>
99 <header><h4>CSS</h4></header>
100<pre class="sample">
101div.none-element {
102 display: none;
103 background-color: lightblue;
104 padding: 10px;
105}
106</pre>
107 <header><h4>HTML</h4></header>
108 <pre><div class="none-element">This is a none element.</div></pre>
109 <header><h4>HTML+CSS</h4></header>
110 <section class="sample-view">
111 <div class="none-element">This is a none element.</div>
112 </section>
113 </section>
114 </article>
115 <article>
116 <h3>display: flex</h3>
117 <section>
118 <header><h4>CSS</h4></header>
119<pre class="sample">
120.flex-container {
121 display: flex;
122 justify-content: space-between;
123 background-color: lightgray;
124 padding: 10px;
125}
126
127.flex-container div {
128 width: 120px;
129 background-color: lightblue;
130}
131</pre>
132 <header><h4>HTML</h4></header>
133<pre>
134<div class="flex-container">
135 <div>Item 1</div>
136 <div>Item 2</div>
137</div>
138</pre>
139 <header><h4>HTML+CSS</h4></header>
140 <section class="sample-view">
141 <div class="flex-container">
142 <div>Flex item 1</div>
143 <div>Flex item 2</div>
144 </div>
145 </section>
146 </section>
147 </article>
148 <article>
149 <h3>display: inline-flex</h3>
150 <section>
151 <header><h4>CSS</h4></header>
152<pre class="sample">
153.inline-flex-container {
154 display: inline-flex;
155 width: 250px;
156 justify-content: space-between;
157 background-color: lightgray;
158 padding: 10px;
159}
160
161.inline-flex-container div {
162 width: 100px;
163 background-color: lightblue;
164}
165</pre>
166 <header><h4>HTML</h4></header>
167<pre>
168<span class="inline-element">Inline element</span>
169<div class="inline-flex-container">
170 <div>Inline Flex item 1</div>
171 <div>Inline Flex item 2</div>
172</div>
173</pre>
174 <header><h4>HTML+CSS</h4></header>
175 <section class="sample-view">
176 <span class="inline-element">Inline element</span>
177 <div class="inline-flex-container">
178 <div>Inline Flex item 1</div>
179 <div>Inline Flex item 2</div>
180 </div>
181 </section>
182 </section>
183 </article>
184 <article>
185 <h3>display: grid</h3>
186 <section>
187 <header><h4>CSS</h4></header>
188<pre class="sample">
189.grid-container {
190 display: grid;
191 grid-template-columns: repeat(2, 1fr);
192 gap: 10px;
193 background-color: #f3f3f3;
194 padding: 10px;
195 height: 200px;
196}
197.grid-container div {
198 background-color: lightblue;
199 border: 1px solid #aaa;
200 padding: 5px;
201 text-align: center;
202 width: 100px;
203}
204</pre>
205 <header><h4>HTML</h4></header>
206<pre>
207<div class="grid-container">
208 <div>Item 1</div>
209 <div>Item 2</div>
210 <div>Item 3</div>
211 <div>Item 4</div>
212</div>
213</pre>
214 <header><h4>HTML+CSS</h4></header>
215 <section class="sample-view">
216 <div class="grid-container">
217 <div>Item 1</div>
218 <div>Item 2</div>
219 <div>Item 3</div>
220 <div>Item 4</div>
221 </div>
222 </section>
223 </section>
224 </article>
225 <article>
226 <h3>display: inline-grid</h3>
227 <section>
228 <header><h4>CSS</h4></header>
229<pre class="sample">
230.inline-grid-element {
231 display: inline-grid;
232 grid-template-columns: 1fr 1fr;
233 gap: 5px;
234 background-color: lightblue;
235 padding: 5px;
236 width: 200px;
237 height: 150px;
238}
239.inline-grid-element div {
240 background-color: lightskyblue;
241 padding: 5px;
242 text-align: center;
243 border: 1px solid #ccc;
244 width: 80px;
245 height: 25px;
246}
247</pre>
248 <header><h4>HTML</h4></header>
249<pre>
250<span class="inline-element">This is an inline element.</span>
251<div class="inline-grid-element">
252 <div>Item 1</div>
253 <div>Item 2</div>
254 <div>Item 3</div>
255 <div>Item 4</div>
256</div>
257<span class="inline-element">Another inline element.</span>
258</pre>
259 <header><h4>HTML+CSS</h4></header>
260 <section class="sample-view">
261 <span class="inline-element">This is an inline element.</span>
262 <div class="inline-grid-element">
263 <div>Item 1</div>
264 <div>Item 2</div>
265 <div>Item 3</div>
266 <div>Item 4</div>
267 </div>
268 <span class="inline-element">Another inline element.</span>
269 </section>
270 </section>
271 </article>
272 <article>
273 <h3>display: table</h3>
274 <section>
275 <header><h4>CSS</h4></header>
276<pre class="sample">
277.table-container {
278 display: table;
279 border-collapse: collapse;
280 width: 100%;
281 height: 100%;
282}
283
284.table-row {
285 display: table-row;
286}
287
288.table-cell {
289 display: table-cell;
290 border: 1px solid #999;
291 padding: 8px;
292 text-align: center;
293 vertical-align: middle;
294 background-color: lightblue;
295}
296
297.header-row .table-cell {
298 font-weight: bold;
299 background-color: lightskyblue;
300}
301</pre>
302 <header><h4>HTML</h4></header>
303<pre>
304<section>
305 <div class="table-container">
306 <div class="table-row header-row">
307 <div class="table-cell">Header 1</div>
308 <div class="table-cell">Header 2</div>
309 </div>
310 <div class="table-row">
311 <div class="table-cell">Row 1, Cell 1</div>
312 <div class="table-cell">Row 1, Cell 2</div>
313 </div>
314 <div class="table-row">
315 <div class="table-cell">Row 2, Cell 1</div>
316 <div class="table-cell">Row 2, Cell 2</div>
317 </div>
318 </div>
319</section>
320</pre>
321 <header><h4>HTML+CSS</h4></header>
322 <section class="sample-view">
323 <div class="table-container">
324 <div class="table-row header-row">
325 <div class="table-cell">Header 1</div>
326 <div class="table-cell">Header 2</div>
327 </div>
328 <div class="table-row">
329 <div class="table-cell">Row 1, Cell 1</div>
330 <div class="table-cell">Row 1, Cell 2</div>
331 </div>
332 <div class="table-row">
333 <div class="table-cell">Row 2, Cell 1</div>
334 <div class="table-cell">Row 2, Cell 2</div>
335 </div>
336 </div>
337 </section>
338 </section>
339 </article>
340 <article>
341 <h3>display: list-item</h3>
342 <section>
343 <header><h4>CSS</h4></header>
344<pre class="sample">
345.list-item-element {
346 display: list-item;
347 list-style-position: inside;
348 list-style-type: disc;
349 margin-left: 20px;
350 background-color: lightblue;
351 padding: 10px;
352 height: min-content;
353}
354</pre>
355 <header><h4>HTML</h4></header>
356<pre>
357<div class="list-item-element">This is a list item element.</div>
358<div class="list-item-element">Another list item element.</div>
359<div class="list-item-element">Yet another list item element.</div>
360</pre>
361 <header><h4>HTML+CSS</h4></header>
362 <section class="sample-view">
363 <div class="list-item-element">This is a list item element.</div>
364 <div class="list-item-element">Another list item element.</div>
365 <div class="list-item-element">Yet another list item element.</div>
366 </section>
367 </section>
368 </article>
369 <article>
370 <h3>position</h3>
371 <section style="height: auto;">
372 <header><h4>position: static</h4></header>
373 <section class="sample-view">
374 <div class="static-element">This is a static element.</div>
375 </section>
376 <header><h4>position: relative; top: 10px; left: 20px;</h4></header>
377 <section class="sample-view">
378 <div class="relative-element">This is a relative element.</div>
379 </section>
380 <header><h4>position: absolute; top: 10px; left: 20px;</h4></header>
381 <section class="sample-view">
382 <div class="absolute-container">
383 <div class="absolute-element">This is an absolute element.</div>
384 </div>
385 </section>
386 <header><h4>position: fixed; bottom: 10px; right: 10px;</h4></header>
387 <section class="sample-view">
388 <div class="fixed-element">This is a fixed element.</div>
389 </section>
390 <header><h4>position: sticky; top: 0;</h4></header>
391 <section class="sample-view">
392 <div class="sticky-container">
393 <div style="width: 20px; height: 400px; background: linear-gradient(to top, red, blue);"></div>
394 <div class="sticky-element">This is a sticky element. Scroll down!</div>
395 </div>
396 </section>
397 </section>
398 </article>
399 </main>
400</body>
401</html>{^ i18n 配置・レイアウト ^}
תכונת display
תכונת ה-display היא תכונה ב-CSS שמגדירה כיצד האלמנט יוצג. היא קובעת באיזה פורמט האלמנט יוצג, כגון block, inline, flex, grid או hidden.
ערכי תכונת display
block
1.block-element {
2 display: block;
3 width: 400px;
4 background-color: lightblue;
5 padding: 10px;
6 margin-bottom: 10px;
7}- על ידי ציון
block, האלמנט מוצג כאלמנט ברמת בלוק. - אלמנטים ברמת בלוק מוצגים בשורה חדשה בתוך הדף, ודוחפים אלמנטים אחרים לשורה הבאה.
- אלמנטים טיפוסיים ברמת בלוק כוללים
<div>,<p>,<h1>,<section>,<article>, ועוד.
inline
1span.inline-element {
2 background-color: lightgray;
3 padding: 10px;
4}
5
6div.inline-element {
7 display: inline;
8 background-color: lightblue;
9 padding: 10px;
10}- על ידי ציון
inline, האלמנט מוצג כאלמנט ברמת שורה. - אלמנטים ברמת שורה מוצגים באותה שורה כמו אלמנטים סמוכים ומיושרים אופקית.
- אלמנטים טיפוסיים ברמת שורה כוללים
<span>,<a>,<strong>, ועוד. - אלמנטים ברמת שורה ממוקמים באותה שורה עם אלמנטים ברמת שורה נוספים ומוצגים בצורה רציפה אופקית, בשונה מאלמנטים ברמת בלוק.
inline-block
1.inline-block-element {
2 display: inline-block;
3 width: 200px;
4 background-color: lightblue;
5 padding: 10px;
6}- ציון
inline-blockמציג את האלמנט כאלמנט ברמת שורה, אך הוא גם בעל מאפיינים של אלמנטים ברמת בלוק. - אלמנטים ברמת
inline-blockמוצגים באותה שורה עם אלמנטים ברמת שורה נוספים, אך ניתן להגדיר להם גובה ורוחב כמו אלמנטים ברמת בלוק. - אלמנטים כמו
<img>,<button>ו-<canvas>מתנהגים כברירת מחדל כמוinline-block.
none
1div.none-element {
2 display: none;
3 background-color: lightblue;
4 padding: 10px;
5}- ציון
noneגורם לכך שהאלמנט לא יוצג. - האלמנט הופך לבלתי נראה לחלוטין ומוצא הן מהמסך והן מהתבנית.
flex
1.flex-container {
2 display: flex;
3 justify-content: space-between;
4 background-color: lightgray;
5 padding: 10px;
6}
7
8.flex-container div {
9 width: 120px;
10 background-color: lightblue;
11}- ציון
flexמציג את האלמנט כמיכל Flexbox. - הוא משמש לארגן וליישר בצורה גמישה את האלמנטים הילדים (פריטי Flex).
- שימוש ב-Flexbox מאפשר לאלמנטים הילדים להיות מוצגים בשורה אחת, כאשר השוליים והיישור מותאמים באופן אוטומטי.
inline-flex
1.inline-flex-container {
2 display: inline-flex;
3 width: 250px;
4 justify-content: space-between;
5 background-color: lightgray;
6 padding: 10px;
7}
8
9.inline-flex-container div {
10 width: 100px;
11 background-color: lightblue;
12}- ציון
inline-flexמציג את האלמנט כמיכל פלקסבוקס מקוון (inline flexbox). - למרות שיש לו מאפייני פלקסבוקס, האלמנט נחשב כמו אלמנט מקוון ומוצג באותה שורה עם אלמנטים אחרים.
grid
1.grid-container {
2 display: grid;
3 grid-template-columns: repeat(2, 1fr);
4 gap: 10px;
5 background-color: #f3f3f3;
6 padding: 10px;
7 height: 200px;
8}
9
10.grid-container div {
11 background-color: lightblue;
12 border: 1px solid #aaa;
13 padding: 5px;
14 text-align: center;
15 width: 100px;
16}- ציון
gridמציג את האלמנט כמיכל סריג (grid container). - ניתן ליישם פריסת סריג כדי לסדר אלמנטים ילדים בשורות ובטורים.
- אלמנטים ילדים במיכל הסריג מסודרים בצורה מסודרת לאורך טורים ושורות.
inline-grid
1.inline-grid-element {
2 display: inline-grid;
3 grid-template-columns: 1fr 1fr;
4 gap: 5px;
5 background-color: lightblue;
6 padding: 5px;
7 width: 200px;
8 height: 150px;
9}
10.inline-grid-element div {
11 background-color: lightskyblue;
12 padding: 5px;
13 text-align: center;
14 border: 1px solid #ccc;
15 width: 80px;
16 height: 25px;
17}- ציון
inline-gridמציג את האלמנט כמיכל סריג מקוון (inline grid container). - הוא עושה שימוש במערכת פריסת סריג ונחשב כאובייקט מקוון.
table
1.table-container {
2 display: table;
3 border-collapse: collapse;
4 width: 100%;
5 height: 100%;
6}
7
8.table-row {
9 display: table-row;
10}
11
12.table-cell {
13 display: table-cell;
14 border: 1px solid #999;
15 padding: 8px;
16 text-align: center;
17 vertical-align: middle;
18 background-color: lightblue;
19}
20
21.header-row .table-cell {
22 font-weight: bold;
23 background-color: lightskyblue;
24}- ציון
tableמציג את האלמנט כטבלה. יש לו פריסה הדומה ל-<table>ב-HTML, והאלמנטים הילדים שלו נחשבים לתאי טבלה. - כפי שמוצג בדוגמה זו, יש להגדיר את המאפיין
displayשל אלמנטים הבנים ל-table-rowאו ל-table-cell.- כאשר מוגדר
table-row, האלמנט מתנהג כמו שורת טבלה (<tr>). - כאשר מוגדר
table-cell, האלמנט מתנהג כמו תא טבלה (<td>).
- כאשר מוגדר
list-item
1.list-item-element {
2 display: list-item;
3 list-style-position: inside;
4 list-style-type: disc;
5 margin-left: 20px;
6 background-color: lightblue;
7 padding: 10px;
8 height: min-content;
9}- ציון
list-itemמציג את האלמנט כפריט רשימה. זה מוחל על אלמנטים<li>שבדרך כלל נמצאים בתוך<ul>או<ol>.
תכונת position
1.static-element {
2 position: static;
3 background-color: lightblue;
4 padding: 10px;
5 margin-bottom: 20px;
6}
7
8.relative-element {
9 position: relative;
10 background-color: lightblue;
11 top: 10px;
12 left: 20px;
13 padding: 10px;
14 margin-bottom: 20px;
15}
16
17.absolute-container {
18 position: relative;
19 width: 500px;
20 height: 150px;
21 background-color: lightgray;
22 margin-bottom: 20px;
23}
24
25.absolute-element {
26 position: absolute;
27 top: 10px;
28 left: 20px;
29 background-color: lightblue;
30 padding: 10px;
31}
32
33.fixed-element {
34 position: fixed;
35 bottom: 10px;
36 right: 10px;
37 background-color: lightblue;
38 padding: 10px;
39}
40
41.sticky-container {
42 overflow: scroll;
43 height: 150px;
44 width: 500px;
45}
46
47.sticky-element {
48 position: sticky;
49 top: 0;
50 background-color: lightblue;
51 padding: 10px;
52}position היא תכונה ששולטת כיצד אלמנטים מוצבים ב-CSS. ניתן להשתמש בתכונה זו כדי למקם אלמנטים יחסית או באופן מוחלט להורה שלהם או לאלמנטים אחרים, או לקבע אותם במקום.
ערכים של מאפיין position
static
1.static-element {
2 position: static;
3}- במחלקת
static-element, התכונהpositionמוגדרת כ-static. האלמנט מוצב בזרימה הרגילה. staticהוא הערך ברירת המחדל. אם לא צוין ערך עבורposition, הערךstaticיוחל.- האלמנט ממוקם בהתאם לזרימת המסמך הרגילה. לא ניתן להשתמש במאפייני
top,right,bottom,left.
relative
1.relative-element {
2 position: relative;
3 top: 10px;
4 left: 20px;
5}- במחלקת
relative-element, התכונהpositionמוגדרת כ-relative. האלמנט זז יחסית למיקום הנורמלי שלו. בדוגמה זו, הוא ממוקם 10 פיקסלים למטה ו-20 פיקסלים ימינה. - הגדרת
relativeממקמת את האלמנט באופן יחסי. האלמנט זז ממיקומו המקורי למיקום שנקבע על ידי מאפייניtop,right,bottom,left, תוך שהוא פועל לפי זרימת המסמך הרגילה. - אלמנט עם מיקום יחסי (
) משאיר מקום במיקומו המקורי גם לאחר שהוא זז. - בדוגמה זו, האלמנט נע 10 פיקסלים כלפי מטה ו-20 פיקסלים ימינה ממיקומו המקורי, אך זרימת המסמך מתנהלת בהתאם למיקום המקורי.
absolute
1.absolute-element {
2 position: absolute;
3 top: 10px;
4 left: 20px;
5}- במחלקת
absolute-element, התכונהpositionמוגדרת כ-absolute. בדוגמה זו, האלמנט מוצב 10 פיקסלים למטה ו-20 פיקסלים ימינה מפינת השמאלית העליונה של ההורה שלו (או של חלון התצוגה). - כאשר מוגדר
absolute, האלמנט ממוקם באופן מוחלט יחסית להורה שלו. אם המאפייןpositionשל אלמנט האב מוגדר כ-relative,absoluteאוfixed, האלמנט ימוקם ביחס לאלמנט האב באמצעות המאפייניםtop,right,bottom,left. אם לא נמצא אלמנט אב, הוא ימוקם ביחס כלל העמוד (viewport). - אלמנט עם מיקום מוחלט (
) מוצא מזרימת המסמך הרגילה ואינו משפיע על האלמנטים האחרים.
fixed
1.fixed-element {
2 position: fixed;
3 top: 0;
4 right: 0;
5}- במחלקת
fixed-element, התכונהpositionמוגדרת כ-fixed. הגדרתfixedממקמת אלמנט במקום קבוע. האלמנט מקובע לתצוגה (viewport) ולא זז כאשר גוללים. - לדוגמה, זה משמש לשמירה על כותרת עמוד או סרגל ניווט גלויים תמיד.
- בדוגמה זו, האלמנט מקובע לפינה הימנית התחתונה של המסך ונשאר שם גם כאשר הגלילה מתבצעת בדף.
sticky
1.sticky-element {
2 position: sticky;
3 top: 0;
4}- במחלקת
sticky-element, הערך שלpositionמוגדר כ-sticky. - כאשר מוגדר
sticky, האלמנט ממוקם באופן דינמי בהתאם לגלילה. הוא עוקב אחרי זרימת המסמך הרגילה, אך כאשר העמוד נגלל, האלמנט "נדבק" במיקום מסוים בהתאם לערכים שהוגדרו עבורtop,right,bottom, ו-left. stickyמתנהג כמו אלמנט קבוע () בטווח מסוים. - בדוגמה זו, האלמנט מוצג במיקומו הרגיל, אך כאשר העמוד נגלל למיקום שנקבע על ידי ה-
top, הוא נדבק לאותו מיקום ועוקב אחרי הגלילה.
מאפייני top, left, bottom, right
top, left, bottom ו-right הם מאפיינים לשליטה במיקומי אלמנטים ב-CSS. מאפיינים אלה משמשים יחד עם המאפיין position כדי לקבוע כמה להזיז אלמנט לכיוון מסוים ביחס למיקומו.
עם זאת, מאפיינים אלה חלים רק כאשר position מוגדר כ-relative, absolute, fixed או sticky. בערך ברירת המחדל static, למאפיינים אלה אין כל השפעה.
כיצד להשתמש ב-top, left, bottom, right
top
1.relative-element {
2 position: relative;
3 top: 20px; /* Positioned 20px from the top */
4}- המאפיין
topמגדיר כמה רחוק אלמנט צריך להיות מוזז מהחלק העליון.- בדוגמה זו, האלמנט מוזז 20px מטה ממיקומו הרגיל.
left
1.absolute-element {
2 position: absolute;
3 left: 50px; /* Positioned 50px from the left */
4}- המאפיין
leftמגדיר כמה רחוק אלמנט צריך להיות מוזז מהשמאל.- בדוגמה זו, האלמנט מוזז 50px ימינה מהשמאל.
bottom
1.fixed-element {
2 position: fixed;
3 bottom: 10px; /* Positioned 10px from the bottom */
4}- המאפיין
bottomמגדיר כמה רחוק אלמנט צריך להיות מוזז מהחלק התחתון.- בדוגמה זו, האלמנט מקובע 10px מעל לחלק התחתון של המסך. הוא נשאר באותו מיקום גם כאשר גוללים.
right
1.sticky-element {
2 position: sticky;
3 right: 20px; /* Positioned 20px from the right */
4}- המאפיין
rightמגדיר כמה רחוק אלמנט צריך להיות מוזז מהימין.- בדוגמה זו, במהלך הגלילה האלמנט מוזז 20px שמאלה מהימין ומקובע במיקום זה.
הקשר עם המאפיין position
relative: מזיז את האלמנט לפי הערכים שצוינו ב-top,left,bottom,rightביחס למיקומו הרגיל.absolute: מזיז את האלמנט למיקום שצויין ב-top,left,bottom,rightביחס לאב הקרוב ביותר שבו המאפייןpositionמוגדר כ-relative,absoluteאוfixed.fixed: מקבע את האלמנט במיקום שצויין ביחס ל-viewport (כל המסך). הוא נשאר באותו מיקום גם כאשר גוללים.sticky: האלמנט נשאר במצבו הרגיל עד שהוא מגיע למיקום שצויין במהלך גלילה, ואז הוא "נדבק" באותו מיקום.
תוכלו לעקוב אחר המאמר שלמעלה באמצעות Visual Studio Code בערוץ היוטיוב שלנו. נא לבדוק גם את ערוץ היוטיוב.