Jquery toggleClass:这个CSS是如何工作的?
我正在使用下面的动画(用Ember JS重新实现),但无法理解CSS是如何工作的。请参阅下面的链接 单击div时会触发toggleClass(“打开”),但实际上什么是Jquery toggleClass:这个CSS是如何工作的?,jquery,html,css,animation,ember.js,Jquery,Html,Css,Animation,Ember.js,我正在使用下面的动画(用Ember JS重新实现),但无法理解CSS是如何工作的。请参阅下面的链接 单击div时会触发toggleClass(“打开”),但实际上什么是open?它是导航图标的一个子类吗?如果可以使用ember,只需在两个CSS块(打开和不打开)之间切换即可显示动画?如中所述,这将只需切换参数中指定的CSS类。也就是说,如果调用此方法的元素打开了类,,则该类将被删除。如果他们没有类打开,他们将获得该css类。如中所述,这将简单地切换参数中指定的css类。也就是说,如果调用此方法
open
?它是导航图标的一个子类吗?如果可以使用ember,只需在两个CSS块(打开和不打开)之间切换即可显示动画?如中所述,这将只需切换参数中指定的CSS类。也就是说,如果调用此方法的元素打开了类,
,则该类将被删除。如果他们没有类打开
,他们将获得该css类。如中所述,这将简单地切换参数中指定的css类。也就是说,如果调用此方法的元素打开了类,
,则该类将被删除。如果他们没有类open
,他们将获得该css类。toggleClass('open')
将类“open”添加/删除到div中。当“open”添加到div中时,div中的每个span元素将通过伪nth-child()
选择器以不同的方式更改。#nav-icon3
的完整CSS如下:
/* Icon 3 */
#nav-icon3 span:nth-child(1) {
top: 0px;
}
#nav-icon3 span:nth-child(2),#nav-icon3 span:nth-child(3) {
top: 18px;
}
#nav-icon3 span:nth-child(4) {
top: 36px;
}
#nav-icon3.open span:nth-child(1) {
top: 18px;
width: 0%;
left: 50%;
}
#nav-icon3.open span:nth-child(2) {
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg);
}
#nav-icon3.open span:nth-child(3) {
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
transform: rotate(-45deg);
}
#nav-icon3.open span:nth-child(4) {
top: 18px;
width: 0%;
left: 50%;
}
转换设置在下面代码中图标内的所有跨度元素上。您需要转换:.25s轻松输入输出代码>显示,以便动画在所有子跨度元素上出现
#nav-icon1 span, #nav-icon3 span, #nav-icon4 span {
display: block;
position: absolute;
height: 9px;
width: 100%;
background: #d3531a;
border-radius: 9px;
opacity: 1;
left: 0;
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-o-transform: rotate(0deg);
transform: rotate(0deg);
-webkit-transition: .25s ease-in-out;
-moz-transition: .25s ease-in-out;
-o-transition: .25s ease-in-out;
transition: .25s ease-in-out;
}
toggleClass('open')
将类“open”添加/删除到div中。将“open”添加到div中时,div中的每个span元素都会通过伪nth-child()选择器以不同的方式更改。#nav-icon3
的完整CSS如下:
/* Icon 3 */
#nav-icon3 span:nth-child(1) {
top: 0px;
}
#nav-icon3 span:nth-child(2),#nav-icon3 span:nth-child(3) {
top: 18px;
}
#nav-icon3 span:nth-child(4) {
top: 36px;
}
#nav-icon3.open span:nth-child(1) {
top: 18px;
width: 0%;
left: 50%;
}
#nav-icon3.open span:nth-child(2) {
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg);
}
#nav-icon3.open span:nth-child(3) {
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
transform: rotate(-45deg);
}
#nav-icon3.open span:nth-child(4) {
top: 18px;
width: 0%;
left: 50%;
}
转换设置在下面代码中图标内的所有跨度元素上。您需要转换:.25s轻松输入输出代码>显示,以便动画在所有子跨度元素上出现
#nav-icon1 span, #nav-icon3 span, #nav-icon4 span {
display: block;
position: absolute;
height: 9px;
width: 100%;
background: #d3531a;
border-radius: 9px;
opacity: 1;
left: 0;
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-o-transform: rotate(0deg);
transform: rotate(0deg);
-webkit-transition: .25s ease-in-out;
-moz-transition: .25s ease-in-out;
-o-transition: .25s ease-in-out;
transition: .25s ease-in-out;
}
伟大而全面的回答伟大而全面的回答