老师您看下效果对不?另外,

来源:2-12 编程练习

我不是胖球球

2021-04-26 22:10:29

另外,transform-origin: 0 0;还是transform-origin: 100% 100%,这个是怎么看的呢?

相关代码:

<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
* {
padding: 0;
margin: 0;
}

.box {
width: 200px;
height: 200px;
margin: 50px auto;
position: relative;
perspective: 500px;
}

.box img {
width: 200px;
height: 200px;
border: 1px solid #000;
border-radius: 50%;
}

.box img.cat {
position: absolute;
left: 0;
top: 0;
transition: transform 1s linear 0s;
transform-origin: 0 0;
}

.box:hover img.cat {
transform: rotateY(-180deg);
}

.no2 img.cat {
transform-origin: 100% 100%;
}

.no2:hover img.cat {
transform: rotateY(180deg);
}

.no3 img.cat {
transform-origin: 0 0;
}

.no3:hover img.cat {
transform: rotateX(180deg);
}

.no4 img.cat {
transform-origin: 100% 100%;
}

.no4:hover img.cat {
transform: rotateX(-180deg);
}
</style>
</head>

<body>
<div class="box">
<img class="cat" src="../images/cat.jpg" alt="">
<img class="dog" src="../images/dog.jpg" alt="">
</div>
<div class="box no2">
<img class="cat" src="../images/cat.jpg" alt="">
<img class="dog" src="../images/dog.jpg" alt="">
</div>
<div class="box no3">
<img class="cat" src="../images/cat.jpg" alt="">
<img class="dog" src="../images/dog.jpg" alt="">
</div>
<div class="box no4">
<img class="cat" src="../images/cat.jpg" alt="">
<img class="dog" src="../images/dog.jpg" alt="">
</div>
</body>

</html>


写回答

1回答

好帮手慕慕子

2021-04-27

同学你好,代码效果实现是正确的,针对同学的问题解答如下:

transition-origin属性主要是设置旋转元素的基点位置,第一个属性值表示在水平方向(X轴)的位置,第二个属性值表示垂直方向(Y轴)的位置。

(1)transition-origin:0 0;设置基点位置为元素的左上角,即绿色的位置,如下图所示:

http://img.mukewang.com/climg/60877295096c60cb04730261.jpg

以第一个动画效果为例:由于设置的是绕Y轴旋转,Y轴是竖直方向的,所以最终的旋转轴线是过Y轴并过transform-origin这点:


http://img.mukewang.com/climg/608772c5099c44f804700254.jpg

由于旋转角度是负的,方向如下:

http://img.mukewang.com/climg/6087740309f4c09606380287.jpg


(2)transition: 100% 100%;表示设置基点位置为元素的右下角,即绿色的位置,如下图所示:

http://img.mukewang.com/climg/6087737e09ee613405040255.jpg

以第二个动画为例:由于设置的是绕Y轴旋转,Y轴是竖直方向的,所以最终的旋转轴线是过Y轴并过transform-origin这点:

http://img.mukewang.com/climg/608773b70930ceeb04110249.jpg


由于旋转角度是正的,方向如下:

http://img.mukewang.com/climg/6087742d09173d0e06300277.jpg

其他的动画也是同样的道理,祝学习愉快~

0

0 学习 · 15276 问题

查看课程