このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

rem()

Baseline 2024
Newly available

Since ⁨May 2024⁩, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

rem()CSS関数で、最初の引数を 2 つ目の引数で割ったときの剰余を返します。これは、JavaScript の剰余演算子 (%) と似ています。剰余は、1 つのオペランド(被除数)を 2 つ目のオペランド(除数)で割ったときに残る値です。常に被除数の符号を取ります。

メモ: 単位 rem については、 <length> ページをご覧ください。

例えば、CSS の rem(27, 5) 関数は、剰余として 2 を返します。 27 を 5 で割ると、結果は 5 で、剰余は 2 になります。完全な計算は 27 / 5 = 5 * 5 + 2 です。

構文

css
/* 単位なしの <number> */
line-height: rem(21, 2); /* 1 */
line-height: rem(14, 5); /* 4 */
line-height: rem(5.5, 2); /* 1.5 */

/* <percentage> や <dimension> に基づく単位 */
margin: rem(14%, 3%); /* 2% */
margin: rem(18px, 5px); /* 3px */
margin: rem(10rem, 6rem); /* 4rem */
margin: rem(26vmin, 7vmin); /* 5vmin */
margin: rem(1000px, 29rem); /* 72px - ルートの font-size が 16px の場合 */

/* 負の値・正の値 */
rotate: rem(200deg, 30deg); /* 20deg */
rotate: rem(140deg, -90deg); /* 50deg */
rotate: rem(-90deg, 20deg); /* -10deg */
rotate: rem(-55deg, -15deg); /* -10deg */

/* 計算 */
scale: rem(10 * 2, 1.7); /* 1.3 */
rotate: rem(10turn, 18turn / 3); /* 4turn */
transition-duration: rem(20s / 2, 3000ms * 2); /* 4s */

引数

関数 mod(dividend, divisor) は、カンマで区切られた 2 つの値を引数として受け入れます。関数が有効であるためには、両方の引数は同じ型、数値サイズ<percentage> のいずれかである必要があります。2 つの引数の単位は同じである必要はありませんが、<length><angle><time><frequency> などの同じサイズの型である必要があります。

dividend

被除数を表す <number><dimension><percentage> に解決される計算式。

divisor

除数として表される <number><dimension><percentage> に解決される計算式。

返値

剰余、つまり余りの演算を、<number><dimension><percentage> (引数の型に応じて)で表して返します。

  • divisor0 の場合、結果は NaN です。
  • dividendinfinite の場合、結果は NaN です。
  • dividend が正の値の場合、結果は正の値 (0⁺) となり、dividend が負の値の場合、結果は負の値 (0⁻) となります。

形式文法

<rem()> = 
rem( <calc-sum> , <calc-sum> )

<calc-sum> =
<calc-product> [ [ '+' | '-' ] <calc-product> ]*

<calc-product> =
<calc-value> [ [ '*' | / ] <calc-value> ]*

<calc-value> =
<number> |
<dimension> |
<percentage> |
<calc-keyword> |
( <calc-sum> )

<calc-keyword> =
e |
pi |
infinity |
-infinity |
NaN

仕様書

Specification
CSS Values and Units Module Level 4
# funcdef-rem

ブラウザーの互換性

関連情報