웹: 문서, 이미지, 영상 등 다양한 정보를 여러 사람들과 공유할수 있는 공간
Semantic HTML
<div>
와 <span>
으로 화면 구성하기<header>
, <nav>
요소의 이름에 맞게 화면을 구성하면 명확하게 알수있다.자주 틀리는 마크업
<span>
, <h1>
<div>
, <a>
ex)
<h1><a href=“”>좋은예시</h1></a>
<b>
,<i>
요소 사용하기<b>
: 글씨를 굵게 만들때 --><strong>
으로 대체<i>
: 글씨를 기울일때 --> <em>
으로 대체<strong>글씨 매우 강조하기</strong> <em> 글씨 기울이기</em>
<hgroup>
마구잡이로 사용하기<hgroup>
:목차의 역할을 하면서 콘텐츠의 상하관계를 표시하기 위해 사용<h1>제목</h1> <h2>큰 목차</h2> <h3>작은 목차</h3> <h2>큰 목차</h2> <h3>작은 목차</h3> <h4>더 작은 목차</h4>
<br/>
연속으로 사용하기<br/>
: 쭉 이어지는 텍스트 흐름에 줄바꿈을 해주기 위해서 사용하는 요소<p>줄</p> <p>바꿈</p>
크로스 브라우징
: 웹사이트에 접근하는 브라우저의 종류에 상관없이 동등한 화면과 기능을 제공할수 있도록 만드는 작업
=> 초기 기획 → 개발 → 테스트/발견 → 수정/반복의 단계로 진행된다.
<meta>
요소와 <title>
요소에 검색 키워드인 ‘프론트엔드’를 넣으면 검색결과에 영향을 준다.<title>
요소<head>
요소의 자식요소로 작성<meta>
요소<head>
요소의 자식요소로 작성<meta name="속성값" content="내용" />
name 속성값 | 설명 |
---|---|
description | 콘텐츠에 대한 간략한 설명이다. (검색 결과에서 제목 밑에 뜨는 내용) |
keywords | 웹 페이지의 관련 키워드들을 나열할 때 사용한다. |
author | 콘텐츠의 제작자를 표시한다. |
<meta property="속성값" content="내용" />
property 속성값 | 설명 |
---|---|
og:url | 페이지의 표준 URL |
og:site_name | 사이트의 이름 |
og:title | 콘텐츠의 제목 |
og:description | 콘텐츠에 대한 간략할 설명(검색 결과에서 제목 밑에 뜨는 내용) |
og:image | 미리보기로 표시될 이미지 |
og:type | 콘텐츠 미디어의 유형. (기본 값은 website로, video, music 등의 유형을 표시) |
og:locale | 리소스의 언어( 기본값은 en_US, 한국은 ko_KR) |
<hgroup>
요소웹 접근성
: 장애인, 고령자 등이 웹 사이트에서 제공하는 정보에 비장애인과 동등하게 접근하고 이해할수있도록 보장하는 것
한국형 웹 콘텐츠 접근성 지침
alt
속성 사용하기<img src="이미지 주소" alt="대체 텍스트" />
track요소
를 사용하여 자막 파일 불러오기<video ... >
<track src="자막.vtt" kind="captions" />
</video>
<html lang="ko">
1) 링크 요소 안에 보이지 않는 요소를 넣어 새 창에 접근하게 됨을 알려주기
<a href="...">페이지<span class="blind">새 창</span></a>
2) 링크 요소에 title 속성으로 새 창 작성하기
<a href="..." title="새 창">페이지</a>
3) 링크 요소에 target=”_blank” 속성을 넣기
<a href="..." target="_blank">페이지</a>
<div>탭1</div>
<div>탭1 관련 내용</div>
<div>탭2</div>
<div>탭2 관련 내용</div>
<caption>
요소를 사용해서 표에 제목을 제공하기<th>
, 데이터 셀은 <td>
를 사용하면 됩니다.scope
혹은 id
와 headers
속성을 사용하여 작성한다.<input>
요소에 id 를 설정하고 <label>
요소의 for 속성으로 연결<label for="user_id">아이디</label>
<input id="user_id" type="text" placeholder="아이디" />
=>title
속성을 사용<input type="text" title="아이디" placeholder="아이디" />
=>WAI-ARIA의 aria-label
속성을 사용<input type="text" aria-label="아이디" placeholder="아이디" />
<div><span></span></div>
=>요소의 속성을 중복해서 사용해선 안된다.<div class="class하나만"></div>
=>id 를 중복해서 사용해선 안된다.잘못된 예 => <div id="아이디"><span id="아이디"></span></div>
WAI-ARIA
: WAI에서 발표한 RIA환경에서의 웹 접근성 기술규격
(RIA: 프로그램을 설치하지 않아도 웹 브라우저를 통해 사용할 수 있는 편리성 + 빠른 반응의 사용자 인터페이스를 동시에 가지는 웹 애플리케이션)
<div role="button">button으로 사용되는 요소</div>
<div role="tabList">
<li role="tab">Tab1</li>
<li role="tab">Tab2</li>
</div>
<div role="tabpanel">Tab menu ONE</div>
<div role="tabpanel">Tab menu TWO</div>
Aria-selected
: 여러개의 선택 가능한 요소 중에서 선택 상태인 요소를 표시할수 있는 속성<div role="tabList">
<li role="tab" aria-selected="true">Tab1</li> //선택 o
<li role="tab" aria-selected="false">Tab2</li> //선택 x
</div>
<div role="tabpanel">Tab menu ONE</div>
<div role="tabpanel">Tab menu TWO</div>
=> aria-expanded
: 아코디언 UI가 펼쳐진 상태인지 표시해주는 속성aria-hidden
: 요소가 숨김 상태인지를 표시하는속성aria-label
: 요소에 라벨을 붙여주는 기능<button aria-label="닫기"/> <img src="X.png" /> </button>
=> aria-live
: 해당 요소가 실시간으로 내용을 갱신하는 영역인지 표시출처
코드스테이츠