Front/HTML

HTML) 주요 태그 모음 & 코드 예제

pogun 2025. 2. 14. 00:29

1. HTML 기본 구조 태그

: HTML 문서의 버전을 지정하는 선언

: HTML5에서는 <!DOCTYPE html>만 사용하면 됨.

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>문서 제목</title>
</head>
<body>
    <h1>안녕하세요!</h1>
</body>
</html>

1. <html>

: HTML 문서의 루트(root) 요소

: lang 속성으로 문서의 언어를 지정할 수 있음.

2. <head>

: 문서의 메타데이터를 포함하는 부분

3. <title>

: 웹 브라우저의 탭 제목을 지정하는 태그

 

4. <meta>

: 문서의 정보를 설정하는 태그

charset, name, content, viewport 등의 속성을 설정 가능

<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="이 페이지는 HTML 태그 설명 페이지입니다.">

 

5. <link>

: 외부 스타일시트(CSS)나 아이콘을 연결하는 태그

<link rel="stylesheet" href="styles.css">
<link rel="icon" href="favicon.ico">

 

6. <style>

: 내부 CSS 스타일을 작성하는 태그

: 기본적으론 CSS에서 대부분 처리를 함.

: 우선순위에 따라서 때론 태그에서 해줘야할 때가 있음.

<h1 style = "color: blue">Hello Tag</h1>

 

7. <script>

: JavaScript 코드를 삽입하는 태그

: src 속성을 사용하면 외부 스크립트 연결 가능

<script>
    alert("Hello, world!");
</script>
<script src="script.js"></script>

2. 텍스트 관련 태그

1. <h1> ~ <h6>

: 제목을 표시하는 태그

: <h1>이 가장 크고 <h6>이 가장 작음.

<h1>제목 1</h1>
<h2>제목 2</h2>
<h3>제목 3</h3>

 

2. <p>

: 문단을 나타내는 태그

3. <br>

: 줄바꿈을 하는 태그.(닫는 태그 없음)

4. <hr>

: 가로선 그리는 태그. (닫는 태그 없음)

<p>첫 번째 문장입니다.<br>두 번째 줄입니다.</p>
<hr>
<p>다음 문단입니다.</p>

 

5. <strong> / <b>

<strong> : 중요한 텍스트(기본적으로 굵게 표시됨)

<b> : 단순히 굵게 표시하는 태그

6. <em> / <i>

<em> : 강조하는 텍스트(기본적으로 기울임)

<i> : 단순히 기울임꼴로 표시

7. <mark>

: 하이라이트 효과(형광펜) 적용

8. <small>

: 작은 글씨 표시

9. <del>

: 취소선(삭제된 텍스트)

<p><strong>강조된 텍스트</strong>와 <b>굵은 텍스트</b></p>
<p><em>강조된 기울임</em>과 <i>단순 기울임</i></p>
<p><mark>하이라이트 표시</mark></p>
<p><del>삭제된 텍스트</del></p>

 

10. <sup> & <sub> (윗첨자 & 아랫첨자)

: <sup> : 윗첨자, 주로 수학이나 화학식에서 사용

: <sub> : 아랫첨자, 화학식 같은 곳에서 사용

<p>이것은 <sub>아래첨자</sub>입니다.</p>
<p>이것은 <sup>윗첨자</sup>입니다.</p>

 

11. <pre>

: 공백과 줄바꿈을 그대로 유지함

: 고정폭 글꼴(모노스페이스 폰트, 예: Courier New)로 출력됨

: CSS를 사용해서 변경 가능

<pre>
    이 글은     여러 개의 공백을 사용했지만,
    <pre> 태그 안에서는 그대로 유지됩니다.
</pre>

<p>
    이 글은     여러 개의 공백을 사용했지만,
    HTML에서는       공백이 하나로 변합니다.
</p>

: P 태그는 여러 개의 공백을 하나의 공백으로 변환시켜 보여줌

: pre 태그는 작성한 그대로를 보여줌


3. 목록 관련 태그

1. <ul> (순서 없는 목록)

: 항목을 점(●)으로 표시하는 목록

<ul>
    <li>사과</li>
    <li>바나나</li>
    <li>포도</li>
</ul>

<ul style="list-style-type: disc;">
<ul style="list-style-type: square;">
<ul style="list-style-type: circle;">

disc : 동그란 점

square : 네모난 점

circle : 중간이 비어있는 동그란 점

 

2. <ol> (순서 있는 목록)

: 번호가 매겨진 목록

<ol>
    <li>첫 번째</li>
    <li>두 번째</li>
    <li>세 번째</li>
</ol>

<ol type="1">
<ol type="A">
<ol type="a">
<ol type="I">

: type 지정한 부분이 잴 처음 부분

 

List 안에 List 가능

<ul>
    <li>coffee
        <ol type="1">
            <li><a href="#">black</a></li>
            <li>milk</li>
        </ol>
    </li>
    <li>tea</li>
    <li>soda 
        <ol type="1">
            <li>cola</li>
            <li>side</li>
        </ol>
    </li>
</ul>

 

3. <dl> (설명 목록)

:  용어와 설명을 짝지어 표현

<dl>
    <dt>HTML</dt>
    <dd>웹 페이지를 만드는 마크업 언어</dd>
    <dt>CSS</dt>
    <dd>웹 페이지의 스타일을 정의하는 언어</dd>
</dl>

4. 링크 및 미디어 태그

1. <a> (링크)

: 다른 페이지로 이동하는 하이퍼링크

: 자신이 설계한 다음 페이지로도 넘어갈 수 있음.

<a href="https://www.google.com">구글로 이동</a>
<a href="index4.html">index4.html로 이동</a>
<a href="http://localhost:9000/index3.html">index3.html로 이동</a>
<a href="index2.html" target="_self">index2.html로 이동(현재창에서)</a>
<a href="index2.html" target=" _blank">index2.html로 이동(새로운창에서)</a>

 

2. <img> (이미지)

: 웹 페이지에 이미지를 삽입

<img src="image.jpg" alt="이미지 설명" width="300">

src : 이미지 파일 경로

alt : 이미지가 안나왔을 시 대체용 텍스트

width, height : 가로, 세로 크기 조절( %(브라우저 창 크기 단위) / px(픽셀 단위) )

 

3. <audio> (오디오)

: 오디오 파일을 삽입

4. <video> (비디오)

: 동영상 삽입 가능

<video controls width="400">
    <source src="video.mp4" type="video/mp4">
</video>

<video src="movie.mp4" poster="thumbnail.jpg" width="400" controls></video>

<video src="movie.mp4" preload="auto" controls></video>

controls : 컨트롤 바 표시

autoplay : 자동 재생

loop : 반복 재생

muted : 음소거

poster="파일 이름" : 비디오가 재생되기 전에 표시할 이미지(포스터)를 설정하는 속성

preload : 비디오 데이터를 로드하는 방식을 결정하는 속성

        auto :  페이지가 로드될 때 비디오를 자동으로 미리 로드함 (기본값)

        metadata : 비디오 파일의 정보만 로드 (길이, 해상도 등)

        none : 아예 미리 로드하지 않음, 사용자가 재생 버튼을 눌러야 로드함

 

5. <object> 기본형

: 오디오, 비디오, PDF등을 삽입할 때 사용

<object width="너비" height="높이" data="파일"></object>

5. 테이블 관련 태그

1. <table> (표 생성)

border= "숫자" : 해당 속성으로 테두리 선 생성

2. <tr> (행)

3. <th> (헤더 셀)

4. <td> (데이터 셀)

5. <caption> (테이블의 제목)

<table border="1">
	<caption>학생명단</caption>
    <tr>
        <th>이름</th>
        <th>나이</th>
    </tr>
    <tr>
        <td>홍길동</td>
        <td>25</td>
    </tr>
</table>

rowspan="2" : 2개의 행 합치기

colspan="2" : 2개의 열 합치기

 

6. <thead> (Table Head)

: 테이블의 헤더(머리글) 부분을 정의하는 태그

: 보통 열(column)의 제목을 포함하는 <tr>(행)과 <th>(셀)를 포함

: <thead> 안의 내용은 스타일을 지정하거나, 테이블을 스크롤할 때 고정하는 등의 용도로 활용

<table border="1">
  <thead>
    <tr>
      <th>이름</th>
      <th>나이</th>
      <th>직업</th>
    </tr>
  </thead>
</table>

 

7. <tbody> (Table Body)

: 테이블의 본문(데이터) 부분을 정의하는 태그

: <tr> 태그를 포함하여 본문의 여러 행을 구성

: <thead>와 구분되어 있어 스타일을 다르게 적용하거나, 스크롤 기능을 활용할 수 있다.

<table border="1">
  <thead>
    <tr>
      <th>이름</th>
      <th>나이</th>
      <th>직업</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>홍길동</td>
      <td>30</td>
      <td>개발자</td>
    </tr>
    <tr>
      <td>이순신</td>
      <td>45</td>
      <td>장군</td>
    </tr>
  </tbody>
</table>

 


6. 폼 관련 태그

1. <form> (입력 폼)

action : 서버 프로그램 지정

method : get, post

name : JavaScript 폼 이름 지정

target : 열어볼 파일 위치 지정

2. <input> (사용자 입력)

: input은 같이 사용할 속성들이 많다.

: 상황에 따라 사용하면 된다.

3. <textarea> (멀티라인 입력)

rows : 세로줄 수(길 경우 스크롤 바 생성)

cols : 가로 너비

4. <button> (버튼)

submit : 폼을 서버로 전송

reset : 폼 초기화

5. <select> (드롭다운 목록)

: 선택 리스트

: 하나 또는 여러 개의 옵션을 선택할 수 있는 UI 요소

<form action="/submit" method="post">
    <input type="text" name="username" placeholder="이름 입력">
    <button type="submit">전송</button>
</form>

: 하나 또는 여러 개의 옵션을 선택할 수 있는 UI 요소

 

6. <label>

: 입력 필드와 연결해서 클릭 시 자동으로 입력 필드로 포커스를 이동시킴

: 접근성을 향상시켜서 스크린 리더 같은 보조 기술이 필드 설명을 읽을 수 있도록 도와줌

<label for="username">아이디:</label>
<input type="text" id="username" name="username">

<label>
    아이디: <input type="text" name="username">
</label>

: for 속성의 값은 input 태그의 id와 동일해야 함

: 클릭 시 input 필드에 포커스가 자동 이동됨

: <label>이 input을 감싸면 자동으로 연결됨 (하지만 for 속성을 사용하는 방식이 더 명확함)

 

7. <fieldset>

: 그룹화

8. <legend>

: 그룹화 한 필드셋에 제목

 

간단한 실제 예제

<form action="default.jsp" method="post">
    ID:<input type="text" name="id" placeholder="아이디" required /><br/>
    PW:<input type="password" name="pw" placeholder="패스워드" required /><br/>
    <input type="submit" value="로그인">
</form>

action :  사용자가 입력한 데이터를 default.jsp로 전송함.( 즉, 폼을 제출하면 default.jsp 파일이 실행됨 )

name="id" : 입력한 값의 이름(name) → id라는 변수에 저장( 제출하면 default.jsp?id=사용자가 입력한 값 형태로 전송 )

placeholder="아이디" : 입력창 안에 "아이디"라는 힌트(예시 텍스트) 표시

<input type="submit"> : 제출 버튼( 클릭하면 default.jsp로 입력된 데이터(id, pw)를 전송 )

method="post" : get 방식을 사용하면 주소(URL)에 ID / PW가 노출될 수 있기때문에

: POST 사용( 데이터가 숨겨진 상태로 전송됨.(URL에 보이지 않음) )

required : 입력 필수 (비어 있으면 제출 안 됨)

 

HTML) input 태그 & select 태그 & textarea 태그 주요 타입 및 속성 이해

1. input 태그타입설명text한 줄 텍스트 입력number숫자 입력date날짜 입력color색상 선택range슬라이더 형태 입력button버튼 생성radio단일 선택 버튼 checkBox 체크 박스 버튼 생성 1. text 타입text입력:  2. nu

pogun.tistory.com


7. HTML 레이아웃 태그

1. <header> (머리글)

: 문서나 섹션의 머리 부분을 나타냄.

: 로고, 내비게이션, 제목 등을 포함할 수 있음.

<header>
    <h1>내 블로그</h1>
    <nav>
        <ul>
            <li><a href="#">홈</a></li>
            <li><a href="#">소개</a></li>
            <li><a href="#">연락처</a></li>
        </ul>
    </nav>
</header>

 

2. <footer> (꼬리글)

: 문서나 섹션의 하단 정보를 나타냄.

: 저작권 정보, 연락처, 사이트맵 등을 포함할 수 있음.

<footer>
    <p>© 2025 내 블로그. 모든 권리 보유.</p>
    <a href="mailto:contact@example.com">문의하기</a>
</footer>

 

3. <section> (섹션)

: 하나의 주제를 가진 콘텐츠 그룹을 만들 때 사용

: <article>과 달리 독립적인 내용이 아닐 수도 있음.

<section>
    <h2>최신 뉴스</h2>
    <p>오늘의 주요 뉴스입니다.</p>
</section>

 

4. <article> (독립적인 콘텐츠)

: 독립적으로 배포할 수 있는 콘텐츠를 의미함.

: 블로그 글, 기사, 댓글, 포스트 등에 사용됨.

<article>
    <h2>HTML 태그 정리</h2>
    <p>오늘은 HTML의 주요 태그에 대해 배워볼 거예요.</p>
</article>

 

5. <aside> (사이드바, 보조 콘텐츠)

: 본문과 관련된 보조 정보를 제공하는 태그

: 광고, 추천 링크, 사이드바 메뉴 등에 사용됨.

<aside>
    <h3>관련 글</h3>
    <ul>
        <li><a href="#">CSS 기본 가이드</a></li>
        <li><a href="#">JavaScript 개념 정리</a></li>
    </ul>
</aside>

 

6. <div> (레이아웃 구분)

: 특별한 의미 없이 레이아웃을 만들 때 사용됨.

: CSS와 함께 사용하여 스타일을 적용할 때 유용함.

<div class="container">
    <div class="box">박스 1</div>
    <div class="box">박스 2</div>
</div>

 

7. <span> (인라인 요소)

: 특정 부분만 스타일을 적용할 때 사용하는 태그

: <div>와 다르게 인라인 요소이며, 블록을 만들지 않음.

<p>이 문장에서 <span style="color: red;">강조된 부분</span>입니다.</p>

 

레이아웃 활용한 예제 : 쉽게 이해하기 위함

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>HTML 구조</title>
</head>
<body>
    <header>
        <h1>내 블로그</h1>
        <nav>
            <ul>
                <li><a href="#">홈</a></li>
                <li><a href="#">소개</a></li>
                <li><a href="#">연락처</a></li>
            </ul>
        </nav>
    </header>

    <div>
        <main>
            <section>
                <h2>최신 뉴스</h2>
                <article>
                    <h3>HTML 태그 정리</h3>
                    <p>오늘은 HTML의 주요 태그에 대해 배워볼 거예요.</p>
                </article>
            </section>
        </main>

        <aside>
            <h3>관련 글</h3>
            <ul>
                <li><a href="#">CSS 기본 가이드</a></li>
                <li><a href="#">JavaScript 개념 정리</a></li>
            </ul>
        </aside>
    </div>

    <footer>
        <p>© 2025 내 블로그. 모든 권리 보유.</p>
    </footer>
</body>
</html>

그 외 자주 사용하는 태그

1. <nav> (네비게이션)

: 주요 링크 목록을 감싸는 태그

: 사이트 내 메뉴, 내비게이션 바를 만들 때 사용

<nav>
    <ul>
        <li><a href="#">홈</a></li>
        <li><a href="#">소개</a></li>
        <li><a href="#">연락처</a></li>
    </ul>
</nav>

 

2. <figure> & <figcaption> (이미지 설명)

<figure> : 이미지나 차트를 감싸는 태그

<figcaption> : 이미지 설명을 추가하는 태그

<figure>
    <img src="image.jpg" alt="설명 이미지">
    <figcaption>이것은 이미지의 설명입니다.</figcaption>
</figure>

 

3. <code> (코드 블록)

: 프로그래밍 코드를 표시할 때 사용

<p>JavaScript 예제:</p>
<code>console.log("Hello, World!");</code>

 

4. <abbr> (약어 설명)

: 마우스를 올리면 약어의 전체 의미를 표시함.

<p><abbr title="World Health Organization">WHO</abbr>는 국제 보건 기구입니다.</p>

 

5. <cite> (출처 표시)

: 책, 논문, 기사 등의 출처를 표시할 때 사용

<p>웹 개발을 배우려면 <cite>HTML & CSS Guide</cite> 책이 유용합니다.</p>

 

6. <address> (연락처 정보)

: 주소나 연락처를 표시하는 태그

<address>
    이메일: <a href="mailto:contact@example.com">contact@example.com</a><br>
    전화번호: 010-1234-5678
</address>

 

7. <progress> (진행 상태 표시)

: 진행률을 나타내는 태그

<label for="progress">진행률:</label>
<progress id="progress" value="70" max="100"></progress>

 

8. <meter> (범위 값 표시)

: 특정 값이 범위 내에서 어디에 위치하는지 표시하는 태그

<meter value="7" min="0" max="10">7/10</meter>

 

9. <details> & <summary> (숨길 수 있는 내용)

<details> : 클릭하면 내용을 펼칠 수 있음.

<summary> : 기본으로 보이는 제목 부분

<details>
    <summary>더보기</summary>
    <p>여기에 숨겨진 내용이 있습니다!</p>
</details>

 

10. <time> (날짜 및 시간 표시)

: 날짜와 시간을 명확하게 표시할 때 사용

<p>이 이벤트는 <time datetime="2025-02-12">2025년 2월 12일</time>에 열립니다.</p>

 

11. <iframe> (웹페이지 안에 다른 웹페이지를 삽입)

: 하나의 웹페이지 안에서 다른 페이지, 문서, 동영상 등을 불러올 수 있다.

<iframe src="https://www.example.com" width="600" height="400"></iframe>

src : 불러올 웹페이지 URL

가로 & 세로 크기 : 픽셀 또는 %

frameborder : 테두리 표시(0 : 없음 / 1 : 표시)

allowfullscreen : 전체 화면 보기 허용

sandbox : 보안 제어 (예: sandbox="allow-scripts")

<iframe src="index8.html" width="320" height="240"></iframe>

<!-- CGV 홈페이지 -->
<iframe src="https://www.cgv.co.kr" width="320" height="240"></iframe>

<!-- 유튜브 동영상 -->
<iframe width="560" height="315" src="https://www.youtube.com/embed/dQw4w9WgXcQ" allowfullscreen></iframe>

<!-- 구글 지도 -->
<iframe
  width="600"
  height="450"
  style="border:0"
  loading="lazy"
  allowfullscreen
  src="https://www.google.com/maps/embed?...">
</iframe>

: 특정 홈페이지는 X-Frame-Options 설정으로 <iframe>로 삽입이 차단될 가능성이 있음!!