1장: HTML - 웹의 구조

📋 강의 개요


📚 1.1 HTML이란?

강의 포인트

핵심 내용

HTML (HyperText Markup Language)
- HyperText: 링크를 통해 다른 문서로 이동 가능
- Markup: 태그로 문서 구조를 표시
- Language: 브라우저가 이해하는 언어

학생들이 자주 묻는 질문

Q: HTML과 HTML5의 차이는? A: HTML5는 HTML의 최신 버전. 시맨틱 태그, 멀티미디어 지원 강화 등이 특징

Q: 태그는 왜 꺾쇠괄호를 쓰나요? A: 일반 텍스트와 구분하기 위한 약속입니다.


📚 1.2 HTML 문서 구조

강의 포인트

기본 구조 설명

<!DOCTYPE html>              <!-- HTML5 문서임을 선언 -->
<html lang="ko">             <!-- 문서 언어 설정 (SEO, 접근성) -->
<head>                       <!-- 문서의 메타정보 -->
    <meta charset="UTF-8">   <!-- 문자 인코딩 (한글 깨짐 방지) -->
    <title>페이지 제목</title>  <!-- 브라우저 탭에 표시 -->
</head>
<body>                       <!-- 실제 화면에 보이는 내용 -->
    
</body>
</html>

실습 가이드

  1. 빈 텍스트 파일 생성 → .html 확장자로 저장
  2. 기본 구조 작성
  3. body에 “안녕하세요” 입력
  4. 브라우저에서 열어보기

📚 1.3 텍스트 태그

강의 포인트

태그별 설명

제목 태그 (h1~h6)

<h1>가장 중요한 제목</h1>    <!-- 페이지의 주제 -->
<h2>섹션 제목</h2>            <!-- 큰 섹션 -->
<h3>하위 섹션</h3>            <!-- 작은 섹션 -->

💡 강의 팁: 목차 구조처럼 생각하면 쉽습니다.

문단 태그 (p)

<p>하나의 문단입니다.</p>
<p>새로운 문단입니다.</p>

💡 강의 팁: p 태그는 자동으로 위아래 여백이 생깁니다.

텍스트 포맷팅

<strong>중요한 텍스트</strong>  <!-- 의미적으로 중요 (SEO 영향) -->
<b>굵은 텍스트</b>             <!-- 단순 시각적 효과 -->
<em>강조 텍스트</em>            <!-- 의미적 강조 -->
<i>이탤릭</i>                  <!-- 단순 기울임 -->

실습 과제

  1. 자기소개 페이지 만들기 (h1, h2, p 사용)
  2. 중요한 부분은 strong, 강조는 em 사용

📚 1.4 목록 태그

강의 포인트

ul (순서 없는 목록)

<ul>
    <li>커피</li>
    <li>홍차</li>
    <li>우유</li>
</ul>

사용 예: 쇼핑 목록, 메뉴, 기능 리스트

ol (순서 있는 목록)

<ol>
    <li>재료 준비</li>
    <li>물 끓이기</li>
    <li>재료 넣기</li>
</ol>

사용 예: 레시피, 순위, 단계별 설명

type 속성


📚 1.5 링크 태그

강의 포인트

기본 링크

<a href="https://www.google.com">구글</a>

target 속성

<a href="url" target="_self">현재 창 (기본값)</a>
<a href="url" target="_blank">새 창</a>
<a href="url" target="_blank" rel="noopener noreferrer">안전한 새 창</a>

💡 보안 팁: target="_blank" 사용 시 rel="noopener noreferrer" 추가하여 보안 취약점 방지

페이지 내 이동 (앵커)

<a href="#section1">섹션 1로 이동</a>

<h2 id="section1">섹션 1</h2>

기타 링크

<a href="mailto:email@example.com">이메일</a>
<a href="tel:010-1234-5678">전화</a>
<a href="file.pdf" download>다운로드</a>

📚 1.6 이미지 태그

강의 포인트

기본 사용법

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

alt 속성이 중요한 이유

  1. 이미지가 로드 안 될 때 대체 텍스트 표시
  2. 스크린 리더가 읽음 (시각장애인 접근성)
  3. 검색 엔진이 이미지 내용을 이해

이미지 형식 선택


📚 1.7 테이블 태그

강의 포인트

기본 구조

<table>
    <thead>
        <tr>
            <th>이름</th>
            <th>나이</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>홍길동</td>
            <td>25</td>
        </tr>
    </tbody>
</table>

colspan과 rowspan

<td colspan="2">2개 열 병합</td>
<td rowspan="2">2개 행 병합</td>

💡 실무 팁: 복잡한 테이블은 Excel에서 구조 잡고 HTML로 변환


📚 1.8-1.9 폼 요소와 Input 타입

강의 포인트

주요 input 타입

<input type="text">         <!-- 텍스트 -->
<input type="password">     <!-- 비밀번호 -->
<input type="email">        <!-- 이메일 (자동 검증) -->
<input type="number">       <!-- 숫자 -->
<input type="date">         <!-- 날짜 -->
<input type="checkbox">     <!-- 체크박스 (다중 선택) -->
<input type="radio">        <!-- 라디오 (단일 선택) -->

유용한 속성


📚 1.10 시맨틱 태그

강의 포인트

주요 시맨틱 태그

<header>   <!-- 머리글 (로고, 네비게이션) -->
<nav>      <!-- 네비게이션 링크 -->
<main>     <!-- 주요 콘텐츠 (페이지당 하나) -->
<section>  <!-- 독립적인 구획 -->
<article>  <!-- 독립적으로 배포 가능한 콘텐츠 -->
<aside>    <!-- 사이드바, 부가 정보 -->
<footer>   <!-- 바닥글 (저작권, 연락처) -->

시맨틱 vs Non-semantic

<!-- ❌ Non-semantic -->
<div id="header">
<div class="navigation">
<div id="main-content">

<!-- ✅ Semantic -->
<header>
<nav>
<main>

📚 1.11-1.12 div, span과 속성

div vs span

주요 속성

id

class

data-* (사용자 정의 속성)

<div data-user-id="123" data-role="admin">

JavaScript에서 element.dataset.userId로 접근


🎯 강의 진행 팁

1시간차: HTML 소개와 기본 구조

2시간차: 목록과 링크

3시간차: 이미지와 테이블

4시간차: 폼 요소

5시간차: 시맨틱과 종합


📝 평가 기준

이해도 체크리스트

실습 과제

  1. 자기소개 페이지 제작
  2. 레스토랑 메뉴판 제작
  3. 회원가입 폼 제작
  4. 간단한 블로그 레이아웃 제작

💡 자주하는 실수와 해결법

실수 1: 태그를 닫지 않음

<p>문단입니다.
✅ <p>문단입니다.</p>

실수 2: 태그 중첩 순서 오류

<strong><em>텍스트</strong></em><strong><em>텍스트</em></strong>

실수 3: id 중복 사용

<div id="box"></div>
   <div id="box"></div><div id="box1"></div>
   <div id="box2"></div>

실수 4: 인라인 요소에 블록 요소 넣기

<span><div>내용</div></span><div><span>내용</span></div>

📚 추가 학습 자료

필수 자료

연습 사이트

추천 도서


🎓 다음 단계

HTML을 마스터했다면:

  1. CSS → 웹 페이지를 아름답게 꾸미기
  2. JavaScript → 동적인 기능 추가하기
  3. 반응형 웹 → 모바일 대응하기

축하합니다! 1장 HTML을 완료했습니다! 🎉