💡 퀵 접속: htm.kr/nav

HTML <nav> 태그

태그 설명

<nav> 태그는 웹 페이지의 내비게이션 링크들을 포함하는 섹션을 정의할 때 사용합니다. 메인 메뉴, 사이드바 메뉴, 푸터 메뉴 등 페이지 내의 주요 내비게이션 영역을 나타냅니다.

주요 속성

속성 설명
id 텍스트 nav의 고유 식별자를 지정합니다.
class 텍스트 nav의 스타일 클래스를 지정합니다.
aria-label 텍스트 스크린 리더를 위한 내비게이션 영역의 설명을 제공합니다.

기본 예제

<nav>
    <ul>
        <li><a href="/">홈</a></li>
        <li><a href="/about">소개</a></li>
        <li><a href="/services">서비스</a></li>
        <li><a href="/contact">연락처</a></li>
    </ul>
</nav>

블로그 실전 예제

<!-- 1. 메인 내비게이션 -->
<header>
    <nav class="main-nav" aria-label="메인 메뉴">
        <div class="logo">
            <a href="/">My Blog</a>
        </div>
        <ul class="nav-links">
            <li><a href="/posts">포스트</a></li>
            <li><a href="/categories">카테고리</a></li>
            <li><a href="/tags">태그</a></li>
            <li><a href="/about">소개</a></li>
        </ul>
    </nav>
</header>

<!-- 2. 사이드바 내비게이션 -->
<aside>
    <nav class="sidebar-nav" aria-label="사이드바 메뉴">
        <h3>카테고리</h3>
        <ul>
            <li><a href="/category/web">웹 개발</a></li>
            <li><a href="/category/mobile">모바일 개발</a></li>
            <li><a href="/category/design">디자인</a></li>
        </ul>
        
        <h3>최근 포스트</h3>
        <ul>
            <li><a href="/post/1">React Hooks 완벽 가이드</a></li>
            <li><a href="/post/2">CSS Grid 마스터하기</a></li>
        </ul>
    </nav>
</aside>

<!-- 3. 푸터 내비게이션 -->
<footer>
    <nav class="footer-nav" aria-label="푸터 메뉴">
        <ul>
            <li><a href="/privacy">개인정보처리방침</a></li>
            <li><a href="/terms">이용약관</a></li>
            <li><a href="/contact">문의하기</a></li>
        </ul>
    </nav>
</footer>

<!-- 4. 스타일링 예제 -->
<style>
.main-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem;
    background-color: #fff;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.nav-links {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav-links li {
    margin-left: 2rem;
}

.nav-links a {
    text-decoration: none;
    color: #333;
    font-weight: 500;
}

.nav-links a:hover {
    color: #2196f3;
}

.sidebar-nav {
    padding: 1rem;
    background-color: #f5f5f5;
    border-radius: 8px;
}

.sidebar-nav h3 {
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
    color: #333;
}

.sidebar-nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sidebar-nav li {
    margin-bottom: 0.5rem;
}

.sidebar-nav a {
    text-decoration: none;
    color: #666;
}

.sidebar-nav a:hover {
    color: #2196f3;
}

.footer-nav ul {
    display: flex;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-nav li {
    margin: 0 1rem;
}

.footer-nav a {
    text-decoration: none;
    color: #666;
    font-size: 0.9rem;
}

.footer-nav a:hover {
    color: #2196f3;
}
</style>

실제 보여지는 모양

참고사항

  • 주요 내비게이션 링크들을 포함하는 섹션에 사용합니다.
  • 페이지 내에 여러 개의 nav 요소를 사용할 수 있습니다.
  • aria-label 속성을 사용하여 스크린 리더 사용자를 위한 설명을 제공합니다.
  • 스크린 리더는 이 태그를 통해 내비게이션 영역임을 인식합니다.
  • CSS를 사용하여 내비게이션의 시각적 표현을 커스터마이즈할 수 있습니다.

블로그 작성 팁

  • 메인 메뉴, 사이드바, 푸터 등 주요 내비게이션 영역에 사용합니다.
  • 각 nav 요소에 적절한 aria-label을 제공하여 접근성을 높입니다.
  • CSS를 사용하여 내비게이션의 시각적 구분을 만듭니다.
  • 모바일 환경을 고려한 반응형 디자인을 적용합니다.
  • 검색 엔진 최적화(SEO)를 위해 의미 있는 링크 구조를 만듭니다.

브라우저 지원

모든 주요 브라우저에서 지원됩니다.

  • Chrome: 지원
  • Firefox: 지원
  • Safari: 지원
  • Edge: 지원
  • Opera: 지원