css - 设置没有动画的css rotateY
问题描述
我正在制作一个翻转卡 html 元素,单击时它会围绕 Y 轴旋转。这部分工作得很好,尽管有人发现了一个错误,即翻转卡“反向”上的内容偶尔会沿着 y 轴镜像(我已经确定这是因为浏览器被 SCORM 更新和错过了 y 旋转)。我提出的“解决方案”是在初始“翻转”过渡完成时将 y 旋转重置为 0。问题是我找不到如何简单地设置 y 旋转,而无需将其转换/动画到该旋转。我只想立即设置 y 旋转,没有任何动画。
这个答案...... 没有应用过渡的CSS3 rotateY ......说我不应该使用过渡,只是变换,但这正是我正在做的:
$("#card"+element.attr('id')).css({ '-webkit-transform' : 'rotateY( 0deg)', '-moz-transform' : 'rotateY( 0deg)', '-o-transform' : 'rotateY( 0deg)', 'transform' : 'rotateY( 0deg)' });
我也试过:
$("#card"+element.attr('id')).css({ '-webkit-transform' : 'matrix(1,0,0,1,0,0)', '-moz-transform' : 'matrix(1,0,0,1,0,0)', '-o-transform' : 'matrix(1,0,0,1,0,0)', 'transform' : 'matrix(1,0,0,1,0,0)' });
在 css 中定义了一个转换:
.flipcard.flipped {
-webkit-transform: rotateY( 180deg);
-moz-transform: rotateY( 180deg);
-o-transform: rotateY( 180deg);
transform: rotateY( 180deg);
}
.back {
-webkit-transform: rotateY( 180deg);
-moz-transform: rotateY( 180deg);
-o-transform: rotateY( 180deg);
transform: rotateY( 180deg);
padding: 30px;
}
.flipcard {
box-shadow: 0px 0px 5px #888888;
transition: transform 3500ms ease;
margin-bottom:15px;
min-height:480px;
overflow:hidden;
}
...那么这是否也会影响添加到元素的任何其他转换?老实说,我是 CSS 过渡的新手,所以我不能 100% 确定最初的翻转过渡是如何应用的。
再一次,任何帮助将不胜感激!
编辑
澄清:我正在尝试通过第一次单击 cardflip 元素时触发的 setTimeout 函数重置 rotateY 属性。这是它目前的样子:
setTimeout(function(){
console.log("Rotation should reset to 0?");
$("#card"+element.parent().attr('id')).css({ '-webkit-transition-property' : 'none !important', '-moz-transition-property' : 'none !important', '-o-transition-property' : 'none !important', 'transition-property' : 'none !important' });
$("#card"+element.parent().attr('id')).css({ '-webkit-transform' : 'rotateY( 0deg)', '-moz-transform' : 'rotateY( 0deg)', '-o-transform' : 'rotateY( 0deg)', 'transform' : 'rotateY( 0deg)' });
}, 3600);
延迟比旋转动画长一点。这个解决方案的问题是其他卡上的后续“翻转”变得混乱(我假设是因为转换属性现在设置为不更改)。当初始“翻转”动画完成时,我只想将单击的卡片翻转的 rotateY 属性设置为 0,而不用动画到新值。当然,这很简单。
解决方案
推荐阅读
- python-3.x - 使用 gcloud 在 Jenkins Pipeline 中的 GCP 上启动 VM
- python - 在 Python 中阻止鼠标单击
- reactjs - 在反应路由器dom url中添加复选框值
- automated-tests - 空手道 UI 测试 - 在每个场景后停止关闭浏览器
- mysql - `PDOException:SQLSTATE [42000]:语法错误或访问冲突:1305 SAVEPOINT trans2不存在`在Laravel测试中
- php - HTML 图像滑块不在 Heroku 上
- git - 修改先前的提交而不更改时间戳
- javascript - Node.js - 登录表单上的错误 UnhandledPromiseRejectionWarning
- c# - Xfinium PDF:如何自动调整图像大小
- javascript - 如何使用使用 javascript 的按钮在选项中添加选定的属性