AD JB Toolbox 01

HTML 강좌 / 문서 제목·설명·언어·문자 인코딩 설정하기

HTML 문서의 head에는 브라우저 탭에 표시할 title, 문서 언어를 나타내는 html lang, 문자를 해석할 때 필요한 meta charset 등을 설정합니다. 페이지 설명은 meta name="description"으로 제공할 수 있지만, 검색 결과에 반드시 그대로 표시되는 것은 아닙니다.

문서에 필요한 기본 설정

<!doctype html>
<html lang="ko">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>작은 정원 | 식물 가꾸기 안내</title>
  <meta name="description"
        content="작은 정원에서 키우기 쉬운 식물과 기본 관리 방법을 소개합니다.">
</head>
<body>
  <h1>작은 정원</h1>
  <p>식물 가꾸기를 시작해 보세요.</p>
</body>
</html>

코드를 index.html로 저장하고 브라우저에서 열면 탭에 title의 내용이 표시됩니다. h1은 페이지 본문에 보이는 제목으로, title과 역할이 다릅니다. 두 제목이 서로 모순되지 않도록 작성하세요.

head의 내용은 대체로 페이지 본문에 직접 표시되지 않지만 문서의 해석과 소개에 쓰입니다. 반대로 독자가 화면에서 읽을 설명 문장은 body에 적어야 합니다. 다른 페이지를 만든다면 title과 설명을 모두 그 페이지 내용에 맞게 바꾸고, 사이트 이름만 반복하는 동일한 제목을 여러 파일에 복사하지 마세요.

lang과 charset이 필요한 이유

lang="ko"는 문서의 기본 언어가 한국어임을 나타냅니다. 다른 언어로 작성한 일부 구간에는 그 요소에 별도의 lang 값을 지정할 수 있습니다. 언어 정보는 보조 기술이 내용을 읽고 처리하는 데 도움이 됩니다.

meta charset="utf-8"은 문자 인코딩을 명시합니다. 파일 자체도 UTF-8로 저장해야 한글이 올바르게 표시됩니다. 글자가 깨진다면 태그만 확인하지 말고 편집기의 저장 인코딩과 서버 응답 헤더도 살펴보세요.

문서의 기본 언어가 영어라면 lang="en"처럼 실제 내용에 맞는 값을 사용합니다. 한국어 페이지 안에 영어 문장이 일부 있다고 해서 전체 문서의 언어를 영어로 바꿀 필요는 없습니다. 다만 발음 방식이 중요한 긴 외국어 구간에는 해당 요소에 별도의 lang을 붙일 수 있습니다.

description과 viewport의 역할

description은 페이지 내용을 짧고 구체적으로 요약한 메타데이터입니다. 독자가 페이지에서 얻을 수 있는 내용을 정확히 적되, 키워드를 나열하지 마세요. Google 검색 결과 스니펫 안내에 따르면 검색 결과의 설명은 페이지 본문이나 메타 설명 등에서 생성될 수 있으므로, 메타 설명이 그대로 노출된다고 보장할 수는 없습니다.

viewport 설정은 모바일 화면의 레이아웃 뷰포트와 확대 기준에 영향을 줍니다. 반응형 CSS와 함께 사용할 때 중요하지만, 이 태그 하나만 넣는다고 페이지 전체가 자동으로 모바일에 맞게 바뀌지는 않습니다. 요소 정의는 MDN meta 요소 문서와 MDN title 요소 문서에서 확인할 수 있습니다.

특히 글자가 작아 보인다는 이유로 확대 기능을 제한하지 마세요. 화면 폭에 맞는 CSS와 읽기 쉬운 글자 크기로 해결해야 합니다. 모바일에서 페이지를 열어 가로 스크롤과 텍스트 확대 동작을 직접 확인하는 것이 좋습니다.

게시 전 확인

각 페이지의 탭 제목이 서로 구분되는지, 본문에 보이는 제목과 일치하는지, 한국어가 깨지지 않는지 확인하세요. 페이지 설명을 작성했다면 현재 본문을 정확히 요약하는지도 다시 읽어 보세요.

같은 카테고리의 다른 글
HTML 강좌 / 제목과 문단

HTML 강좌 / 제목과 문단

HTML h1~h6 제목 태그와 p 문단 태그의 역할 및 올바른 구조를 예제로 설명합니다. 제목 단계 구성, br 줄바꿈과 자주 발생하는 작성 오류도 함께 확인할 수 있습니다.

HTML 강좌 / input 유형 선택하기: 이메일·숫자·날짜·체크박스·라디오

HTML 강좌 / input 유형 선택하기: 이메일·숫자·날짜·체크박스·라디오

입력 목적에 맞는 input type을 고르고 체크박스와 라디오 버튼의 선택·제출 동작을 구분하는 방법을 설명합니다.

HTML 강좌 / HTML의 개념과 웹페이지에서 하는 역할

HTML 강좌 / HTML의 개념과 웹페이지에서 하는 역할

HTML은 웹페이지의 콘텐츠에 구조와 의미를 부여합니다. HTML·CSS·JavaScript의 역할을 비교하고, 간단한 코드가 브라우저에 표시되는 과정과 첫 HTML 파일을 만드는 방법을 알아봅니다.

HTML 강좌 / 반응형 이미지: srcset, sizes, picture

HTML 강좌 / 반응형 이미지: srcset, sizes, picture

HTML의 srcset과 sizes로 화면에 맞는 이미지 파일을 선택하고, picture로 좁은 화면의 이미지 구도를 바꾸는 방법을 실제 파일 예제로 설명합니다.

HTML 강좌 / HTML 문서의 기본 구조

HTML 강좌 / HTML 문서의 기본 구조

HTML 문서를 이루는 doctype, html, head, body의 역할과 기본 작성 순서를 예제로 설명합니다. 문서 정보와 페이지 본문을 구분하고 첫 HTML 파일을 직접 만들어 볼 수 있습니다.

HTML 강좌 / 문법

HTML 강좌 / 문법

HTML 요소·태그·속성·주석의 기본 문법을 예제로 설명합니다. 빈 요소, 속성값 따옴표, 태그 중첩에서 주의할 점과 문법 확인 방법도 다룹니다.

HTML 강좌 / 문서 제목·설명·언어·문자 인코딩 설정하기

HTML 강좌 / 문서 제목·설명·언어·문자 인코딩 설정하기

title, meta description, html lang, UTF-8 문자 인코딩, viewport의 역할을 완성된 HTML 문서 예제로 설명합니다.

HTML 강좌 / 시맨틱 요소로 페이지 영역 나누기

HTML 강좌 / 시맨틱 요소로 페이지 영역 나누기

header, nav, main, section, article, aside, footer의 역할을 구분하고 간단한 페이지를 의미에 맞게 구성하는 방법을 설명합니다.

HTML 강좌 / 읽기 쉬운 표 만들기: caption, th, scope, 셀 병합

HTML 강좌 / 읽기 쉬운 표 만들기: caption, th, scope, 셀 병합

caption과 제목 셀의 scope로 표의 관계를 분명히 하고, colspan·rowspan으로 셀을 병합할 때 주의할 점을 설명합니다.

HTML / Tutorial / 연속된 공백 넣는 방법

HTML / Tutorial / 연속된 공백 넣는 방법

HTML에서 연속된 공백은 하나의 공백으로 처리합니다. 소스 코드에서 여러 칸을 띄어써도 브라우저에서는 한 칸을 띄어쓴 것으로 표현됩니다. 연속된 공백을 넣고 싶다면 특수 문자  를 사용합니다.