어떻게 버그까지 사랑하겠어, 개발을 사랑하는 거지

[HTML] 태그(Tag) 정리 본문

git commit/HTML CSS

[HTML] 태그(Tag) 정리

@estrella 2025. 10. 5. 22:30

HTML 및 CSS 공부를 시작했다.

과외를 받을까 했는데 직장인의 시간적 제약도 있고, 맞는 수업 스타일 찾는 것도 쉽지 않을 것 같아 인강을 선택했다.

인강은 인프런에서 <제대로 파고드는 HTML CSS - by 얄코(Yalco)> 강의를 결제했고, 총 시간은 11시간이 조금 넘는다.

수강한 걸 까먹지 않기 위해 어느 정도 타임라인이 차고 배운 걸 차곡차곡 정리해 보고자 한다.

(수정이 필요하거나 틀린 내용이 있을 수 있습니다. 혹시 있다면 알려주시면 감사드리겠습니다!)

 


 

🧰 학습 준비물

: Visual Studio Code

 

Visual Studio Code - Code Editing. Redefined

Visual Studio Code redefines AI-powered coding with GitHub Copilot for building and debugging modern web and cloud applications. Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows.

code.visualstudio.com

 

평소에 VSCode를 잘 사용하지 않아서 익숙해지는 데 시간이 좀 걸리려나 했는데

인강에서 친절하게 알려주시기도 하고, 플러그인도 이것저것 설치하니 금방 익숙해졌다.


 

📚 사전에 알면 좋은 지식

1. HTML(HyperText Markup Language)는 웹의 구조를 정의하는 마크업 언어이다.

→ 즉, 프로그래밍 언어는 아님!

2. MDN 사이트를 잘 활용하자!

 

HTML: Hypertext Markup Language | MDN

HTML 소개 웹 개발이 처음이시라면 HTML 기본 문서에서 HTML이란 무엇인지, 그리고 HTML의 사용법을 배워보세요. HTML 자습서 HTML 학습지를 방문하시면 HTML 사용법과 자습서, 완전한 예제를 찾아보실

developer.mozilla.org

 

느낌상 HTML, CSS, JS 등에 관련하여 거의 공식 문서처럼 활용되는 곳.

한국어로 번역도 잘 되어 있어서 참고하기 굉장히 좋다!

3. HTML은 웹 페이지의 구조와 의미를 정의하는 데 사용되어야 한다.

스타일(예시 : 글꼴 크기, 색상, 여백 등)은 CSS를 통해 지정하는 것이 표준적인 접근 방식이다.

 


 

🏗️ HTML 기초 정리

HTML은 태그(Tag)로 구성된다.

  • 여는 태그: <태그명>
  • 닫는 태그: </태그명>
  • 일부 태그는 닫는 태그가 없음 (self-closing)
태그 영어(내 추측) 설명 비고
`<h1> </h1>` header 제목 `<h1> ~ <h6>` 까지 존재
`<p> </p>` paragraph 문단  
`<strong> </strong>` strong 매우 중요한(긴급한) 내용 표시 ② 참고
`<em> </em>` emphasis 강조되는 내용 표시 ③ 참고
`<sup> </sup>` superscript 상위 첨자 요소 1st, 2nd 등 지수나 서수를 표현할 때만 사용한다.
`<sub> </sub>` subscript 아래 첨자 요소 H2O 등 각주, 변수, 화학식 등을 표현할 때만 사용한다.
`<u> </u>` underline 글자(텍스트)로 표현되지 않는 주석이 있는 텍스트 철자가 틀렸을 경우 등에 사용한다. (④ 참고)
`<s> </s>` strikethrough 취소선  
`<blockquote> </blockquote>` blockquote 긴 인용문 블록  
`<q> </q>` quotation 짧은 인라인 인용문  
`<cite> </cite>` cite 저작물의 출처 표기 제목을 반드시 포함해야 한다.
`<mark> </mark>` mark 관련성 표시 ⑤ 참고
`<abbr> </abbr>` abbreviation 준말 / 머리글자 속성인 `title` 활용해 전체 의미를 제공할 수 있다.
`<li> </li>` list item 목록의 항목  
`<ol> </ol>` ordered list 정렬된 목록 1촌 자식은 오직 `<li>` 태그만 가능하다. 다른 태그가 바로 올 수 없음!
`<ul> </ul>` unordered list 정렬되지 않은 목록  
`<dl> </dl>` description list 설명 목록  
`<dt> </dt>` description term 설명 또는 정의 목록에서 용어 지정 `<dl>` 요소 안에서만 사용되어야 한다.
`<dd> </dd>` definition description 앞선 <dt> 에 대한 설명 또는 정의  
`<table> </table>` table 테이블  
`<caption> </caption>` caption 표의 설명 또는 제목 선택사항
`<tr> </tr>` table row 테이블의 행  
`<td> </td>` table data cell 테이블의 데이터 셀 ⑥ 참고
`<th> </th>` table header cell 열 또는 행의 헤더 ⑥ 및 ⑦ 참고
`<thead> </thead>` table header (group) 테이블의 헤더 부분  
`<tbody> </tbody>` table body (group) 테이블의 본문  
`<tfoot> </tfoot>` table footer (group) 테이블의 푸터 부분  
`<colgroup> </colgroup>` column group 열들의 그룹화 `<caption>` 보다 뒤, 그 외 요소보다 앞에 와야 함
`<col> </col>` column 열의 속성 지정 `span` 속성으로 열 수 지정
`<a> </a>` anchor 하이퍼링크 생성 ⑧ 참고
`<address> </address>` address 연락처 정보 표시  
`<form> </form>` form 정보 제출을 위한 태그 포함 `autocomplete` 속성 온오프 여부에 따라 자동완성 기능 온오프가 가능하다.
`<input> </input>` input 입력 값을 받는 필드 ⑨ 참고
`<label> </label>` label <input> 요소의 설명  
`<button> </button>` button 버튼 `type` 속성 : `submit` / `reset` / `button`
`<fieldset> </fieldset>` field set form 태그 내 입력 요소와 라벨의 그룹화  
`<legend> </legend>` legend <fieldset> 요소의 설명  
`<textarea> </textarea>` text area 여러 줄의 텍스트를 입력받을 수 있는 요소  
`<select> </select>` select 선택 드롭다운 목록  
`<option> </option>` option <select> 의 각 항목(옵션)  
`<optgroup> </optgroup>` option group 옵션의 그룹 `label` 속성으로 그룹명을 지정해 줄 수 있다.
`<datalist> </datalist>` data list 다른 컨트롤에서 선택할 수 있는 옵션 목록 `<input>` 태그의 `list` 와 `<datalist>` 의 `id` 가 같게 해줘야 한다.
`<progress> </progress>` progress 작업의 완료 정도(표시줄) 예시: 진행률 등
`<meter> </meter>` meter 범위 내의 스칼라 값 또는 백분율 값 예시: 점수 등
`<pre> </pre>` preformatted 미리 서식을 지정한 텍스트  
`<iframe> </iframe>` inline frame 웹 페이지 안에 다른 웹 페이지를 삽입하는 요소 ❌ 권장되지 않는다!
`<span> </span>` span 인라인 컨텐츠를 묶는 비어 있는 요소  
`<div> </div>` division 블록 컨텐츠를 묶는 비어 있는 요소  
`<br>` line break 줄바꿈 ① 참고
`<hr>` horizontal rule 가로줄 ① 참고
`<img>` image 이미지 ① 및 ⑩ 참고

 

① 닫는 태그 사용하지 않는다.

 

② `<strong>` 태그는 브라우저 상에서는 굵은 글씨로 렌더링 되지만, 굵은 스타일을 보여주기 위한 요소로 사용되는 것이 아닌, 중요하거나 강조가 필요한 내용에 사용되어야 한다. 스타일 자체는 CSS에서 조절!

 

③ `<em>` 태그는 브라우저 상에서는 기울여진 글씨로 렌더링 되지만, 기울임체 스타일을 보여주기 위한 요소로 사용되는 것이 아닌, 주변 텍스트에 비해 강조된 부분을 표현할 때 사용되어야 한다. 스타일 자체는 CSS에서 조절!

 

④ 원래 `<u>` 태그는 밑줄을 긋기 위한 용도로 사용되었으나, HTML 5부터는 새롭게 의미가 재정의되었다. 시각적인 강조가 아닌, 철자 오류 강조나 고유명사 등 관습적으로 강조되지만 강세를 두지 않는 텍스트에 사용되어야 한다. 스타일 자체는 CSS에서 조절!

 

⑤ `<mark>` 태그는 브라우저 상에서는 형광펜 효과처럼 렌더링 되지만, 표시만을 위한 요소로 사용되는 것이 아닌, 관련이 있거나 주시해야 하는 부분에 사용되어야 한다. 스타일 자체는 CSS에서 조절!

 

⑥ `<th>` 혹은 `<td>` 태그에서 열 병합일 경우 `colspan="[숫자]"` / 행 병합일 경우 `rowspan="[숫자]"` 속성을 붙인다.

 

⑦ `<th>` 태그에서 열들의 머리가 되는 경우 `scope="col"` / 행들의 머리가 되는 경우 `scope="row"` 속성을 붙인다.

속성을 붙인다고 해서 육안으로 달라지는 것은 없지만, 컴퓨터 혹은 코드를 읽는 사람들에게 좀 더 체계적인 정보를 제공할 수 있다.

 

⑧ `<a>` 태그에서 주요 속성으로는 `href` 와 `target` 이 있다. `href` 에는 하이퍼링크가 가리키는 URL을, `target` 에는 연결되는 URL이 표시되는 위치를 나타낸다. `target` 에는 속성 중 `_self` (현재 창) / `_blank` (새 창) / `_parent` (부모 프레임) / `_top` (최상위 프레임) 을 선택하여 입력한다.

* `id` 값을 이용해 요소로 접근 가능하다. `href="#[id값]"`

* `_blank` 속성으로 지정해 주었을 경우, 텍스트나 내부 이미지의 `alt` 를 명시해 주는 것을 권장한다.

 

⑨ `<input>` 태그의 타입은 굉장히 다양하다. 타입을 지정해 주지 않은 경우 기본으로는 `text` 로 설정된다. 또한 각 타입별 속성도 다양하다.(아래 링크 참조!)

* `<input>` 태그의 `id` 와 `<label>` 태그의 `for` 속성 값을 같게 하여 연관 지을 수 있다.

(예를 들어 체크 박스에서 `<label>` 만 클릭해도 체크가 됨)

* `radio` 버튼 타입의 경우, 하나의 그룹으로 인식되게 하려면 각 버튼의 `name` 을 동일하게 지정해줘야 한다.

* `disabled` 속성과 `readonly` 속성은 둘 다 수정할 수는 없다는 점에서 공통되지만, 그 값이 폼 제출 시 전송이 되냐 안 되냐는 차이가 있다. (`readonly` 는 전송이 됨)

 

<input>: The HTML Input element - HTML | MDN

How an works varies considerably depending on the value of its type attribute, hence the different types are covered in their own separate reference pages. If this attribute is not specified, the default type adopted is text. The available types are as fol

developer.mozilla.org

 

⑩ `<img>` 태그의 속성에는 `src` (이미지의 URL) / `alt` (대체 텍스트) / `title` (툴팁) / `width` (너비) / `height` (높이) 등이 있다. `src` 는 필수이며, 이외에는 필수는 아니지만 `alt` 의 경우에는 권장된다. `title` 의 경우 `alt` 에서 지정한 내용과의 중복을 지양해야 한다.

 


 

* 참고했던 자료 및 출처:

- MDN 홈페이지

 

HTML 요소 참고서 - HTML: Hypertext Markup Language | MDN

요소 설명 HTML 문서의 루트(최상위 요소)를 나타내므로 root 요소라고도 합니다. 다른 모든 요소는 이 요소의 자손이어야 합니다. 메타데이터는 스타일, 스크립트, 각종 소프트웨어(검색 엔진, 브

developer.mozilla.org

 

- 얄코 홈페이지

 

얄코 홈

어려운 프로그래밍 개념들을 쉽게 설명해주는 유튜브 채널 '얄팍한 코딩사전'. 영상에서 다 알려주지 못한 정보들이나 자주 묻는 질문들의 답변들, 예제 코드들을 얄코에서 확인하세요!

www.yalco.kr

 

 

네이버 블로그에 작성한 게시글 이전, 2025. 5. 23. 작성

'git commit > HTML CSS' 카테고리의 다른 글

[HTML] 헤드와 시맨틱 태그  (0) 2025.10.05