본문 바로가기
HTML + CSS

Semantic HTML

by 이히힣 2022. 9. 5.
  • semantic : 의미의, 의미가 있는 이라는 뜻의 영단어
  • HTML : 화면의 구조를 만드는 마크업 언어

 

Semantic HTML: HTML이 구조를 만드는 것을 넘어 의미를 갖도록 만드는 것

 

 

출처: w3schools

 

 

<header> 는 헤더의 역할을, <nav> 는 네비게이션 바 역할을 하는 등 요소가 어떤 내용을 담게 될지,

어떤 기능을 하게 될지 확실하게    의미를 가지고있는 요소를 시맨틱 요소라고 한다.

 

 

 

🌈 시맨틱 HTML의 필요성

 

1. 개발자간 소통

 

대부분의 웹페이지는 <div> 와 <span> 으로만으로도 완성할 수 있다. 하지만 여러 명의 개발자가 웹 페이지를 개발하면서 <div><span> 으로만 HTML 코드를 작성한다면 각 요소가 어떤 기능을 하는지 전혀 파악 할 수 없다.

그렇기 때문에 주석을 작성해서 설명하거나 id 나 class 를 사용해서 일일이 표기해야 하고, 그 이름과 기능에 대한 불필요한 설명을 공유해야 한다. 이런 귀찮은 과정을 시맨틱한 요소를 사용하면 없앨 수 있다. 

 

 

 

2. 검색 효율성

 

검색 엔진은 HTML 코드를 보고 문서의 구조를 파악한다. 그렇기 때문에 시맨틱 요소를 사용하면, 어떤 요소에 더 중요한 내용이 들어있을지 우선 순위를 정할 수 있고, 우선 순위가 높다고 파악된 페이지를 검색 결과 상단에 표시할 수 있다.

웹 페이지를 검색 엔진에 더 자주 뜨게 만들고 싶을 때, 광고비 등의 추가 지출을 하지 않고 시맨틱 HTML을 잘 짜는 것 만으로도 어느정도 효과를 볼 수 있다.

 

 

 

3. 웹 접근성

 

웹 접근성은 나이, 성별, 장애 여부, 사용 환경을 떠나서 항상 동일한 수준의 정보를 제공할 수 있어야 한다.

예를 들면, 시각 장애인이 웹 페이지에 접근할 때 음성으로 들을 수 있는 기능을 이용하는데 이 때 HTML이 시맨틱 요소로 구성되어 있다면 화면의 구조에 대한 정보까지 추가로 전달해줄 수 있어 콘텐츠를 좀 더 정확하게 전달할 수 있게 된다.

따라서 시맨틱 요소만 잘 사용해도 웹 접근성을 향상시킬 수 있다는 의미한다.

 

 

 

 

 

🌈 시맨틱 요소의 종류

 

요소 종류 설명
    <header> 페이지나 요소의 최상단에 위치하는 머릿말 역할의 요소
    <nav> 메뉴, 목차 등에 사용되는 요소
    <aside> 문서와 연관은 있지만, 직접적인 연관은 없는 내용을 담는 요소
    <main> 이름 그대로 문서의 메인이 되는 주요 콘텐츠를 담는 요소
    <article> 게시글, 뉴스 기사 등 독립적으로 구분해 재사용할 수 있는 부분을 의미하는 요소
각각의 <article>을 구분하기 위한 수단이 필요하며, 보통 제목(<hgroup>)을 포함하는 방법을 사용
    <section> 문서의 독립적인 구획을 나타내며, 딱히 적합한 의미의 요소가 없을 때 사용
제목(<hgroup>)을 포함하는 경우가 많다.
    <hgroup> 제목을 표시할 때 사용하는 요소로, <h1> ~ <h6> 요소
    <footer> 페이지나 요소의 최하단에 위치하는 꼬릿말 역할의 요소

 

 

 

 

 

 

'HTML + CSS' 카테고리의 다른 글

CSS 셀렉터  (0) 2022.07.24
CSS 박스모델  (0) 2022.07.24
CSS 속성  (0) 2022.07.12
HTML 기본 개념  (0) 2022.07.05