테스트 사이트 - 개발 중인 베타 버전입니다

반응형 네비게이션(햄버거 메뉴) 구현

· 1개월 전 · 137
반응형 네비게이션(햄버거 메뉴 구현) → 작은 화면(모바일)에서는 긴 메뉴를 그대로 보여주기 어렵기 때문에 햄버거 버튼을 눌렀을 때 메뉴가 열리고 닫히는 방식을 많이 사용함. 핵심은 CSS로 메뉴를 숨기고, JavaScript로 토글하는 구조임.

<nav class="nav">
<div class="logo">LOGO</div>
<button class="toggle">☰</button>
<ul class="menu">
<li><a href="#">홈</a></li>
<li><a href="#">서비스</a></li>
<li><a href="#">문의</a></li>
</ul>
</nav>

.nav { display:flex; justify-content:space-between; align-items:center; background:#333; color:#fff; padding:10px; }
.menu { display:flex; list-style:none; gap:20px; }
.menu li a { color:#fff; text-decoration:none; }
.toggle { display:none; background:none; border:none; font-size:24px; color:#fff; }

/* 모바일 */
@media (max-width:768px) {
.menu { display:none; flex-direction:column; background:#444; padding:10px; }
.menu.active { display:flex; }
.toggle { display:block; }
}

const toggle = document.querySelector(".toggle");
const menu = document.querySelector(".menu");
toggle.addEventListener("click", ()=> menu.classList.toggle("active"));

이 코드는 PC에서는 가로형 메뉴, 모바일에서는 햄버거 버튼으로 전환됨. 버튼을 누르면 메뉴가 슬라이드처럼 열리고 닫힘. 실무 팁으로는 CSS transition을 추가해 애니메이션 효과를 주거나, aria-expanded 속성을 활용해 접근성까지 보강하면 더 완성도 높은 반응형 네비게이션을 만들 수 있음.

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
1451
부트스트랩 Disabled Item
1450
부트스트랩 활성 상태
1449
1448
1447
1446
1445
부트스트랩 Bootstrap Pager
1444
부트스트랩 Breadcrumbs
1443
부트스트랩 Pagination Sizing
1442
1441
1440
1438
1437
1436
1435
부트스트랩 컬러 진행 바
1434
1433
1432
부트스트랩 레이블
1431
1430
1429
1428
1427
1426
부트스트랩 세로 단추 그룹
1425
부트스트랩 버튼 그룹
1424
1421
부트스트랩 블록 레벨 버튼
1420
부트스트랩 단추 크기 1
1419