CSS-функция `mod()`
Базовая поддержка Недавно стала доступна
Эта функция работает в последних версиях браузеров и на современных устройствах. Она может не работать на старых устройствах и в старых версиях браузеров. Поддержка во всех браузерах появилась в мае 2024 года.
mod() CSS-функция возвращает остаток от деления первого параметра на второй, подобно оператору остатка от деления (%) в JavaScript. Остаток от деления — это значение, остающееся после деления одного операнда, делимого, на другой операнд, делитель. Знак остатка всегда совпадает со знаком делителя.
Вычисление имеет вид a - (Math.floor(a / b) * b). Например, CSS-функция mod(21, -4) возвращает остаток от деления -3. Полное вычисление имеет вид 21 - (Math.floor(21 / -4) * -4). При делении 21 на -4 результат равен -5.25. Это округляется вниз до -6. Умножение -6 на -4 равно 24. Вычитая это значение 24 из исходного 21, получаем остаток -3.
Синтаксис
/* Unitless <number> */ line-height: mod(7, 2); /* 1 */ line-height: mod(14, 5); /* 4 */ line-height: mod(3.5, 2); /* 1.5 */ /* Unit based <percentage> and <dimension> */ margin: mod(15%, 2%); /* 1% */ margin: mod(18px, 4px); /* 2px */ margin: mod(19rem, 5rem); /* 4rem */ margin: mod(29vmin, 6vmin); /* 5vmin */ margin: mod(1000px, 29rem); /* 72px - if root font-size is 16px */ /* Negative/positive values */ rotate: mod(100deg, 30deg); /* 10deg */ rotate: mod(135deg, -90deg); /* -45deg */ rotate: mod(-70deg, 20deg); /* 10deg */ rotate: mod(-70deg, -15deg); /* -10deg */ /* Calculations */ scale: mod(10 * 2, 1.7); /* 1.3 */ rotate: mod(10turn, 18turn / 3); /* 4turn */ transition-duration: mod(20s / 2, 3000ms * 2); /* 4s */
Параметры
Функция mod(dividend, divisor) принимает два значения, разделённых запятой. Чтобы функция была корректной, оба параметра должны иметь один и тот же тип: число, размерность или <percentage>. Единицы измерения в параметрах могут различаться, но они должны относиться к одному типу размерности, например <length>, <angle>, <time> или <frequency>.
-
dividend - Вычисление, результатом которого является
<number>,<dimension>или<percentage>, представляющее делимое. -
divisor - Вычисление, результатом которого является
<number>,<dimension>или<percentage>, представляющее делитель.
Возвращаемое значение
Возвращает <number>, <dimension> или <percentage> (соответствующее типу параметров), представляющее остаток от деления.
- Если
divisorравно0, результат —NaN. - Если
dividendравноinfinite, результат —NaN. - Если
divisorположительное, результат положительный (0⁺), а еслиdivisorотрицательное, результат отрицательный (0⁻).
Формальный синтаксис
<mod()> = mod( <calc-sum>, <calc-sum> ) <calc-sum> = <calc-product> [ [ '+' | '-' ] <calc-product> ]* <calc-product> = <calc-value> [ '*' <calc-value> | '/' <number> ]* <calc-value> = <number> | <dimension> | <percentage> | <calc-constant> | ( <calc-sum> ) <calc-constant> = e | pi | infinity | -infinity | NaN
Спецификации
| Спецификация |
|---|
| Модуль значений и единиц CSS, уровень 4 # funcdef-mod |
Совместимость с браузерами
| Настольные компьютеры | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari в iOS | Samsung Internet | WebView Android | WebView в iOS | |
mod |
125 |
125 |
118 |
111 |
15.4 |
125 |
118 |
83 |
15.4 |
27.0 |
125 |
15.4 |
mixed_type_parameters |
125 |
125 |
118 |
111 |
17.2 |
125 |
118 |
83 |
17.2 |
27.0 |
125 |
17.2 |
См. также
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/mod