2차메뉴 만들때 높이값은 overflow:hidden 으로 선언.
2차메뉴를 숨길때는 overflow:hidden 과 height:0; 같이 써서 숨겨야한다.
다시 나타날땐 2차메뉴의 높이값을 계산해서(line-height 값으로 높이줬으면 그렇게 계산) hover에 height: 값px를 적용해준다. 거기에 transition을 적용해서 스르륵 펼쳐지게 해준다.
▶ 2차메뉴에 마우스가 올라갔을 때 배경 색이 바뀌게 할려면
hover를 a태그가 아닌 li에 적용해야한다. 마우스가 올라갔을 때 같이 글씨 색도 바뀌게 할려면 a랑 li랑 각각 따로 적용해줘야한다.
.submenu li:hover {
background-color: rgb(223, 241, 255);
}
▶ 1차메뉴에 마우스를 올렸을 때 전체 2차 메뉴들이 다 나오게 하기
nav > ul:hover > li .submenu{ }
= ul에 마우스를 올렸을 때(1차 메뉴에 마우스를 올렸을 때) 그 밑 자손 li 의 후손 .submenu들을 보여줘라
submenu들을 후손으로 불러올때 후손 서브메뉴가 여러개니깐 전체 선택되는 것이다.
▶ 1차메뉴에 마우스를 올렸을 때 해당하는 2차 메뉴들만 나오게 하기
nav > ul > li:hover .submenu{ }
= ul안의 li 에 마우스를 올렸을 때 그 안에 있는 서브메뉴를 보여줘라- 니깐 li의 해당하는 서브메뉴들만 선택된다.
'css' 카테고리의 다른 글
[CSS] css 초기화 파일 방법 (0) | 2024.07.09 |
---|---|
[CSS] animation 애니메이션 속성 (0) | 2024.07.02 |
[CSS] transition 변환 속성, 움직임을 부드럽게 처리하는 속성 (0) | 2024.07.01 |
[CSS] transform 변형속성 (0) | 2024.07.01 |
[CSS] flex 유연한 박스 만들기 / flex-basis/ flex-grow / flex-shrink / flex (0) | 2024.06.28 |