我有一个标准的嵌套的UL导航结构和一些CSS动画上:hover
子资产净值...CSS动画效果导航元素:悬停
看到这个小提琴:http://jsfiddle.net/5kwsV/
一切工作按预期除最深的UL上的动画外。第一个subnav动画高度,第二个只应该动画宽度。
这里是处理我遇到的最深的UL动画的代码。现在
nav ul li > ul > li > ul {
position: absolute;
display: block;
visibility: hidden;
width: 0px;
height: auto;
top: 0;
left: 100px;
padding: 0;
margin: 0;
-webkit-transition: all 0.6s ease;
-moz-transition: all 0.6s ease;
-ms-transition: all 0.6s ease;
-o-transition: all 0.6s ease;
transition: all 0.6s ease;
}
nav ul li > ul > li:hover > ul {
position: absolute;
display: block;
visibility: visible;
width: 100px;
height: auto;
top: 0;
left: 100px;
padding: 0;
margin: 0;
-webkit-transition: all 0.6s ease;
-moz-transition: all 0.6s ease;
-ms-transition: all 0.6s ease;
-o-transition: all 0.6s ease;
transition: all 0.6s ease;
}
,与上面的代码的问题是,将鼠标悬停在“迈克尔”导航标签时,宽度和高度动画。它只需要动画宽度。看起来解决方案相当明显,将“全部”改为“宽度”。
硅我改变了...
-webkit-transition: all 0.6s ease;
-moz-transition: all 0.6s ease;
-ms-transition: all 0.6s ease;
-o-transition: all 0.6s ease;
transition: all 0.6s ease;
要这个......
-webkit-transition: width 0.6s ease;
-moz-transition: width 0.6s ease;
-ms-transition: width 0.6s ease;
-o-transition: width 0.6s ease;
transition: width 0.6s ease;
现在,徘徊的时候,动画的宽度0至100像素的动画,因为它应该。新问题是,当我移动到不同的导航标签时,它应该从100px变回到0px,但是它只是在那里闪烁。
我错过了什么?不能为我的生活看到它,我敢肯定它的东西显然是愚蠢的!
哦,是的,肯定有,可以删除多个声明,我打算这样做。我在这里和那里都有一些奇怪的继承问题,所以为了确保我没有遇到任何继承错误,我确保无论如何都设置了一切。我稍后会解决它。 您的解释非常合理。我完全忘记了我正在过渡可见性属性,这将应用于背景。非常感谢! – Michael 2013-05-10 21:56:48
对不起,我忘了说我也改变了隐藏在nav ul li> ul中的可见性,那是另一个正在转换的属性;但我看到它可以没有问题地看到 – vals 2013-05-11 19:18:21