css3 图片变形再旋转,旋转底盘效果

1. 需求

发现最近和图片样式杠上了。
需要图片可以在根据X轴变形之后仍然能够顺时针或者逆时针旋转。达到如下效果

在这里插入图片描述

步入主题,其实上面就是一个图片旋转底图,然后用的第三方图表工具(highcharts)做的3D饼状图。下面记录下这个圆盘旋转实现步骤,其实很简单,当初想复杂了,还用了什么倾斜 scale 去实现其实用不到。

在这里插入图片描述

2. 实现代码

2.1 html 结构

<div class="imgWrap">
    <img src="test.png">
</div>

2.2 css 样式

首先,实现对图片的旋转:

@keyframes imgRotate{
    0%{
        transform:rotate(0deg);
    }
    100%{
        transform:rotate(360deg);
    }
}
img{
	width: 226px;
	height: 226px;
	display: block;
	margin: 100px auto;
    animation: imgRotate 5s infinite linear;
}

改变 imgRotate 从 0% 的 360° 就实现了逆时针旋转效果,之后,在实现对图片的变形。

.imgWrap{
    transform: rotateX(60deg);
}

3. 开发遇到的坑点

这里犯过一个错误,仍然对img设置transform属性,但是按照x轴变形的效果不会生效,这是因为有了两个transform作用于一个标签。这时就可以将变形效果加在图片的父容器上面。

如果,将旋转动画加在父容器上面,变形样式放在img上面,则会出现下面的效果

在这里插入图片描述

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Q_Q 忙里偷闲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值