Search

HTML5 의 Semantic Tag 와 Form

대분류
HTML
날짜
2024/06/28

Semantic Tag

기존 HTML 의 한계

웹 문서 구조를 표현하는 태그가 존재하지 않는다.
<div> 태그나 <table> 태그로 구조화하여 작성하였다.
때문에 HTML 페이지의 소스를 보면 문서 구조 파악이 불가능하다.

왜 문서 구조화가 중요할까?

검색 엔진이 좋아하는 웹 페이지 작성의 필요성이 대두되었다.
정보 탐색이 중요해졌으며, 사물인터넷으로 IT 장치들이 스스로 정보를 검색하는 시대가 왔다.
때문에 사용자가 만든 웹 페이지의 가치가 증가했으며, 탐색이 쉽도록 작성될 필요가 생겼다.

시맨틱 웹

웹 문서를 구조화하여 의미 있는 내용 탐색이 용이한 웹을 말한다.
기존에는 <p>, <div>, <h1>, <h2> 등의 태그를 사용했기 때문에 문서의 구조나 의미 전달이 어려웠다.
시맨틱 태그는 문서의 구조와 의미를 전달하는 태그이다.
<header>, <section>, <article>, <main>, <summary>, <mark>, <time> 등이 있다.

시맨틱 태그

<header>

페이지나 섹션의 머리말을 표현한다.
페이지 제목, 페이지를 소개하는 간단한 설명이 담겨있다.

<nav>

하이퍼링크들을 모아 놓은 특별한 섹션이다.
페이지 내 목차를 만드는 용도이다.

<section>

문서의 장 혹은 절을 구성하는 역할을 한다.
<h1> 등을 사용하여 절 혹은 섹션의 주제를 기입한다.

<article>

본문에서 약간 벗어난 노트나 팁을 말한다.
신문, 잡지에서 주요 기사 옆 관련 기사, 삽입 어구로 표시된 논평 등을 예로 들 수 있다.
페이지의 오른쪽이나 왼쪽에 주로 배치된다.

<footer>

꼬리말 영역이다.
주로 저자나 저작권 정보가 쓰인다.

<figure>

책이나 보고서 등 본문에 삽입하는 사진, 차트, 삽화, 소스 코드등을 통상적으로 그림으로 표현한다.

<details>

시맨틱 블록 태그이다.
상세 정보를 담는 시맨틱 블록 태그이다.

<summary>

시맨틱 블록 태그이다.
<details> 로 구성되는 블록의 제목을 표현한다.

<mark>

시맨틱 인라인 태그이다.
중요한 텍스트임을 표시한다.

<time>

시맨틱 인라인 태그이다.
텍스트의 내용이 시간임을 표시한다.

<meter>

시맨틱 인라인 태그이다.
주어진 범위나 % 의 데이터의 양을 표시한다.

<progress>

작업의 진행 정도를 표시한다.

제거된 태그

<big>, <center>, <dir>, <font>, <tt>, <u>, <xmp>, <acronym>, <applet>, <basefont>, <frame>, <frameset>, <noframes>, <strike>

웹 폼

웹페이지에서 사용자 입력을 받는 폼을 말한다.
폼을 만드는 다양한 태그가 있으며, 이를 폼 요소라고한다.

폼 작성

<form action="웹서버 응용 프로그램의 URL" enctype="데이터의 인코딩 타입" method="GET|POST" name="폼이름" target="웹 서버 응용프로그램으로 부터 전송받은 데이터를 출력할 윈도우 이름"> ... </form>
HTML
복사

name 속성

폼의 이름을 지정한다.

action 속성

폼 데이터를 처리할 웹 서버 응용 프로그램의 이름이다.
submit 버튼이 눌리면 브라우저는 action 에 지정된 웹 서버 응용프로그램의 실행을 요청한다.
웹 서버 응용프로그램은 Java, JSP, PHP, C/C++ 등 다양한 언어로 작성한다.

method 속성

폼 데이터를 웹 서버로 전송하는 형식이다.
대표적인 전송 방식은 GET, POST 이다.

폼 요소의 종류

placeholder 속성으로 사용자가 입력할 데이터의 힌트를 줄 수 있다.
폼 요소
설명
<input type=”text”>
한 줄 텍스트 입력 창
<input type=”password”>
암호 입력을 위한 한 줄 텍스트 입력 창
<input type=”button”>
단순 버튼
<input type=”submit”>
웹 서버로 폼 데이터를 전송시키는 버튼
<input type=”reset”>
입력된 폼 데이터를 초기화 시키는 버튼
<input type=”image”>
이미지 버튼
<input type=”checkbox|radio”>
체크박스와 라디오 버튼
<select>
드롭 다운 리스트를 가진 콤보박스
<input type=”month|week|date|time|datetime-local>
년, 월, 일, 시간 등의 시간 정보 입력 창
<input type=”number|range”>
스핀 버튼과 슬라이드바로 편리한 숫자 입력 창
<input type=”color”>
색 입력을 쉽게 하는 컬러 다이얼로그
<input type=”email|url|tel|search”>
이메일, URL, 전화번호, 검색키워드 등 형식 검사 기능을 가진 텍스트 입력 창
<input type=”file”>
로컬 컴퓨터의 파일을 선택하는 폼 요소
<button type=”button|reset|submit”>
단순 버튼, reset, submit 버튼
<textarea>
여러 줄의 텍스트 입력 창

<datalist>

데이터 목록을 가진 텍스트 입력창이다.
목록 리스트를 작성한다.
<option> 태그로 항목 하나를 표현한다.

형식을 가진 텍스트

<input type=”email”>
<input type=”url”>
<input type=”tel”>
<input type=”search”>

form 요소의 그룹핑

<form> <fieldset> <legend>회원 정보</legend> ... </fieldset> </form>
HTML
복사

HTML 에서의 색 표현

#rrggbb
8 비트 범위로 16 진수로 표기한다.
예시