Spec-Zone.ru › CSS

tan()

Базовая 2023

Новое

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

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

Функция tan() CSS функция — тригонометрическая функция, которая возвращает тангенс числа, значение которого находится между −infinity и infinity. Функция содержит единственное вычисление, которое должно разрешиться в <number> или <angle>, интерпретируя результат аргумента как радианы.

Синтаксис

/* Single <angle> values */
width: calc(100px * tan(45deg));
width: calc(100px * tan(0.125turn));
width: calc(100px * tan(0.785398163rad));

/* Single <number> values */
width: calc(100px * tan(0.5773502));
width: calc(100px * tan(1.732 - 1));

/* Other values */
width: calc(100px * tan(pi / 3));
width: calc(100px * tan(e));

Параметры

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

angle

Вычисление, которое разрешается в <number> или <angle>. При указании безразмерных чисел они интерпретируются как количество радиан, представляющих <angle>.

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

Тангенс angle всегда возвращает число между −∞ и +∞.

  • Если angle — infinity, -infinity, или NaN, результат — NaN.
  • Если angle — 0⁻, результат — 0⁻.
  • Если angle — одно из значений асимптоты (например, 90deg, 270deg, и т. д.), результат явно не определён. Авторы не должны полагаться на то, что tan() возвращает какое-либо определённое значение для таких входов.

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

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

Примеры

Рисование параллелограммов

Функцию tan() можно использовать для рисования параллелограмма с заданной областью.

HTML

<div class="parallelogram"></div>

CSS

.parallelogram {
  --w: 400;
  --h: 200;
  --angle: 30deg;
  position: relative;
  width: calc(1px * var(--w));
  height: calc(1px * var(--h));
}
.parallelogram::before {
  content: "";
  position: absolute;
  width: calc(100% - 100% * var(--h) / var(--w) * tan(var(--angle)));
  height: 100%;
  transform-origin: 0 100%;
  transform: skewX(calc(0deg - var(--angle)));
  background-color: red;
}

Результат

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

Спецификация
CSS Values and Units Module Level 4
# trig-funcs

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

Десктоп Мобильные
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на iOS Samsung Internet WebView Android
tan 111 111 108 97 15.4 111 108 75 15.4 22.0 111

См. также

  • sin()
  • cos()
  • asin()
  • acos()
  • atan()
  • atan2()

© 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/tan

Spec-Zone.ru

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