語法
css
/* A <number> value */
width: calc(100px * sqrt(9)); /* 300px */
width: calc(100px * sqrt(25)); /* 500px */
width: calc(100px * sqrt(100)); /* 1000px */
引數
sqrt(x) 函式只接受一個值作為引數。
返回值
返回一個<number>,它是 x 的平方根。
- 如果
x是+∞,結果是+∞。 - 如果
x是0⁻,結果是0⁻。 - 如果
x小於0,結果是NaN。
正式語法
<sqrt()> =
sqrt( <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
示例
基於平方根的縮放大小
此示例展示瞭如何使用 sqrt() 函式來計算大小。
HTML
html
<div class="boxes">
<div class="box">50px</div>
<div class="box one">100px</div>
<div class="box two">150px</div>
<div class="box three">200px</div>
</div>
CSS
這裡我們使用CSS 自定義屬性來定義要使用的大小。首先,我們宣告第一個大小 (--size-0),然後用它來計算其他大小。
--size-1透過將--size-0的值 (50px) 乘以 4 的平方根 (2) 來計算,結果為 100px。--size-2透過將--size-0的值 (50px) 乘以 9 的平方根 (3) 來計算,結果為 150px。--size-3透過將--size-0的值 (50px) 乘以 16 的平方根 (4) 來計算,結果為 200px。
css
:root {
--size-0: 50px;
--size-1: calc(var(--size-0) * sqrt(4)); /* 100px */
--size-2: calc(var(--size-0) * sqrt(9)); /* 150px */
--size-3: calc(var(--size-0) * sqrt(16)); /* 200px */
}
然後將這些大小作為選擇器的 width 和 height 值應用。
css
.one {
width: var(--size-1);
height: var(--size-1);
}
.two {
width: var(--size-2);
height: var(--size-2);
}
.three {
width: var(--size-3);
height: var(--size-3);
}
結果
規範
| 規範 |
|---|
| CSS 值和單位模組第 4 級 # 指數函式 |
瀏覽器相容性
載入中…