Skip to content

Commit ccd7f1f

Browse files
Docs(MD): Added interview questions and answers
1 parent 5f8bd58 commit ccd7f1f

File tree

1 file changed

+93
-1
lines changed

1 file changed

+93
-1
lines changed

README.md

Lines changed: 93 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2796,7 +2796,99 @@ h1 + p {
27962796
</details>
27972797

27982798
<details>
2799-
<summary>67. ???</summary>
2799+
<summary>67. Опишіть z-індекс і те, як порядок стекування контролюється в CSS.</summary>
2800+
2801+
#### CSS
2802+
2803+
- В CSS z-індекс (z-index) визначає порядок розташування елементів по осі Z — тобто, хто буде «над» ким на екрані.
2804+
2805+
#### 🧱 Основи стекування (stacking)
2806+
2807+
Усі елементи на сторінці утворюють stacking context (контекст накладання), де визначається порядок накладання (тобто, що зверху, а що знизу).
2808+
2809+
🔹 `z-index`
2810+
Це числове значення, яке вказує порядок стекування елементів. Чим більше значення — тим вище елемент у візуальному стеку.
2811+
2812+
```css
2813+
.box {
2814+
position: absolute;
2815+
z-index: 10;
2816+
}
2817+
```
2818+
2819+
⚠️ z-index працює тільки на елементах з position значенням relative, absolute, fixed, або sticky.
2820+
2821+
#### 🔢 Як формується стек:
2822+
2823+
1. Контекст накладання (stacking context) починається з html, але може створюватись новими елементами за певних умов.
2824+
2825+
2. Новий контекст створюється, коли:
2826+
2827+
- Елемент має position (relative, absolute, fixed, sticky) + z-index, відмінний від auto.
2828+
2829+
- opacity < 1
2830+
2831+
- transform, filter, perspective, will-change, mix-blend-mode і т.
2832+
2833+
#### 📚 Приклад стекування
2834+
2835+
```html
2836+
<div class="container">
2837+
<div class="box box--red"></div>
2838+
<div class="box box--blue"></div>
2839+
</div>
2840+
```
2841+
2842+
```css
2843+
.container {
2844+
position: relative;
2845+
}
2846+
2847+
.box {
2848+
position: absolute;
2849+
width: 100px;
2850+
height: 100px;
2851+
}
2852+
2853+
.box--red {
2854+
background: red;
2855+
top: 0;
2856+
left: 0;
2857+
z-index: 1;
2858+
}
2859+
2860+
.box--blue {
2861+
background: blue;
2862+
top: 20px;
2863+
left: 20px;
2864+
z-index: 2;
2865+
}
2866+
```
2867+
2868+
🔎 Тут синій блок буде зверху, бо має більший z-index.
2869+
2870+
#### 🪜 Пріоритети стекування (спрощено)
2871+
2872+
У межах одного stacking context елементи розташовуються так:
2873+
2874+
1. `z-index`: negative — позаду всіх
2875+
2876+
2. `z-index`: auto (блоки без явного індексу)
2877+
2878+
3. `z-index`: 0 і вище — зверху
2879+
2880+
#### 📌 Поради:
2881+
2882+
- Уникай зайвого використання високих z-index (типу 9999). Краще керуй контекстом.
2883+
2884+
- Створюй окремі stacking context-и для складних компонентів (наприклад, модальних вікон).
2885+
2886+
- Використовуй BEM або семантичні класи, щоб зрозуміло керувати елементами в контексті.
2887+
2888+
</details>
2889+
2890+
<details>
2891+
<summary>68. ???</summary>
28002892

28012893
#### CSS
28022894

0 commit comments

Comments
 (0)