css3通過(guò)scale()、rotate()實(shí)現(xiàn)放大、旋轉(zhuǎn)

2021-8-24    前端達(dá)人

css3通過(guò)scale()實(shí)現(xiàn)放大功能、通過(guò)rotate()實(shí)現(xiàn)旋轉(zhuǎn)功能,下面有個(gè)示例,大家可以參考下

一、scale()方法

縮放,指的是“縮小”和“放大”。在CSS3中,我們可以使用scale()方法來(lái)將元素根據(jù)中心原點(diǎn)進(jìn)行縮放。

跟translate()方法一樣,縮放scale()方法也有3種情況:

(1)scaleX(x):元素僅水平方向縮放(X軸縮放);
(2)scaleY(y):元素僅垂直方向縮放(Y軸縮放);
(3)scale(x,y):元素水平方向和垂直方向同時(shí)縮放(X軸和Y軸同時(shí)縮放);

1、scaleX(x)

語(yǔ)法:

transform:scaleX(x)

說(shuō)明:

x表示元素沿著水平方向(X軸)縮放的倍數(shù),如果大于1就代表放大;如果小于1就代表縮小。
大家想想倍數(shù)是怎樣一個(gè)概念就很好理解了。

2、scaleY(y)

語(yǔ)法:

transform:scaleY(y)

說(shuō)明:

y表示元素沿著垂直方向(Y軸)縮放的倍數(shù),如果大于1就代表放大;如果小于1就代表縮小。

3、scale(x,y)

語(yǔ)法:

transform:scale(x,y)

說(shuō)明:

x表示元素沿著水平方向(X軸)縮放的倍數(shù),y表示元素沿著垂直方向(Y軸)縮放的倍數(shù)。
注意,Y是一個(gè)可選參數(shù),如果沒(méi)有設(shè)置Y值,則表示X、Y兩個(gè)方向的縮放倍數(shù)是一樣的(同時(shí)放大相同倍數(shù))。

舉例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<!DOCTYPE html>
<head>
    <title>CSS3縮放scale()用法</title>
    <style type="text/css">
        /*設(shè)置原始元素樣式*/
        .main
        {
            margin:100px auto;/*水平居中*/
            width:300px;
            height:200px;
            border:1px dashed gray;
        }
        /*設(shè)置當(dāng)前元素樣式*/
        #jb51
        {
            width:300px;
            height:200px;
            color:white;
            background-color: #3EDFF4;
            text-align:center;
            transform:scaleX(1.5);
            -webkit-transform:scaleX(1.5);  /*兼容-webkit-引擎瀏覽器*/
            -moz-transform:scaleX(1.5);     /*兼容-moz-引擎瀏覽器*/
        }
        /*普通方便對(duì)比*/
         #jbzj
        {
            width:300px;
            height:200px;
            color:white;
            background-color: #3EDFF4;
            text-align:center;
        }
    </style>
</head>
<body>
    <div class="main">
        <div id="jb51">腳本之家1</div>
    </div>
    <div class="main">
        <div id="jbzj">腳本之家2</div>
    </div>
</body>
</html>

在chrome瀏覽器預(yù)覽效果如下:

分析:

從上圖可以看出,元素沿著X軸方向放大了1.5倍(兩個(gè)方向同時(shí)延伸,整體放大1.5倍)。

transform:scaleY (1.5);
-webkit-transform:scaleY(1.5); /*兼容-webkit-引擎瀏覽器*/
-moz-transform:scaleY(1.5); /*兼容-moz-引擎瀏覽器*/

當(dāng)使用上面代碼時(shí),在瀏覽器預(yù)覽效果如下:

css3通過(guò)scale()實(shí)現(xiàn)放大功能

通過(guò)rotate()實(shí)現(xiàn)旋轉(zhuǎn)功能

旋轉(zhuǎn)rotate()函數(shù)通過(guò)指定的角度參數(shù)使元素相對(duì)原點(diǎn)進(jìn)行旋轉(zhuǎn)。它主要在二維空間內(nèi)進(jìn)行操作,設(shè)置一個(gè)角度值,用來(lái)指定旋轉(zhuǎn)的幅度。如果這個(gè)值為正值,元素相對(duì)原點(diǎn)中心順時(shí)針旋轉(zhuǎn);如果這個(gè)值為負(fù)值,元素相對(duì)原點(diǎn)中心逆時(shí)針旋轉(zhuǎn)。如下圖所示:

HTML代碼:

1
2
3
<div class="wrapper">
  <div></div>
</div>

CSS代碼:

1
2
3
4
5
6
7
8
9
10
11
12
13
.wrapper {
  width: 200px;
  height: 200px;
  border: 1px dotted red;
  margin: 100px auto;
}
.wrapper div {
  width: 200px;
  height: 200px;
  background: orange;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

演示結(jié)果

而transition則可設(shè)置元素變化所需的時(shí)間

html中的結(jié)構(gòu)代碼

<ul>
<li><img src="image/1.jpg" ></li>
<li><img src="image/2.jpg" ></li>
<li><img src="image/3.jpg" ></li>
</ul>

css3樣式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
ul{
margin-top:50px;
list-style:none;
}
ul li{
width:200px;
height:150px;
float:left;
margin-left:10px;
-webkit-transition:all 1s;
-moz-transition:all 1s;
-o-transition:all 1s;
}
ul li:hover{
-webkit-transform:scale(1.5) rotate(10deg);
-moz-transform:scale(1.5) rotate(10deg);
-o-transform:scale(1.5) rotate(10deg);
}
li img{
width:100%;
height:100%;
}

以上就是css3通過(guò)scale()、rotate()實(shí)現(xiàn)放大、旋轉(zhuǎn)的詳細(xì)內(nèi)容,更多關(guān)于css3放大、旋轉(zhuǎn)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!




藍(lán)藍(lán)設(shè)計(jì)建立了UI設(shè)計(jì)分享群,每天會(huì)分享國(guó)內(nèi)外的一些優(yōu)秀設(shè)計(jì),如果有興趣的話,可以進(jìn)入一起成長(zhǎng)學(xué)習(xí),請(qǐng)掃碼ben_lanlan,報(bào)下信息,會(huì)請(qǐng)您入群。歡迎您加入噢~~希望得到建議咨詢、商務(wù)合作,也請(qǐng)與我們聯(lián)系。

文章來(lái)源:腳本之家

分享此文一切功德,皆悉回向給文章原作者及眾讀者.
免責(zé)聲明:藍(lán)藍(lán)設(shè)計(jì)尊重原作者,文章的版權(quán)歸原作者。如涉及版權(quán)問(wèn)題,請(qǐng)及時(shí)與我們?nèi)〉寐?lián)系,我們立即更正或刪除。

藍(lán)藍(lán)設(shè)計(jì)www.yvirxh.cn )是一家專注而深入的界面設(shè)計(jì)公司,為期望卓越的國(guó)內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù)

日歷

鏈接

個(gè)人資料

存檔