atan()

基线 2023

新可用

2023 年 3 月起,此功能在最新的设备和浏览器版本中都能正常使用。此功能可能在较旧的设备或浏览器中无法正常使用。

atan() CSS 函数 是一个三角函数,返回 -∞+∞ 之间数字的反正切。该函数包含一个单一计算,返回表示介于 -90deg90deg 之间的 <angle> 的弧度数。

语法

css
/* Single <number> values */
transform: rotate(atan(1));
transform: rotate(atan(4 * 50));

/* Other values */
transform: rotate(atan(pi / 2));
transform: rotate(atan(e * 3));

参数

atan(number) 函数仅接受一个值作为其参数。

number

解析为 -∞+∞ 之间的 <number> 的计算。

返回值

number 的反正切将始终返回介于 -90deg90deg 之间的 <angle>

  • 如果 number0⁻,则结果为 0⁻
  • 如果 number+∞,则结果为 90deg
  • 如果 number-∞,则结果为 -90deg

也就是说

  • atan(-infinity) 代表 -90deg
  • atan(-1) 代表 -45deg
  • atan(0) 代表 0deg
  • atan(1) 代表 45deg
  • atan(infinity) 代表 90deg

正式语法

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

示例

旋转元素

atan() 函数可用于 rotate 元素,因为它返回 <angle>

HTML

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

css
div.box {
  width: 100px;
  height: 100px;
  background: linear-gradient(orange, red);
}
div.box-1 {
  transform: rotate(atan(-99999));
}
div.box-2 {
  transform: rotate(atan(-1));
}
div.box-3 {
  transform: rotate(atan(0));
}
div.box-4 {
  transform: rotate(atan(1));
}
div.box-5 {
  transform: rotate(atan(99999));
}

结果

规范

规范
CSS 值和单位模块级别 4
# trig-funcs

浏览器兼容性

BCD 表格仅在浏览器中加载

另请参阅