소개
이 랩에서는 참가자들이 시맨틱 HTML 태그의 기본 개념과 현대 웹 개발에서 그 중요한 역할에 대해 탐구할 것입니다. 실습을 통해 학습자들은 <header>, <nav>, <main>, <article>, <section>, <aside>, 그리고 <footer>와 같은 시맨틱 요소를 사용하여 전통적인 HTML 구조를 의미 있고, 접근 가능하며, SEO 친화적인 웹 페이지 레이아웃으로 변환할 것입니다.
이 랩은 시맨틱 HTML 이 코드 가독성을 향상시키고, 스크린 리더를 위한 웹사이트 접근성을 개선하며, 더 구조적이고 의미 있는 웹 콘텐츠를 만드는 방법을 이해하기 위한 단계별 가이드를 제공합니다. 완전한 시맨틱 HTML 페이지 레이아웃을 점진적으로 구축함으로써, 참가자들은 웹 페이지 요소의 목적과 구조를 명확하게 설명하는 시맨틱 태그를 구현하는 실질적인 기술을 습득하게 될 것입니다.
시맨틱 HTML 개념 탐구
이 단계에서는 시맨틱 HTML 에 대해 배우고 웹 개발에서 왜 중요한지 알아보겠습니다. 시맨틱 HTML 은 콘텐츠의 의미를 명확하게 설명하는 태그를 사용하여 웹 페이지를 더 접근 가능하고, 읽기 쉬우며, SEO 친화적으로 만듭니다.
<div> 및 <span>과 같은 전통적인 HTML 태그는 포함된 콘텐츠에 대한 정보를 제공하지 않습니다. 반면에 시맨틱 HTML 태그는 콘텐츠의 목적과 구조를 설명합니다.
시맨틱 HTML 개념을 시연하기 위해 간단한 HTML 파일을 만들어 보겠습니다. WebIDE 를 열고 ~/project 디렉토리에 semantic-example.html이라는 새 파일을 만듭니다.
touch ~/project/semantic-example.html
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Semantic HTML Example</title>
</head>
<body>
<div>Website Header</div>
<div>Navigation Menu</div>
<div>Main Content</div>
<div>Sidebar</div>
<div>Footer</div>
</body>
</html>
이제 시맨틱 HTML 태그를 사용하여 이 예제를 변환해 보겠습니다.
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Semantic HTML Example</title>
</head>
<body>
<header>Website Header</header>
<nav>Navigation Menu</nav>
<main>Main Content</main>
<aside>Sidebar</aside>
<footer>Footer</footer>
</body>
</html>
주요 시맨틱 HTML 태그는 다음과 같습니다.
<header>: 소개 콘텐츠를 나타냅니다.<nav>: 탐색 링크를 정의합니다.<main>: 문서의 주요 콘텐츠를 지정합니다.<article>: 독립적이고 자체 포함된 콘텐츠 조각을 나타냅니다.<section>: 문서의 섹션을 정의합니다.<aside>: 주요 콘텐츠와 관련이 있는 콘텐츠를 포함합니다.<footer>: 문서의 바닥글을 나타냅니다.
시맨틱 HTML 의 장점:
- 스크린 리더 접근성 향상
- 더 나은 SEO 최적화
- 더 의미 있고 읽기 쉬운 코드
- 더 쉬운 스타일 지정 및 유지 관리
브라우저에서 HTML 파일을 미리 볼 때 시각적인 변경 사항은 없지만, 기본 구조는 더 설명적이고 의미 있게 됩니다.
참고: WebIDE 에서 HTML 파일을 미리 보는 방법에 대해 자세히 알아보세요.
헤더 및 네비게이션 시맨틱 태그 구현
이 단계에서는 의미 있고 구조화된 웹사이트 헤더와 네비게이션 메뉴를 만들기 위해 시맨틱 <header> 및 <nav> 태그를 사용하는 방법을 배우게 됩니다. 이러한 태그는 HTML 문서의 시맨틱 구조를 개선하는 데 도움이 됩니다.
WebIDE 를 열고 ~/project 디렉토리의 semantic-example.html 파일을 수정하여 헤더 및 네비게이션 태그를 구현합니다.
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>My Semantic Website</title>
</head>
<body>
<header>
<h1>Welcome to My Website</h1>
<nav>
<ul>
<li><a href="#home">Home</a></li>
<li><a href="#about">About</a></li>
<li><a href="#services">Services</a></li>
<li><a href="#contact">Contact</a></li>
</ul>
</nav>
</header>
</body>
</html>
사용된 시맨틱 태그를 자세히 살펴보겠습니다.
<header>태그:- 페이지의 소개 콘텐츠를 나타냅니다.
- 제목, 로고, 네비게이션을 포함할 수 있습니다.
- 페이지 또는 섹션의 최상위 콘텐츠를 그룹화하는 데 사용됩니다.
<nav>태그:- 네비게이션 링크 섹션을 정의합니다.
- 일반적으로 메뉴, 목차를 포함합니다.
- 접근성 및 SEO 를 향상시킵니다.
<ul>및<li>태그:- 네비게이션 항목의 순서가 없는 목록을 만듭니다.
- 내부의
<a>태그는 클릭 가능한 링크를 만듭니다.
기억해야 할 주요 사항:
<header>는 여러 요소를 포함할 수 있습니다.<nav>는 주요 네비게이션 블록에 특별히 사용됩니다.- 더 나은 접근성을 위해 의미 있는 링크 텍스트를 사용하십시오.
브라우저에서 볼 때의 예시 출력:

Article 및 Section 시맨틱 구조 생성
이 단계에서는 <article> 및 <section> 시맨틱 태그를 사용하여 HTML 문서에서 더 의미 있고 구조화된 콘텐츠를 만드는 방법을 배우게 됩니다. 이러한 태그는 웹 페이지의 다양한 부분의 목적을 구성하고 설명하는 데 도움이 됩니다.
~/project 디렉토리에서 semantic-example.html 파일을 열고 다음 코드로 업데이트합니다.
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Semantic HTML Article and Section Example</title>
</head>
<body>
<header>
<h1>My Blog</h1>
<nav>
<ul>
<li><a href="#home">Home</a></li>
<li><a href="#blog">Blog</a></li>
</ul>
</nav>
</header>
<main>
<article>
<h2>Learning Web Development</h2>
<section>
<h3>HTML Basics</h3>
<p>
HTML is the foundation of web development. It provides structure to
web content.
</p>
</section>
<section>
<h3>Semantic HTML</h3>
<p>
Semantic HTML uses tags that describe the meaning of the content,
making web pages more accessible and meaningful.
</p>
</section>
</article>
</main>
</body>
</html>
시맨틱 태그를 자세히 살펴보겠습니다.
<article>태그:- 자체 포함된 구성을 나타냅니다.
- 독립적으로 배포하거나 재사용할 수 있습니다.
- 일반적으로 블로그 게시물, 뉴스 기사, 포럼 게시물에 사용됩니다.
<section>태그:- 콘텐츠의 주제별 그룹화를 정의합니다.
- 일반적으로 제목을 포함합니다.
- 콘텐츠를 논리적인 부분으로 나누는 데 도움이 됩니다.
<main>태그:- 문서의 주요 콘텐츠를 지정합니다.
- 문서에 고유해야 합니다.
- 중심 주제 또는 주요 기능을 포함합니다.
브라우저에서 볼 때의 예시 출력:

기억해야 할 주요 사항:
<article>은 자체 포함된 콘텐츠에 사용됩니다.<section>은 관련 콘텐츠를 그룹화합니다.- 각 섹션은 일반적으로 제목을 갖습니다.
- 문서 구조와 가독성을 향상시키기 위해 이러한 태그를 사용하십시오.
Aside 및 Footer 시맨틱 요소 추가
이 단계에서는 <aside> 및 <footer> 시맨틱 태그를 사용하여 웹 페이지의 구조와 의미를 향상시키는 방법을 배우게 됩니다. 이러한 태그는 보조 콘텐츠를 구성하고 페이지에 대한 추가 정보를 제공하는 데 도움이 됩니다.
~/project 디렉토리에서 semantic-example.html 파일을 열고 다음 코드로 업데이트합니다.
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Semantic HTML Aside and Footer Example</title>
</head>
<body>
<header>
<h1>My Web Development Blog</h1>
<nav>
<ul>
<li><a href="#home">Home</a></li>
<li><a href="#blog">Blog</a></li>
</ul>
</nav>
</header>
<main>
<article>
<h2>Learning Web Development</h2>
<section>
<h3>HTML Basics</h3>
<p>
HTML is the foundation of web development. It provides structure to
web content.
</p>
</section>
<aside>
<h3>Related Resources</h3>
<ul>
<li><a href="#">HTML Tutorial</a></li>
<li><a href="#">CSS Guide</a></li>
<li><a href="#">JavaScript Basics</a></li>
</ul>
</aside>
</article>
</main>
<footer>
<p>© 2023 Web Development Blog</p>
<p>Contact: info@webdevblog.com</p>
</footer>
</body>
</html>
새로운 시맨틱 태그를 살펴보겠습니다.
<aside>태그:- 주요 콘텐츠와 간접적으로 관련된 콘텐츠를 나타냅니다.
- 종종 사이드바, 인용구 또는 추가 정보에 사용됩니다.
- 보조 콘텐츠를 주요 기사에서 분리하는 데 도움이 됩니다.
<footer>태그:- 문서 또는 섹션의 바닥글을 나타냅니다.
- 일반적으로 저작권 정보, 연락처 세부 정보 또는 관련 링크를 포함합니다.
- 문서에서 여러 번 나타날 수 있습니다.
브라우저에서 볼 때의 예시 출력:

기억해야 할 주요 사항:
<aside>는 주요 콘텐츠와 관련이 있지만 중심이 아닌 콘텐츠를 포함합니다.<footer>는 문서 또는 섹션에 대한 추가 정보를 제공합니다.- 이러한 태그는 HTML 의 시맨틱 구조를 개선합니다.
완전한 시맨틱 HTML 페이지 레이아웃 구축
이 단계에서는 지금까지 배운 모든 시맨틱 HTML 태그를 결합하여 완전하고 잘 구조화된 웹 페이지를 만들 것입니다. 시맨틱 HTML 의 강력함을 보여주는 포괄적인 레이아웃을 만들 것입니다.
~/project 디렉토리에 semantic-website.html이라는 새 파일을 만들고 다음 코드를 추가합니다.
touch ~/project/semantic-website.html
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Web Development Learning Hub</title>
</head>
<body>
<header>
<h1>Web Development Learning Hub</h1>
<nav>
<ul>
<li><a href="#home">Home</a></li>
<li><a href="#tutorials">Tutorials</a></li>
<li><a href="#resources">Resources</a></li>
<li><a href="#contact">Contact</a></li>
</ul>
</nav>
</header>
<main>
<article>
<h2>Getting Started with Web Development</h2>
<section>
<h3>HTML Fundamentals</h3>
<p>
Learn the basics of HTML and how to create structured web pages
using semantic tags.
</p>
</section>
<section>
<h3>CSS Styling</h3>
<p>
Explore how to style your HTML documents and create visually
appealing websites.
</p>
</section>
<aside>
<h3>Recommended Learning Path</h3>
<ul>
<li>HTML Basics</li>
<li>CSS Styling</li>
<li>JavaScript Fundamentals</li>
<li>Responsive Web Design</li>
</ul>
</aside>
</article>
<article>
<h2>Latest Tutorials</h2>
<section>
<h3>Semantic HTML Deep Dive</h3>
<p>
Understand the importance of semantic tags in modern web
development.
</p>
</section>
</article>
</main>
<footer>
<p>© 2023 Web Development Learning Hub</p>
<nav>
<ul>
<li><a href="#privacy">Privacy Policy</a></li>
<li><a href="#terms">Terms of Service</a></li>
</ul>
</nav>
<p>Contact: support@webdevhub.com</p>
</footer>
</body>
</html>
시맨틱 구조를 검토해 보겠습니다.
<header>: 사이트 제목과 주요 탐색 메뉴를 포함합니다.<nav>: 두 위치에 탐색 링크를 제공합니다.<main>: 페이지의 주요 콘텐츠를 감쌉니다.<article>: 독립적이고 자체 포함된 콘텐츠를 나타냅니다.<section>: 콘텐츠를 주제별 그룹으로 나눕니다.<aside>: 보조 정보를 표시합니다.<footer>: 추가 사이트 정보 및 링크를 제공합니다.
브라우저에서 볼 때의 예시 출력:

주요 내용:
- 시맨틱 HTML 은 문서 구조를 개선합니다.
- 각 태그는 특정 의미와 목적을 갖습니다.
- 시맨틱 태그는 코드를 더 읽기 쉽고 접근 가능하게 만듭니다.
요약
이 랩에서는 참가자들이 시맨틱 HTML 의 기본 개념과 웹 개발에서의 중요성을 탐구합니다. 전통적인 비설명적 <div> 태그에서 <header>, <nav>, <main>, <article>, <section>, <aside>, <footer>와 같은 의미 있는 시맨틱 요소로 전환함으로써 학습자들은 더 접근성 있고, 읽기 쉽고, SEO 친화적인 웹 페이지를 만드는 데 대한 통찰력을 얻습니다.
이 랩은 참가자들을 시맨틱 HTML 의 실질적인 구현을 안내하며, 이러한 특수 태그가 웹 콘텐츠에 명확한 구조적 컨텍스트를 제공하는 방법을 보여줍니다. 시맨틱 HTML 원리를 이해하고 적용함으로써 개발자는 스크린 리더의 웹사이트 접근성을 향상시키고, 검색 엔진 최적화 (SEO) 를 개선하며, 더 유지 관리 가능하고 의미 있는 코드 구조를 만들 수 있습니다.



