인터넷이 웹의 포괄적인 표현이다.
웹표준이란 ‘웹에서 표준적으로 사용되는 기술이나 규칙’
맞춰서 작성할 때의 장점
의미,의미가 있다
화면의 구조를 만드는 마크업 언어
그렇다면 Semantic HTML이란 의미가 있는 화면의 구조를 만들 수 있는 마크업 언어
와 일맥상통하겠죠! 👍
사용자가 보려는 웹 화면을 만들때, <div>
<span>
으로 충분히 화면을 만들 수는 있지만, 각각의 영역들이 무엇을 뜻하는지는 알기 어려울 것입니다 😭
그렇다면 위의 그림은 어떤가요?
훨씬 보기 좋고 어떤 영역이 무슨 일을 하는지 잘 나타나 있습니다!
이와 같이 요소가 어떤 내용을 담게
될지, 어떤 기능을 하게 될지
확실하게 의미를 가지고있는 요소를 시맨틱 요소
라고 합니다.
그렇다면 이번엔 시맨틱 요소의 종류를 같이 살펴볼게요👀📖
📚웹 사이트에 접근하는 브라우저의 종류에 상관 없이 동등한 화면과 기능을 제공할 수 있도록 만드는 작업을 의미합니다.
동일한
X
동등한
O
둘의 차이는 완전히 똑같은 화면을 보여주는 것이 아니라, 브라우저마다 렌더링엔진이 다르기 때문에 동등한 수준의 정보와 기능을 제공한다는 것입니다!
이 크로스 브라우징을 살펴본 이유는, 프로젝트를 기획할 때 어떤 웹사이트를 만들것인지, 고객이 사용하는 브라우저는 무엇인지, 각 브라우저의 호환성은 어떤지를 고민하며 개발해야하기 때문입니다.
위에 설명한 웹 표준만 잘 지켜도, 어느정도의 크로스 브라우징이 실현가능합니다!😊💞
Search Engine Optimization 검색엔진최적화
검색엔진최적화란,
검색했을 때 검색결과에 노출에 대해서 검색 엔진의 작동 방식에 맞게 최적화 해주는 작업을 말합니다.
웹 페이지를 보다 상위에 노출되게 하는 것입니다.
방법에는 두 가지가 있는데,
On-Page SEO
: 말 그대로 페이지 내부에서 진행할 수 있는 SEO로, 제목과 콘텐츠, 핵심 키워드의 배치, 효율적인 HTML 요소 사용법 등을 이용하는 방법입니다.
Off-Page SEO
: 웹 사이트 외부에서 이루어지는 SEO로, 소셜 미디어 홍보, 백링크(타 사이트에서 연결되는 링크) 등을 이용하는 방법으로, 웹 페이지 내용이나 구조와는 관계가 없습니다.
title요소
<title>
요소에 어떤 내용을 작성하는가에 따라서 검색 후 유입까지 유도할 수 있습니다.
제목이 너무 길거나 짧아서 사용자가 제목으로 사이트를 파악하기 어려워지면 유입률이 떨어집니다.
<title>
요소에 핵심 키워드가 포함되면 상위에 노출될 확률이 높아집니다.
그렇다고 같은 키워드를 반복하면 검색시 불이익을 받을 수 있습니다. 제목에 핵심 키워드는 한 번만 포함시켜야 합니다.
meta 요소
<meta>
요소는 메타 데이터를 담는 요소입니다.
메타 데이터란 해당 웹 사이트에서 다루고 있는 데이터가 무엇인지에 대한 데이터입니다.
<meta
> 요소도 <head>
요소의 자식 요소로 작성해주는 것이 일반적입니다.
보통 검색 결과창에서 제목 밑에 따라오는 설명글이 meta요소안에 있는 내용입니다.
name속성
을 사용해서 SEO를 사용하는것이 목적인 경우와
property 속성
을 사용하여 다른 사람에게 공유하는 것이 목적인 것이 있습니다. property 속성을 사용하는 경우 오픈 그래프라고 하며, 속성값 앞에는 og
가 붙습니다.
정보에 제한을 받는 사람등을 위한 상황을 해력하고자 노력하고,
동등하게 접근하고 이해할 수 있도록 보장하게 해주는 것입니다.
이미지가 많을수록 웹 접근성에 가깝지 않다고 할 수 있습니다.
이미지에 들어있는 글자는 음성으로 읽어줄 수 있는 스크린 리더를 사용할 수 없습니다.
<img src="이미지 주소" alt="대체 텍스트" />
배경 이미지와 같이 정보를 인식할 필요가 없는 경우에는 alt 값으로 빈 문자열을 주어 스크린 리더가 인식하지 않게 합니다.
(정보 전달이 필요한 콘텐츠에 빈 문자열을 입력할 경우 해당 콘텐츠의 존재 자체도 인식하지 못하게 되므로 주의해야 합니다.)
자막 제공
track
요소를 사용하여 자막 불러오기<video ... >
<track src="자막.vtt" kind="captions" />
</video>
색에 무관한 콘텐츠 인식
콘텐츠에 테두리 설정하기
콘텐츠에 레이블 달기
명확한 지시상황 제공
텍스트 콘텐츠 명도 대비 : 텍스트 콘텐츠와 배경 간의 명도 대비는 4.5 대 1 이상이어야 한다.
자동 재생 금지
불가피하게 제공해야 하는 경우에는 다음과 같이 해결합니다.
1.가장 먼저 위치시켜 정지할 수 있게 구현하기
2.ESC를 눌러 정지
3.3초 내에 정지
콘텐츠 간 구분
키보드 사용 보장
초점 이동
조작 가능
응답 시간 조절
정지 기능 제공
깜빡임과 번쩍임 사용 제한 : 초당 3~50회 주기로 깜빡이거나 번쩍이는 콘텐츠를 제공하지 않아야 한다.
불규칙적으로 깜빡이는 화면은 눈에 피로를 유발하고 심한 경우 광과민성 발작을 일으킬 수 있습니다.
만약 이런 콘텐츠를 제공하게 되는 경우 다음 조건 중 하나를 충족해야 합니다.
1.번쩍이는 콘텐츠가 차지하는 면적이 전체 화면의 10% 미만이어야 함
2.사전에 경고하고 중단할 수 있는 수단을 제공해야 함
3.시간을 3초 미만으로 제한해야 함
반복 영역 건너뛰기
제목 제공
적절한 링크 텍스트
기본 언어 표시 : 주로 사용하는 언어를 명시해야 한다.
<html lang="ko"> //HTML 요소에 lang 속성을 사용하여 제공
<a href="...">페이지<span class="blind">새 창</span></a>
//링크 요소 안에 보이지 않는 요소를 넣어 새 창에 접근하게 됨을 알려주기
<a href="..." title="새 창">페이지</a>
//링크 요소에 title 속성으로 새 창 작성하기
<a href="..." target="_blank">페이지</a>
//링크 요소에 target=”_blank” 속성을 넣기
<th>
, 데이터 셀은 <td>
를 사용하면 됩니다.