tan()
tan() CSS 函数是一个三角函数,它返回一个数字的正切值,该值介于 −infinity 和 infinity 之间。该函数包含一个单一计算,通过将参数结果解释为弧度,必须解析为 <number> 或 <angle>。
语法
css
/* 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 的正切值将始终返回一个介于 −∞ 和 +∞ 之间的数字。
- 如果 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
html
<div class="parallelogram"></div>
CSS
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 值和单位模块第 4 级 # trig-funcs | 
浏览器兼容性
加载中…