scale()
åºçº¿
广æ³å¯ç¨
èª 2015å¹´7æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
CSS 彿° scale() ç¨äºä¿®æ¹å
ç´ ç大å°ãå¯ä»¥éè¿åéå½¢å¼å®ä¹ç缩æ¾å¼æ¥æ¾å¤§æç¼©å°å
ç´ ï¼åæ¶å¯ä»¥å¨ä¸åçæ¹å设置ä¸åç缩æ¾å¼ã
å°è¯ä¸ä¸
transform: scale(1);
transform: scale(0.7);
transform: scale(1.3, 0.4);
transform: scale(-0.5, 1);
<section id="default-example">
<img
class="transition-all"
id="example-element"
src="/proxy/developer.mozilla.org/shared-assets/images/examples/firefox-logo.svg"
width="200" />
</section>
è¯¥åæ¢éè¿ä¸ä¸ªäºç»´åéç¡®å®å¨ä¸ä¸ªæ¹å缩æ¾çå¤å°ãå¦æç¼©æ¾åéçä¸¤ä¸ªåæ æ¯ç¸ççï¼é£ä¹æè®²æ¯åççï¼æè 说æ¯åååçï¼åæ¶å ç´ çå½¢ç¶æ¯è¢«ä¿æçãè¿ç§æ åµä¸è¿è¡çæ¯ä½ä¼¼åæ¢ã
å½åæ å¼å¤äºåºé´ [-1, 1] ä¹å¤æ¶ï¼è¯¥åæ¢å°å¨ç¸åºçåæ æ¹å䏿¾å¤§è¯¥å
ç´ ï¼å½å¤å¨åºé´ä¹ä¸æ¶ï¼è¯¥åæ¢å°å¨ç¸åºçåæ æ¹åä¸ç¼©å°è¯¥å
ç´ ãå½å¼ä¸º 1 æ¶å°ä¸è¿è¡ä»»ä½å¤çï¼å½ä¸ºè´æ°æ¶ï¼å°è¿è¡åç´ ç¹åå°ä¹ååè¿è¡å¤§å°çä¿®æ¹ã
夿³¨ï¼scale() ä»
éç¨äºå¨æ¬§å éå¾·å¹³é¢ï¼äºç»´å¹³é¢ï¼ä¸ç忢ã妿éè¦è¿è¡ç©ºé´ä¸ç缩æ¾ï¼å¿
é¡»ä½¿ç¨ scale3D() ã
è¯æ³
scale(sx)
æ
scale(sx, sy)
å¼
- sx
-
<number>ï¼è¡¨ç¤ºç¼©æ¾åéçæ¨ªåæ ã - sy
-
<number>ï¼è¡¨ç¤ºç¼©æ¾åéççºµåæ ã妿æªè®¾ç½®ï¼åä»çé»è®¤å¼è¢«è®¾ç½®ä¸º sxãä»è使å¾å ç´ å¨ä¿æåæå½¢ç¶ä¸åç缩æ¾
| â2ä¸çç¬å¡å°åæ 忢 | ââ2ä¸ç齿¬¡åæ 忢 | â3ä¸çç¬å¡å°åæ 忢 | ââ3ä¸ç齿¬¡åæ 忢 |
|---|---|---|---|
[sx 0 0 sy 0 0] |
示ä¾
>åä¸ç»´åº¦ç¼©æ¾
HTML
<p>foo</p>
<p class="transformed">bar</p>
CSS
p {
width: 50px;
height: 50px;
background-color: teal;
}
.transformed {
/* çåäºåæ¢ï¼scaleX(2) scaleY(2);*/
transform: scale(2);
background-color: blue;
}
ç»æ
å¨ X å Y 两个维度缩æ¾å¹¶ç§»å¨ç¼©æ¾ä¸å¿
HTML
<p>foo</p>
<p class="transformed">bar</p>
CSS
p {
width: 50px;
height: 50px;
background-color: teal;
}
.transformed {
/* çåäº scaleX(2) scaleY(0.5) */
transform: scale(2, 0.5);
transform-origin: left;
background-color: blue;
}
ç»æ
è§è
| è§è |
|---|
| CSS Transforms Module Level 1> # funcdef-transform-scale> |