Spec-Zone.ru › CSS

exp()

Базовая версия 2023

Новое

С декабря 2023 года эта функция работает на последних версиях устройств и браузеров. Возможно, эта функция не будет работать на старых устройствах или браузерах.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Функция exp() CSS функция представляет собой экспоненциальную функцию, которая принимает число в качестве аргумента и возвращает математическую константу e в степени данного числа.

Математическая константа e является основанием натуральных логарифмов и приблизительно равна 2.718281828459045.

Функция exp(number) содержит вычисление, которое возвращает такое же значение, как и pow(e, number).

Синтаксис

/* A <number> value */
width: calc(100px * exp(-1)); /* 100px * 0.367879441171442 = 36px */
width: calc(100px * exp(0)); /* 100px * 1 = 100px */
width: calc(100px * exp(1)); /* 100px * 2.718281828459045 = 217px */

Параметры

Функция exp(number) принимает только одно значение в качестве параметра.

number

Вычисление, которое приводит к <number>. Представляет значение, которое должно быть возведено в степень e.

Возвращаемое значение

Возвращает неотрицательное <number>, представляющее eчисло, что является результатом вычисления e в степени number.

  • Если number равно -Infinity, результат равен 0.
  • Если number равно 0, результат равен 1.
  • Если number равно 1, результат равен e (т.е. 2.718281828459045).
  • Если number равно Infinity, результат равен Infinity.

Формальный синтаксис

<exp()> = 
exp( <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

Примеры

Поворот элементов

Функцию exp() можно использовать для rotate элементов, так как она возвращает <number>.

HTML

<div class="box box-1"></div>
<div class="box box-2"></div>
<div class="box box-3"></div>
<div class="box box-4"></div>
<div class="box box-5"></div>

CSS

div.box {
  width: 100px;
  height: 100px;
  background: linear-gradient(orange, red);
}
div.box-1 {
  transform: rotate(calc(1turn * exp(-1))); // 0.3678794411714423turn
}
div.box-2 {
  transform: rotate(calc(1turn * exp(-0.75))); // 0.4723665527410147turn
}
div.box-3 {
  transform: rotate(calc(1turn * exp(-0.5))); // 0.6065306597126334turn
}
div.box-4 {
  transform: rotate(calc(1turn * exp(-0.25))); // 0.7788007830714049turn
}
div.box-5 {
  transform: rotate(calc(1turn * exp(0))); // 1turn
}

Результат

Масштабирование заголовков с постоянным коэффициентом

Функция exp() может быть полезна для стратегий, таких как модульная шкала CSS, которая связывает все размеры шрифтов на странице друг с другом с помощью постоянного коэффициента.

HTML

<h1>Heading 1</h1>
<h2>Heading 2</h2>
<h3>Heading 3</h3>
<h4>Heading 4</h4>
<h5>Heading 5</h5>
<h6>Heading 6</h6>

CSS

h1 {
  font-size: calc(1rem * exp(1.25)); // 3.4903429574618414rem
}
h2 {
  font-size: calc(1rem * exp(1)); // 2.718281828459045rem
}
h3 {
  font-size: calc(1rem * exp(0.75)); // 2.117000016612675rem
}
h4 {
  font-size: calc(1rem * exp(0.5)); // 1.6487212707001282rem
}
h5 {
  font-size: calc(1rem * exp(0.25)); // 1.2840254166877414rem
}
h6 {
  font-size: calc(1rem * exp(0)); // 1rem
}

Результат

Спецификации

Спецификация
Модуль CSS Values and Units Level 4
# exponent-funcs

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet WebView Android
exp 120 120 118 106 15.4 120 118 80 15.4 25.0 120

См. также

  • pow()
  • sqrt()
  • hypot()
  • log()

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/exp

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API