Шпаргалка CSS
Довідник CSS із пошуком і можливістю друку — selectors, box-модель, flexbox, grid, типографіка, transitions і сучасні можливості. Безкоштовно.
Селектори
13.class
Вибрати всі елементи з класом
#id
Вибрати елемент з id
a, b
Група: вибрати a і b
a b
Нащадок: b всередині a
a > b
Прямий дочірній b елемента a
a + b
Сусідній елемент одразу після a
a ~ b
Загальний сусід b після a
[type="text"]
Селектор атрибута
:hover :focus
Псевдокласи для стану
:nth-child(2n)
Кожен парний дочірній
::before ::after
Псевдоелементи (згенерований вміст)
:not(.x)
Заперечення: будь-що, крім .x
:is(h1, h2, h3)
Збігається з будь-яким селектором у списку
Блокова модель
7box-sizing: border-box;
Включити padding і border у ширину
margin: 0 auto;
Центрувати блок по горизонталі
padding: 1rem 2rem;
Вертикально 1rem, горизонтально 2rem
border: 1px solid #ccc;
Ширина, стиль, колір
border-radius: 8px;
Заокруглені кути
outline: 2px dashed red;
Контур (не впливає на розкладку)
overflow: hidden;
Обрізати вміст, що виходить за межі
Flexbox
8display: flex;
Створити flex-контейнер
flex-direction: row | column;
Напрямок головної осі
justify-content: space-between;
Вирівняти вздовж головної осі
align-items: center;
Вирівняти вздовж поперечної осі
flex-wrap: wrap;
Дозволити перенесення елементів
gap: 1rem;
Проміжок між елементами
flex: 1;
Розтягнутися, заповнюючи простір (1 1 0)
align-self: flex-end;
Перевизначити поперечну вісь для одного елемента
Grid
8display: grid;
Створити grid-контейнер
grid-template-columns: 1fr 1fr 1fr;
Три однакові стовпці
repeat(3, 1fr)
Скорочення для повторюваних доріжок
minmax(200px, 1fr)
Доріжка між min і max
grid-template-columns: repeat(auto-fill, minmax(200px,1fr));
Адаптивні авто-стовпці
gap: 1rem;
Проміжок між рядками та стовпцями
grid-column: 1 / 3;
Простягнути з лінії 1 до 3
place-items: center;
Центрувати елементи по обох осях
Типографіка
8font-family: system-ui, sans-serif;
Стек шрифтів
font-size: 1.125rem;
Відносний розмір шрифту
font-weight: 600;
Жирне накреслення
line-height: 1.6;
Міжрядковий інтервал
letter-spacing: .02em;
Міжлітерний інтервал
text-align: center;
Горизонтальне вирівнювання тексту
text-transform: uppercase;
Змінити регістр літер
text-overflow: ellipsis;
Обрізати з … (потрібні overflow+nowrap)
Кольори та фон
7color: #1f2937;
Колір тексту
background: rgb(0 0 0 / 50%);
Сучасний rgb з альфою
background: linear-gradient(90deg,#f06,#48f);
Лінійний градієнт
opacity: .5;
Прозорість елемента
box-shadow: 0 4px 12px rgb(0 0 0 / .15);
Тінь
background-size: cover;
Масштабувати зображення для заповнення
color-mix(in srgb, red 40%, blue);
Змішати два кольори
Позиціонування
6position: relative;
Зміщення від звичайної позиції
position: absolute;
Відносно найближчого позиціонованого предка
position: fixed;
Відносно вікна перегляду
position: sticky; top: 0;
Прилипає при прокрутці повз
inset: 0;
top/right/bottom/left = 0
z-index: 10;
Порядок накладання
Переходи та анімація
5transition: all .2s ease;
Анімувати зміни властивостей
transform: translateY(-4px) scale(1.05);
Перемістити, масштабувати, обертати
@keyframes spin { to { transform: rotate(360deg); } }
Визначити анімацію
animation: spin 1s linear infinite;
Запустити keyframe-анімацію
will-change: transform;
Підказати браузеру оптимізувати
Адаптивне та сучасне
7@media (max-width: 768px) { ... }
Точка зламу медіазапиту
clamp(1rem, 2vw, 2rem)
Плавне значення з min/max
aspect-ratio: 16 / 9;
Зберегти співвідношення сторін
var(--brand)
Використати кастомну властивість
:root { --brand: #4f46e5; }
Визначити кастомну властивість
container-type: inline-size;
Увімкнути контейнерні запити
@container (min-width: 400px) {…}
Контейнерний запит
Жоден запис не відповідає “:q”.
Потрібна допомога?
Виникла проблема з цим інструментом? Повідомте нас.