컴퓨터가 이해할 수 있는 형태란 무엇일까?
이를 이해하기 위해 시멘틱 웹이 고안되기 전 기존의 웹을 보면,
<div id="header">title</div>
이 요소는 의미론적으로 어떤 의미도 가지고 있지 않은,
즉 의도가 명확하지 않은 태그이다.
하지만 Semantic Tag로 작성할 경우 아래와 같이 작성할 수 있다.
<header>tilte</header>
정의 : 브라우저, 검색엔진, 개발자 모두에게 콘텐츠의 의미를 명확히 설명하는 역할을 하는 태그
종류
non-semantic 태그
사용 이유
<div id="header">title</div>
<header>tilte</header>
위 두 가지 경우는 브라우저 상에서 동일하게 표현지만, 이렇게 시맨틱 태그로 표현된 태그는 header(제목)이라는 의미를 내포하기 때문에 개발자가 의도한 요소의 의미가 명확히 드러나며 이것은 코드의 가독성을 높이고 유지보수를 쉽게 해준다. 또한, 검색엔진은 대체로 header 요소 내의 콘텐츠를 웹문서의 중요한 제목으로 인식하고 인덱스에 포함시킬 확률이 높아지기 때문에 효과적인 크롤링과 인덱싱이 가능해진다.
Semantic Tag란 콘텐츠의 의미를 명확하게 설명하는 태그로서 그 종류로는 header, footer 등이 있다. Semantic Web은 이러한 Semantic Tag들을 기반으로 제작된 웹을 말하며, 명확한 의미 전달, 유지 보수와 검색 용이 등의 측면에서 웹의 구조를 semantic하게 구조를 짜는 것은 중요하다.
이미지를 추가하는 방법으로는 HTML 태그인 < img >를 사용하는 것과 해당 태그에 CSS 속성인 background-image 를 추가하는 것이 있다.
< img >는 의미가 있는 시맨틱 태그로서 컴퓨터가 직접적으로 이해할 수 있는 의미를 담았기 때문에 이미지가 깨져도 컴퓨터는 alt속성으로 이 이미지를 이해할 수 있고 검색엔진에 웹이 잘 노출되길 원한다면 이 방법을 쓰는 것이 좋다.
하지만 background-image는 이미지에 대한 정보를 가지고 있지 않기 때문에 단순히 디자인적으로 꾸미기 위한 목적이라면 css속성으로 꾸미는 것이 가독성과 유지보수 측면에서 효율적일 것이다.