css3学习之2D转换功能详解
YPE html>
åè¨
CSS3æä¾äº2D转æ¢åè½ï¼è½å¤å¯¹å
ç´ è¿è¡ç§»å¨ã缩æ¾å转å¨çåè½ã
2D转æ¢çå±æ§å为transformï¼ä½¿ç¨æ¹æ³ä¸ºtransform:method(value)ã
2D转æ¢æ¹æ³ætranslateãscaleãrotateãskewãmatrixï¼è¿æåºäºè¿äºåæ¯åºçtranslateXãscaleYçã
è¿éï¼æå°ä¼ä»ç»å°ä»¥ä¸è½¬æ¢æ¹æ³ï¼
- translate()
- rotate()
- scale()
- skew()Â
é¦å ï¼æ们å æå ¥ä¸ä¸ªç®åçhtml代ç
Css3ç2D转æ¢
è¿æ®µä»£ç æ们å¯ä»¥å®ç°å¨ä¸ä¸ªdivéæ¾ä¸å¼ å¾çï¼éè¿è¿å¼ å¾ç以便äºå大家ä»ç»ä»¥ä¸æ¹æ³ã
1.translateï¼ï¼æ¹æ³ï¼è¿ä¸ªæ¹æ³éå¯ä»¥æ两个åæ°ï¼ä¸é´ç¨åå·éå¼ï¼åå«è¡¨ç¤ºæ²¿çXè½´åY轴移å¨çè·ç¦»ï¼è¿ä¸ªè·ç¦»æ¯ç¸å¯¹äºè¯¥å¾çç移å¨è·ç¦»ï¼ä¸åå³ä¸ºXè½´çæ£æ¹åï¼åä¸ä¸ºYè½´çæ£æ¹åãä¸é¢ç代ç 表示å°å¾çåå³ç§»å¨100pxï¼åä¸ä¹ç§»å¨100ããã
img{ margin:100px 0 0 100px; transform:translate(100px,100px); }
2.rotate()æ¹æ³ï¼è¿ä¸ªæ¹æ³éæä¸ä¸ªåæ°ï¼è¡¨ç¤ºè¦æ转ç度æ°ï¼æ£æ°è¡¨ç¤ºé¡ºæ¶éæ转ï¼é£ä¹è´æ°å°±è¡¨ç¤ºéæ¶éæ转äºãå¨è¦æ转ç度æ°åé¢æ·»å deg ï¼å³degreeï¼åº¦æ°çææï¼ã以ä¸ä»£ç 表示å°å¾ç顺æ¶éæ转50°ã
img{ margin:100px 0 0 100px; transform:rotate(50deg); ï½
3.scale()æ¹æ³ï¼è¿ä¸ªæ¹æ³éæ两个åæ°ï¼æ²¡æåä½ãåå«è¡¨ç¤ºå®½åº¦åé«åº¦æ¾å¤§æ缩å°çåæ°ï¼å¦æ大äº1表示æ¾å¤§ï¼å¦æå°äºä¸è¡¨ç¤ºç¼©å°ã以ä¸ä»£ç 表示å°å¾çç宽度åé«åº¦é½æ¾å¤§ä¸¤åã
img{ margin:100px 0 0 100px; transform:scale(2,2); }
4.skewï¼ï¼æ¹æ³ï¼æ两个åæ°ï¼åå«è¡¨ç¤ºæ²¿çXè½´åYè½´å¾æ转æ¢ï¼åä½åæ ·æ¯degï¼è¡¨ç¤ºè§åº¦ãè¿ä¸ªæ¹æ³ä¸æ¯å¾å®¹æç解ãé¦å ç»åºä¸å代ç ï¼
img{ margin:100px 0 0 100px; transform:skew(20deg,0deg); ï½
表示å°å¾ç沿çxè½´éæ¶éæ转20度ã
è¿æ¯æ²¡æ使ç¨skewï¼ï¼æ¹æ³çæ ·å
è¿æ¯ä½¿ç¨äºskewï¼ï¼æ¹æ³ä¹åçæ ·åã
为ä»ä¹å¢ï¼è¿æ¯å ä¸ºå ¶xè½´åYè½´çæ¹åæ¯è¿æ ·çï¼
å½xè½´æ转20°æ¶ä¼å°å¾çè¿è¡éæ¶éæ转ï¼ä½æ¯è¯·æ³¨æï¼è¿éä¸æ¯çæ£æä¹ä¸çæ转ï¼èææ伸å¾æçææï¼æ转ä¹åï¼å®ç宽度并没ææ¹åï¼å¹¶ä¸åä¸æ¡å线å¯ä»¥åç°é«ä¹æ¯æ²¡ææ¹åçã
对äºYè½´æ¹åçæ转æ¯ä¸æ ·çï¼
img{ margin:100px 0 0 100px; transform:skew(0deg,20deg); ï½
ä¸é¢ç代ç 表示å°å¾ç沿çYè½´æ¹åæ转äº20°ã
æ转ä¹åï¼å°±æ¯ä¸é¢è¿æ ·äºï¼å®æ¯æ²¿ç顺æ¶éæ¹åæ转çã
å¦æï¼æ们对xåyè½´é½æ转å¢ï¼
img{ margin:100px 0 0 100px; transform:skew(20deg,20deg); ï½
é£ä¹æç»å°±æ¯ç»¼åä½ç¨çææäºï¼å¦ä¸å¾æ示ï¼
说äºè¿ä¹å¤ï¼å¤§å®¶æ没æåç°æ们æ¯æ¬¡å移ï¼æ转ï¼å¾æï¼æ¾å¤§å缩å°æ¯ç¸å¯¹äºåªä¸ªç¹å¢ï¼
å¦æä½ ç¨å¾®ç»å¿çè¯ï¼å°±ä¼åç°æ¯ç¸å¯¹äºä¸å¿ç¹ãè¿éå°±è¦ç¨å°tansform-originå±æ§äºã
å³éè¿è¿ä¸ªå±æ§ï¼æ们å¯ä»¥è§å®è¿äºæ¹æ³éè¿åªä¸ä¸ªç¹ä½ä¸ºåç¹ã
é¦å 举å 个ä¾åã
transform-originï¼0 0ï¼è¡¨ç¤ºä»¥å·¦ä¸è§ä¸ºåç¹ã
transform-originï¼100% 0ï¼è¡¨ç¤ºä»¥å³ä¸è§ä¸ºåç¹
transform-originï¼0 100%ï¼è¡¨ç¤ºä»¥å·¦ä¸è§ä¸ºåç¹
transform-originï¼100% 100%ï¼è¡¨ç¤ºä»¥å³ä¸è§ä¸ºåç¹
äºæ¯æ们å¯ä»¥å¾ç¥ï¼è¿äºå¼ç设å®æ¯ä»¥å·¦ä¸è§ä¸ºåºç¹çï¼åå³ä¸ºxè½´çæ£æ¹åï¼åä¸ä¸ºyè½´çæ£æ¹åãå¦æä¸è®¾å®è¿ä¸ªå±æ§ï¼é£ä¹é»è®¤å¼ä¸º
transform-origin:50% 50%;å³ä»¥ä¸å¿ä½ä¸ºåæ¢çåºç¹ã
æåæè¿è¦è¯´ä¸ä¸æµè§å¨å ¼å®¹çé®é¢ï¼ä¸ºäºä½¿ä»£ç è½å¨å个æµè§å¨è¿è¡æåï¼æ们éè¦å¨å±å æ ·å¼è¡¨ä¸å¤å å è¡ä»£ç ï¼æ¯å¦è¯´rotate()æ¹æ³ï¼
transform: rotate(30deg); -ms-transform: rotate(30deg); /* IE 9 */ -webkit-transform: rotate(30deg); /* Safari and Chrome */ -o-transform: rotate(30deg); /* Opera */ -moz-transform: rotate(30deg); /* Firefox */
è¿æ ·ï¼æ们就å¯ä»¥å¨å个主è¦æµè§å¨æµç è¿è¡äºï¼
æ»ç»
以ä¸å°±æ¯è¿ç¯æç« çå ¨é¨å 容äºï¼å¸ææ¬æçå 容对åä½å¦ä¹ æè 使ç¨CSS3è½å¸¦æ¥ä¸å®ç帮å©ï¼å¦ææçé®å¤§å®¶å¯ä»¥çè¨äº¤æµã