CSS unit converter — це інструмент, який перетворює значення довжини між різними системами вимірювання CSS. CSS визначає понад десяток одиниць довжини, розділених на дві групи: абсолютні одиниці — px, pt, cm та in, які відповідають фіксованим фізичним вимірюванням, і відносні одиниці — rem, em, vw, vh та %, які залежать від контексту, як-от розмір шрифту або розміри вікна перегляду.
Браузери зводять усі довжини CSS до пікселів під час рендерингу. Коли ви пишете 1.5rem, браузер множить 1.5 на кореневий розмір шрифту (зазвичай 16px), щоб отримати 24px. Коли ви пишете 50vw, береться половина поточної ширини вікна перегляду. Розуміння цих залежностей необхідне для побудови макетів, що масштабуються на різних пристроях і враховують налаштування користувача, зокрема власний розмір шрифту, встановлений у браузері.
Специфікація CSS Values and Units Module Level 4 (W3C) визначає точні коефіцієнти перетворення між усіма абсолютними одиницями: 1in = 96px = 72pt = 2.54cm = 25.4mm. Відносні одиниці не мають фіксованого коефіцієнта, оскільки залежать від контексту виконання. Безкоштовний CSS unit converter дозволяє миттєво обчислити ці залежності для вашого конкретного кореневого розміру шрифту та розмірів вікна перегляду — без написання будь-якого коду.
Навіщо використовувати CSS Unit Converter?
Конвертування одиниць CSS вручну означає запам'ятовування коефіцієнтів, відкриття калькулятора і перевірку результатів. Цей інструмент виконує конвертацію у вашому браузері без жодних зусиль.
⚡
Миттєва конвертація
Введіть значення, оберіть вихідну одиницю й одразу отримайте результати у всіх 10 одиницях CSS. Не потрібно робити окремі обчислення для px-to-rem, px-to-vw або px-to-pt.
🔒
Конфіденційність даних
Усі конвертації виконуються локально у вашому браузері. Жодні значення не надсилаються на сервер, не записуються і не зберігаються. Закрийте вкладку — і дані зникнуть.
🎯
Відповідність вашому контексту
Задайте кореневий розмір шрифту, ширину та висоту вікна перегляду і розмір батьківського шрифту. Конвертер використовує ці значення для точних результатів у одиницях rem, em, vw, vh та %.
📏
Усі одиниці довжини CSS
Підтримує px, rem, em, vw, vh, %, pt, cm, mm та in. Чи працюєте ви з екранними макетами, таблицями стилів для друку чи адаптивною типографікою — кожна одиниця охоплена.
Випадки використання CSS Unit Converter
Frontend-розробка
Конвертуйте пікселі з макету дизайну у rem для бібліотеки компонентів. Коли макет Figma задає відступ 24px, конвертуйте його у 1.5rem, щоб макет масштабувався відповідно до налаштувань шрифту користувача.
Backend- та Full-Stack-розробка
Генеруйте шаблони PDF або email, де розміри задаються у pt або cm. Конвертуйте пікселі CSS у розміри точок для серверного рендерингу за допомогою таких інструментів, як Puppeteer або wkhtmltopdf.
DevOps та CI-пайплайни
Перевіряйте, що токени відступів у дизайн-системі використовують узгоджені одиниці на всіх кроках збірки. Швидко переконайтеся, що base 16px дає очікувані значення rem у згенерованому CSS.
QA та візуальне тестування
Перевіряйте обчислені стилі під час кросбраузерного тестування. Коли Chrome DevTools показує обчислене значення 14.4px, конвертуйте його у rem, щоб підтвердити відповідність очікуваним 0.9rem з таблиці стилів.
Візуалізація даних
Задавайте розміри елементів SVG або canvas відносно розмірів вікна перегляду. Конвертуйте фіксовані ширини графіків у vw, щоб візуалізації займали стабільний відсоток екрана на різних моніторах.
Вивчення CSS
Зрозумійте залежність між rem, em та px, експериментуючи з різними базовими розмірами. Змініть кореневий розмір шрифту з 16px на 18px і подивіться, як зміняться всі значення rem.
Довідник одиниць довжини CSS
CSS визначає 10 широко вживаних одиниць довжини. Абсолютні одиниці мають фіксований коефіцієнт перетворення у пікселі. Відносні одиниці залежать від контексту: кореневого розміру шрифту для rem, батьківського розміру шрифту для em і вікна перегляду браузера для vw та vh.
Одиниця
Назва
Розмір за замовчуванням
Відносно
px
Pixel
1px
Fixed; 1px = 1/96 of 1in on screens
rem
Root em
16px (default)
Relative to <html> font-size
em
Em
Inherited
Relative to parent element font-size
vw
Viewport width
1% of viewport
Relative to browser window width
vh
Viewport height
1% of viewport
Relative to browser window height
%
Percentage
Varies
Relative to parent property value
pt
Point
1.333px
Print unit; 1pt = 1/72 of 1in
cm
Centimeter
37.795px
Physical unit; 1cm = 96px / 2.54
mm
Millimeter
3.7795px
Physical unit; 1mm = 1cm / 10
in
Inch
96px
Physical unit; 1in = 96px (CSS spec)
Абсолютні та відносні одиниці CSS
Вибір між абсолютними та відносними одиницями впливає на те, як ваш макет реагує на різні екрани та налаштування користувача. Кожна група має свої переваги і недоліки.
Абсолютні одиниці (px, pt, cm, mm, in)
Абсолютні одиниці дають однаковий фізичний розмір незалежно від контексту. Використовуйте px для меж, тіней і елементів, які не повинні масштабуватися. Використовуйте pt для таблиць стилів друку. Специфікація CSS визначає 1in = 96px, хоча фактичний фізичний розмір залежить від DPI дисплея.
Відносні одиниці (rem, em, vw, vh, %)
Відносні одиниці масштабуються разом зі своїм контекстом. Використовуйте rem для розмірів шрифту та відступів, щоб враховувати налаштування користувача. Використовуйте em для внутрішнього масштабування компонентів (відступи відносно власного розміру шрифту елемента). Використовуйте vw/vh для макетів, що заповнюють вікно перегляду, як-от секції hero.
Таблиця перетворення px у rem
Ця таблиця передбачає кореневий розмір шрифту 16px (значення браузера за замовчуванням). Якщо у вашому проекті використовується інша база, поділіть значення у пікселях на вашу базу, щоб отримати еквівалент у rem.
px
rem
pt
Типове використання
10
0.625
7.5
Small caption text
12
0.75
9
Body text (compact)
14
0.875
10.5
Default body text
16
1
12
Root font-size (browser default)
18
1.125
13.5
Large body text
20
1.25
15
H4 heading
24
1.5
18
H3 heading
32
2
24
H2 heading
48
3
36
H1 heading
64
4
48
Display / hero text
Приклади коду
Ці приклади показують, як конвертувати одиниці CSS програмно на JavaScript, Python, за допомогою кастомних CSS-властивостей та Sass.
JavaScript
// px to rem (given root font-size of 16px)
const pxToRem = (px, base = 16) => px / base
pxToRem(24) // → 1.5
// rem to px
const remToPx = (rem, base = 16) => rem * base
remToPx(1.5) // → 24
// px to vw (given viewport width of 1440px)
const pxToVw = (px, viewport = 1440) => (px / viewport) * 100
pxToVw(360) // → 25
// Dynamic calculation using getComputedStyle
const rootFontSize = parseFloat(
getComputedStyle(document.documentElement).fontSize
) // → 16 on most browsers
Який кореневий розмір шрифту встановлений у браузерах за замовчуванням?
Усі основні браузери (Chrome, Firefox, Safari, Edge) мають кореневий розмір шрифту 16px за замовчуванням. Це означає 1rem = 16px, якщо користувач або таблиця стилів не перевизначає розмір шрифту елемента html. Деякі користувачі збільшують це значення в налаштуваннях браузера з міркувань доступності — саме тому rem є кращим варіантом за замовчуванням для тексту порівняно з px.
Як конвертувати px у rem?
Поділіть значення у пікселях на кореневий розмір шрифту. При базі 16px за замовчуванням: 24px / 16 = 1.5rem. Якщо у вашому проекті задано html { font-size: 10px } (поширений скидання), тоді 24px / 10 = 2.4rem. Формула завжди: rem = px / кореневий-розмір-шрифту.
У чому різниця між rem та em?
rem відносний до розміру шрифту кореневого елемента (тег html), тоді як em відносний до розміру шрифту батьківського елемента поточного елемента. Це означає, що rem дає послідовні розміри по всій сторінці, тоді як em накопичується при вкладенні. 2em всередині батька 2em дає 4-кратний кореневий розмір. Використовуйте rem для глобальних відступів і розмірів шрифту; використовуйте em, коли розмір має масштабуватися відносно власного тексту компонента.
Коли слід використовувати одиниці vw або vh?
Використовуйте vw для елементів, які мають масштабуватися залежно від ширини вікна браузера, наприклад секцій hero на всю ширину або рідкої типографіки (clamp з vw). Використовуйте vh для секцій на весь екран або макетів висотою у вікно перегляду. Будьте обережні з vh у мобільних браузерах, де адресний рядок змінює висоту вікна перегляду; новіша одиниця dvh (dynamic viewport height) вирішує цю проблему.
Чи можна поєднувати різні одиниці CSS в одній властивості?
Так. Функція CSS calc() дозволяє комбінувати будь-які одиниці в одному виразі. Наприклад, width: calc(100vw - 2rem) віднімає 32px (при базі за замовчуванням) від повної ширини вікна перегляду. Також можна поєднувати одиниці у clamp(): font-size: clamp(1rem, 2vw + 0.5rem, 2.5rem) створює рідку типографіку, що масштабується між 16px і 40px.
Скільки пікселів становить 1pt у CSS?
У CSS 1pt = 1/72 дюйма, а 1 дюйм = 96px, тому 1pt = 96/72 = 1.333px. Це співвідношення зафіксовано у специфікації CSS незалежно від DPI екрана. Точки переважно використовуються у таблицях стилів для друку та генерації PDF. Для екранного дизайну px або rem є кращим вибором.
Чи досі є хорошою практикою скидання font-size до 62.5%?
Задання html { font-size: 62.5% } робить 1rem = 10px, що спрощує розрахунки в голові (24px = 2.4rem). Однак це вимагає явного задання font-size на елементі body і може спричиняти проблеми зі сторонніми компонентами, які передбачають базу 16px за замовчуванням. Сучасний підхід — зберігати базу 16px і використовувати функцію Sass або плагін PostCSS для виконання конвертації.