docs.rodeo

MDN Web Docs mirror

sin()

{{CSSRef}} 

The sin() CSS function is a trigonometric function that returns the sine of a number, which is a value between -1 and 1. The function contains a single calculation that must resolve to either a {{cssxref("<number>")}}  or an {{cssxref("<angle>")}}  by interpreting the result of the argument as radians. That is, sin(45deg), sin(0.125turn), and sin(3.14159 / 4) all represent the same value, approximately 0.707.

Syntax

/* Single <angle> values */
width: calc(100px * sin(45deg));
width: calc(100px * sin(0.25turn));
width: calc(100px * sin(1.0471967rad));

/* Single <number> values */
width: calc(100px * sin(63.673));
width: calc(100px * sin(2 * 0.125));

/* Other values */
width: calc(100px * sin(pi / 2));
width: calc(100px * sin(e / 4));

Parameters

The sin(angle) function accepts only one value as its parameter.

Return value

The sine of an angle will always return a number between −1 and 1.

Formal syntax

{{CSSSyntax}} 

Examples

Changing box sizes

In this example, sin(30deg) will return 0.5, making the box have a 50px width and a 50px height.

div {
  background-color: red;
  width: calc(sin(30deg) * 100px);
  height: calc(sin(30deg) * 100px);
}

Controlling animation duration

Another use case is to control the {{cssxref("animation-duration")}} , reducing the duration based on the sine value. In this case, the animation duration will be 1s.

div {
  animation-name: myAnimation;
  animation-duration: calc(sin(0.25turn) * 1s);
}

Specifications

{{Specifications}} 

Browser compatibility

{{Compat}} 

See also

In this article

View on MDN