Semantic Tag는 브라우저와 개발자 모두에게 명확하게 의미를 전달하는 태그이다.
ex)
<div>
, <span>
<form>
, <table
, <header>
, <footer>
, <nav>
, <main>
, <section>
, <article>
위의 이미지와 같이 HTML4 에서는 구조를 div를 사용하여 id나 class 속성을 주어 각자 역할을 부여한 뒤 스타일을 지정했다.
하지만 HTML5에서는 Semantic Tag를 사용하는 것을 볼 수 있다.
그리고 HTML4보다 5에서 어느 부분이 header인지, 어느 부분이 article인지 한눈에 확 들어온다.
- Semantic Tag를 사용하면 태그의 이름만 보고도 이 컨텐츠가 어느 부분을 의미하는지 한눈에 알아보기 쉽다.
- 물론 div로 모두 대체해도 문제는 없지만, 직관적으로 알아보기 쉬워지므로 유지보수에 큰 도움이 된다. 좋은 프로그래머가 되기 위한 필수사항이다.
<article>
<article>
요소 안에 또 다른 <article>
요소를 사용할 수 있다.(중첩 가능)<article>
요소이다. (그 안에 여러개의 <section>
요소가 존재할 수 있음)<details>
<summary>
요소를 사용하여 지정한다.<aside>
<figure>
<figcaption>
요소를 사용해 설명을 붙일 수 있다.<figcaption>
요소 중 제일 처음 요소를 설명으로 사용한다.<figcaption>
<figure>
요소에 대한 캡션을 지정한다.<footer>
<section>
요소 내용에 대한 footer를 나타낸다.<section>
요소의 작성자 정보와 저작권 데이터, 또는 관련 문서들의 링크를 포함한다.<address>
요소로 감싼 작성자 정보를 <footer>
요소에 포함시킬 수 있다.<header>
<nav>
요소를 사용하여 탐색에 도움이 되는 내용을 나타낸다.<form>
요소를 사용한 검색 form, 작성자 이름 등의 요소도 포함할 수 있다.<hn>
요소를 포함하는데, 필수적인 것은 아니다.<main>
<mark>
<nav>
<section>
<hn>
요소를 사용한다. 하지만 필수적인 것은 아니다.<summary>
<details>
요소에서 눈에 보이는 제목을 지정한다.