를 가져 I 표준 중첩 된 UL의 탐색 구조와 :hover
에 하위 NAVS 애니메이션을 몇 가지 CSS ...CSS에 애니메이션 탐색 요소 :
이 바이올린을 참조하십시오 있습니다 http://jsfiddle.net/5kwsV/
모든 것이 예상대로 작동하는지 가장 깊은 UL의 애니메이션은 예외입니다. 첫 번째 subnav는 높이를 움직이게하고 두 번째 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;
}
이제 위의 코드의 문제는 "마이클"탐색 라벨 유혹 할 때, 폭과 높이가 애니메이션이다. 너비 만 애니메이션으로 만들어야합니다. 솔루션이 상당히 명백한 것처럼 보일 것입니다. "all"을 "width"로 변경하십시오. 떠오르게 때이 변경
실리콘 ... 이에
-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 픽셀에 대한 애니메이션. 새로운 문제는 내가 다른 nav 라벨로 이동할 때, 100px에서 0px로 애니메이션을 적용해야하지만, 대신 단지 깜박입니다.
무엇이 누락 되었습니까? 그럴 수 없다는 것을 알기에 그것의 무언가는 어리석게 분명하다.
:-) 아, 네, 확실히이 제거 될 수있는 여러 선언하고 내가 그렇게 할 계획입니다. 내가 이상한 상속 문제를 여기저기서 가지고 있었기 때문에 모든 상속 버그를 경험하지 못했기 때문에 모든 것이 무엇이든 상관없이 설정되었다는 것을 확실히했습니다. 나는 나중에 그것을 어수선하게 할 것이다. 귀하의 설명이 완벽합니다. 배경에 적용될 가시성 속성을 전환하는 것을 완전히 잊어 버렸습니다. 감사합니다! – Michael
미안 해요, 나는 또한 전환 된 다른 속성이었던 nav ul li> ul에서 숨겨진 가시성을 변경했다는 것을 잊었습니다. 하지만 문제없이 볼 수있는 것을 보았습니다. – vals