Ознайомлення з функцією calc() в CSS
Функція calc()
в CSS – це простий спосіб виконати прості математичні дії прямо в CSS стилях без використання, наприклад, мови програмування PHP. Функція вміє працювати з чотирма простими математичними операторами: додавання (+), віднімання (–), множення (*) і ділення (/). З допомогою функції calc()
ви можете розрахувати значення властивостей CSS прямо під час їх визначення.
Приклад синтаксису функції calc()
/* властивість: calc(математична дія); */width: calc(100% - 35px);
Математична дія, яку можна виконати для виразу, може приймати наступні форми:
+
(додавання). Приклад:width: calc(25px + 75px);
-
(віднімання). Приклад:padding-top: calc(50px - 7%);
*
(множення). Приклад:line-height: calc(20% * 2);
/
(ділення). Приклад:margin: calc(35% / 2);
Зауваження щодо використання функції calc()
- Знаки плюс та мінус повинні бути відділені від значень пробілами с двох боків. Вираз
calc(100% -35px)
буде інтерпретовано як величину в процентах та наступне за ним від’ємне число в пікселях (невірний вираз), в той час як виразcalc(100% - 35px)
– буде інтерпретовано як віднімання від процентів певної кількості пікселів (тобто, це буде правильний вираз). - Оператори
*
і/
не вимагають відділення від операндів пробілами, але це не заборонено і навіть вітається для кращого читання - Ви можете використовувати різні одиниці вимірювання для кожного з операндів. Щоб вказати бажаний порядок обчислення, ви можете використовувати дужки.
- Якщо значення не може бути обчислено, воно ігнорується.
- Ділення на нуль видасть помилку при парсингу HTML.
Коли можна використовувати calc()
Функція calc()
стає вкрай корисною, коли одне із значень є відносною одиницею (наприклад, %), а інше – фіксованою. Ця властивість дуже часто застосовується в адаптивному веб-дизайні.
Приклад використання: позиціонування об’єкта за допомогою відступу
У приклад нижче ми позиціонуємо блок на всю ширину вікна, з відступами по краях в 40px при будь-якому розмірі девайсу.
.block { position: absolute; width: 85%; /* Для браузерів, які не підтримують calc() */ width: calc(100% - 50px); padding: 15px; border: 1px #000 solid; }
Підтримка функції calc() браузерами
Підтримка на подив досить хороша.
- Firefox до версії 16.0 підтримує значення
-moz-calc
. - Chrome до версії 26.0 підтримує значення
-webkit-calc
. - Safari з версії 6.0 підтримує значення
-webkit-calc
. - На мобільних пристроях Android тільки з 67+, iOS тільки на 6.0+, а Opera Mini поки не підтримує цю функцію.
This post was last modified on 23/01/2019 17:33
Останні пости
Уроки SQL — як знайти повторювані записи (дублі) в базі даних
По-перше, щоб не допустити подібних ситуацій, вам заздалегідь потрібно надавати унікальні значення у таблицях. Так…
Ремонт чи купівля нової шини? Варіанти ремонту гуми
Заплатка на шині, як правило, є простим і дешевим варіантом порівняно з покупкою нового колеса,…
Гігієна кота: основні правила та рекомендації ветеринарів
Коти належать до охайних тварин — приблизно половину свого життя вони витрачають на «гігієнічні процедури».…
Збірні швидкомонтовані будинки — основне, що потрібно знати
Щось готове до вживання, як от піца чи локшина, вже давно зайняло почесне місце в…
Популярність, переваги та сфери застосування металосайдингу
Сьогодні акцент на екологічному дизайні та матеріалах має високі показники та популярність. Дизайнери обирають екологічно…