作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个齿轮图标,我想在激活时顺时针旋转 180 度 (class="cards__cog cards__cog-active"),然后再顺时针旋转 180 度以返回到其停用状态 (class="cards__cog cards__cog-inactive")。我正在使用 React 执行此操作,对单击齿轮时的状态变化使用react。
以下方法有效,但我的问题是:
1)它在页面加载时动画(这是有道理的,因为它具有 cards__cog-inactive 类,但替代方案是什么?)。
2)这很丑陋,必须有一个更简单的方法。
谢谢
.cards {
&__cog {
position: absolute;
right: 20px;
top: 20px;
width: 10vh;
cursor: pointer;
&-active {
animation: rotate180 1s ease;
animation-fill-mode: forwards;
}
&-inactive {
animation: rotate180to359to0 1s ease;
animation-fill-mode: forwards;
}
}
}
@keyframes rotate180 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(180deg);
}
}
@keyframes rotate180to359to0 {
0% {
transform: rotate(180deg);
}
99% {
transform: rotate(359deg);
}
100% {
transform: rotate(0deg);
}
}
最佳答案
您可以对其中一个 Action 使用过渡。但两者都不是,因为其中一个会倒退。
而且你不能在初始状态下使用动画,因为你的第一个问题。
这使我们的非事件状态为 360 度,以便它可以以正确的方式从 180 度转换到 360 度,并且动画从 0 到 180 度以从非事件到事件的变化
function change () {
var elem = document.getElementById("test");
elem.classList.toggle('active');
}
.test {
width: 200px;
height: 100px;
border: solid 4px red;
margin: 20px;
transform: rotate(360deg);
transition: transform 1s;
}
.active {
animation: activate 1s;
transform: rotate(180deg);
}
@keyframes activate {
from {transform: rotate(0deg);}
to {transform: rotate(180deg);}
}
<div class="test" id="test">TEST</div>
<button onclick="change();">change</button>
关于css - 顺时针旋转 180 度再旋转 360 度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52194700/
我有本地更改和远程更改。 有人告诉我必须先推,再 pull 。这背后有什么原因吗? 最佳答案 那个人错了:正确的模型是pull-before-you-push,而不是相反。 当您pull时,git 将
我正在使用最新版本的 Flat UI Pro 1.3.2 ( http://designmodo.com/flat/ ),jQuery 插件 flatui-radiocheck v0.1.0 和 iO
我是一名优秀的程序员,十分优秀!