AD JB Toolbox 01

HTML 강좌 / 문법

HTML 문법은 요소(element)를 태그로 표현하고, 필요한 정보를 속성(attribute)으로 추가하는 방식입니다. 시작 태그와 종료 태그의 범위를 맞추고, 요소를 올바른 순서로 중첩하며, 속성값을 따옴표로 감싸는 방법을 알아두면 HTML 코드를 정확하게 작성하는 데 도움이 됩니다.

HTML 요소와 태그의 기본 문법

HTML 요소는 일반적으로 시작 태그, 내용, 종료 태그로 구성됩니다.

<tagname>내용</tagname>
  • <tagname>은 요소가 시작되는 위치를 나타내는 시작 태그입니다.
  • 내용은 브라우저에 표시되거나 요소 안에서 처리되는 콘텐츠입니다.
  • </tagname>은 요소가 끝나는 위치를 나타내는 종료 태그입니다.

다음 코드는 하나의 p 요소를 만듭니다. <p>는 시작 태그, HTML 문법은 내용, </p>는 종료 태그입니다.

<p>HTML 문법</p>

HTML 태그 이름은 대소문자를 구분하지 않지만, 코드의 일관성과 가독성을 위해 소문자로 작성하는 것이 일반적입니다.

종료 태그가 없는 빈 요소

모든 HTML 요소에 종료 태그가 필요한 것은 아닙니다. 내용을 가질 수 없는 빈 요소(void element)는 시작 태그만 사용합니다.

<br>
<img src="image.webp" alt="푸른 바다 위로 떠오르는 해">
<input type="text" name="username">
<meta charset="utf-8">

br, img, input, meta 등이 대표적인 빈 요소입니다. HTML 문법에서는 이러한 요소에 </br>나 </img> 같은 종료 태그를 작성하지 않습니다.

HTML 속성 작성 방법

속성은 요소의 동작이나 추가 정보를 지정하며 시작 태그 안에 작성합니다. 속성 이름과 값은 등호(=)로 연결합니다.

<tagname attribute="value">내용</tagname>

예를 들어 다음 코드는 blockquote 요소에 값이 quote-01인 id 속성을 추가합니다.

<blockquote id="quote-01">
  인용문
</blockquote>

속성값은 큰따옴표나 작은따옴표로 감쌀 수 있습니다. 따옴표를 생략할 수 있는 경우도 있지만 공백이나 특정 문자가 포함되면 의도와 다르게 해석될 수 있으므로, 일관되게 큰따옴표를 사용하는 편이 안전합니다.

<p style="color: red;">빨간색 문장</p>

다음과 같이 따옴표 없이 공백을 넣으면 브라우저는 style 속성값을 color:까지만 해석할 수 있으므로 원하는 결과가 나오지 않습니다.

<p style=color: red;>빨간색 문장</p>

disabled, checked, required처럼 값보다 속성의 존재 자체가 의미를 갖는 불리언 속성도 있습니다.

<input type="text" disabled>

태그는 안쪽 요소부터 닫기

요소 안에 다른 요소를 넣을 때는 나중에 연 태그를 먼저 닫아야 합니다. 다음 코드는 strong 요소가 p 요소 안에 완전히 포함되어 있으므로 올바르게 중첩되어 있습니다.

<p>이 문장에서 <strong>중요한 부분</strong>을 강조합니다.</p>

다음처럼 태그의 범위가 서로 겹치면 올바른 중첩이 아닙니다.

<p>이 문장에서 <strong>중요한 부분</p></strong>

브라우저가 잘못된 마크업을 가능한 범위에서 보정해 표시할 수는 있지만, 브라우저의 오류 복구에 의존하면 예상하지 못한 문서 구조가 만들어질 수 있습니다.

HTML 주석 작성 방법

HTML 주석(comment)은 <!--로 시작하고 -->로 끝납니다. 브라우저 화면에는 표시되지 않으므로 코드의 목적이나 임시 메모를 남길 때 사용할 수 있습니다.

<!-- 이 내용은 브라우저 화면에 표시되지 않습니다. -->

주석은 여러 줄로 작성할 수도 있습니다.

<!--
  여러 줄로 작성한
  HTML 주석입니다.
-->

HTML 주석 안에 다른 주석을 중첩하면 주석의 범위가 의도와 다르게 해석될 수 있으므로 사용하지 않아야 합니다.

<!--
  <!-- 중첩한 주석 -->
-->

주석은 화면에 보이지 않을 뿐 페이지 소스에는 남습니다. 비밀번호, API 키, 개인정보처럼 공개하면 안 되는 내용은 주석에도 입력하지 않아야 합니다.

HTML 문법을 확인하는 방법

HTML은 문법 오류가 있어도 브라우저가 가능한 범위에서 내용을 표시합니다. 화면이 보인다는 사실만으로 문법이 정확하다고 판단하지 말고, 태그 중첩과 속성값을 직접 확인하거나 W3C Markup Validation Service로 검사하는 것이 좋습니다.

HTML 문법의 세부 규칙은 WHATWG HTML 문법 표준에서 확인할 수 있습니다.

같은 카테고리의 다른 글
HTML 강좌 / HTML 문서의 기본 구조

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

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

HTML / Tutorial / 표(table)

HTML / Tutorial / 표(table)

표는 table 태그로 만듭니다. 행은 tr 태그로 만듭니다. 열의 제목이 들어가는 셀은 th 태그로 만듭니다. 내용이 들어가는 셀은 td 태그로 만듭니다. 각 열의 의미에 따라 thead, tbody, tfoot 태그로 구분 지을 수도 있습니다.

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

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

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

HTML / Tutorial / 양식에 안내 문구 추가하는 방법

HTML / Tutorial / 양식에 안내 문구 추가하는 방법

input 태그에 value를 이용해서 기본값을 만들 수 있습니다. 이 상태에서 버튼을 클릭하면 기본값이 전송됩니다. 만약 기본값이 아니라, 무엇을 입력해야 하는지 안내하는 문구를 넣고 싶다면 placeholder를 사용합니다. 화면 상에는 그 문자열이 보이지만, 버튼을 클릭했을 때 아무 값도 전송되지 않습니다.

HTML 강좌 / 제목과 문단

HTML 강좌 / 제목과 문단

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

HTML / Tutorial / 링크(link)

HTML / Tutorial / 링크(link)

HTML 링크의 href에 절대경로와 상대경로를 쓰고, 문서 내부 이동·이메일·새 탭·다운로드 링크를 만드는 방법을 예제로 설명합니다.

HTML 강좌 / 문법

HTML 강좌 / 문법

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

HTML / Tutorial / 목록

HTML / Tutorial / 목록

HTML 목록은 순서가 중요하면 ol, 중요하지 않으면 ul, 이름과 설명이 짝을 이루면 dl로 작성합니다. 세 목록의 구조와 번호 지정, 중첩 방법을 실행 가능한 예제로 살펴봅니다.

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

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

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