sign()
Baseline
2025
Newly available
Since June 2025, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Hàm sign() trong CSS là một hàm chứa một phép tính và trả về -1 nếu giá trị số của đối số là âm, +1 nếu giá trị số của đối số là dương, 0⁺ nếu giá trị số của đối số là 0⁺, và 0⁻ nếu giá trị số của đối số là 0⁻.
Note:
Trong khi abs() trả về giá trị tuyệt đối của đối số, sign() trả về dấu của đối số.
Cú pháp
/* property: sign( expression ) */
top: sign(20vh - 100px);
Tham số
Hàm sign(x) chỉ chấp nhận một giá trị làm tham số.
x-
Một phép tính trả về một số.
Giá trị trả về
Một số đại diện cho dấu của A:
- Nếu
xlà dương, trả về1. - Nếu
xlà âm, trả về-1. - Nếu
xlà số không dương, trả về0. - Nếu
xlà số không âm, trả về-0. - Trường hợp khác, trả về
NaN.
Cú pháp chính thức
<sign()> =
sign( <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
Ví dụ
>Vị trí ảnh nền
Ví dụ, trong background-position, các phần trăm dương trả về độ dài âm, và ngược lại, nếu ảnh nền lớn hơn vùng nền. Do đó sign(10%) có thể trả về 1 hoặc -1, tùy thuộc vào cách phần trăm được giải quyết! (Hoặc thậm chí 0, nếu nó được giải quyết theo độ dài không.)
div {
background-position: sign(10%);
}
Hướng vị trí
Một trường hợp sử dụng khác là kiểm soát position của phần tử. Giá trị có thể là dương hoặc âm.
div {
position: absolute;
top: calc(100px * sign(var(--value)));
}
Thông số kỹ thuật
| Specification |
|---|
| CSS Values and Units Module Level 4> # sign-funcs> |