이 글에서는 코딩 실력을 향상시킬 수 있는 코드 스니펫(Code Snipet)이 포함된 21가지 HTML 팁을 공유하겠습니다.
연락처 링크 만들기
HTML을 사용하여 클릭 가능한 이메일, 전화 및 SMS 링크를 만듭니다.
1 | <!-- Email link --> |
접을 수 있는 콘텐츠 만들기
웹 페이지에 접을 수 있는 콘텐츠를 포함하려는 경우 <details> 및 <summary> 태그를 사용할 수 있습니다.
<details> 태그는 숨겨진 콘텐츠를 위한 컨테이너를 생성하고, <summary> 태그는 클릭 가능한 레이블을 제공하여 해당 콘텐츠의 표시 여부를 전환할 수 있습니다.
1 | <details> |
시맨틱 요소 활용하기
웹사이트에 non-semantic 요소보다 시맨틱(semantic) 요소를 선택하세요. 시맨틱 요소는 코드를 의미 있게 만들고 구조, 접근성 및 SEO를 개선합니다.

Form 요소 그룹화
<fieldset> 태그를 사용하여 Form의 관련 요소를 그룹화하고 <legend> 태그를 <fieldset>와 함께 사용하여 <fieldset> 태그의 제목을 정의할 수 있습니다.
이는 보다 효율적이고 접근하기 쉬운 Form을 만드는 데 유용합니다.
1 | <form> |
Dropdown 메뉴 개선
<optgroup> 태그를 사용하여 <select> HTML 태그에서 관련 옵션을 그룹화할 수 있습니다. 큰 드롭다운 메뉴나 긴 옵션 목록으로 작업할 때 이 태그를 사용할 수 있습니다.
1 | <select> |
동영상 프레젠테이션 개선하기
<video> 태그의 poster 속성을 사용하여 사용자가 비디오를 재생할 때까지 이미지를 표시할 수 있습니다.
1 | <video controls poster="image.png" width="500"> |
다중 선택 지원
<input> 및 <select> 요소와 함께 multiple 속성을 사용하여 사용자가 한 번에 여러 값을 선택/입력할 수 있도록 할 수 있습니다.
1 | <input type="file" multiple /> |
텍스트를 아래 첨자 및 위 첨자로 표시하기
<sub> 및 <sup> 요소를 사용하여 텍스트를 각각 아래 첨자와 위 첨자로 표시할 수 있습니다.

다운로드 링크 만들기
<a> 요소와 함께 download 속성을 사용하여 사용자가 링크를 클릭할 때 링크된 리소스를 탐색하는 대신 다운로드하도록 지정할 수 있습니다.
1 | <a href="document.pdf" download="document.pdf"> Download PDF </a> |
상대 링크에 대한 기본 URL 정의하기
<base> 태그를 사용하여 웹 페이지의 모든 상대 URL에 대한 기준 URL을 정의할 수 있습니다.
이 태그는 웹 페이지의 모든 상대 URL에 대한 공유 시작점을 만들어 리소스를 쉽게 탐색하고 로드할 수 있도록 하려는 경우에 유용합니다.
1 | <head> |
이미지 로딩 제어
<img> 요소가 포함된 loading 속성을 사용하여 브라우저에서 이미지를 로드하는 방법을 제어할 수 있습니다. 세 가지 값이 있습니다: “eager”, “lazy”, "auto"의 세 가지 값이 있습니다.
1 | <img src="picture.jpg" loading="lazy" /> |
번역 기능 관리
translate 속성을 사용하여 요소의 콘텐츠를 브라우저의 번역 기능으로 번역할지 여부를 지정할 수 있습니다.
1 | <p translate="no">This text should not be translated.</p> |
최대 입력 길이 설정하기
maxlength 속성을 사용하여 사용자가 입력 필드에 입력할 수 있는 최대 글자 수를 설정할 수 있습니다.
1 | <input type="text" maxlength="4" /> |
최소 입력 길이 설정하기
minlength 속성을 사용하여 사용자가 입력 필드에 입력하는 최소 글자 수를 설정할 수 있습니다.
1 | <input type="text" minlength="3" /> |
콘텐츠 편집 활성화
contenteditable 속성을 사용하여 요소의 콘텐츠를 편집할 수 있는지 여부를 지정합니다. 이를 통해 사용자는 요소 내의 콘텐츠를 수정할 수 있습니다.
1 | <div contenteditable="true">You can edit this content.</div> |
맞춤법 검사 제어
<input>, <textarea>, 콘텐츠 편집 가능 요소와 함께 spellcheck 속성을 사용하여 브라우저에서 맞춤법 검사를 활성화 또는 비활성화할 수 있습니다.
1 | <input type="text" spellcheck="true" /> |
접근성 보장하기
alt 속성은 이미지를 표시할 수 없는 경우 이미지의 대체 텍스트를 지정합니다. 접근성과 SEO를 개선하려면 항상 이미지에 설명이 포함된 alt 속성을 포함하세요.
1 | <img src="picture.jpg" alt="Description for the image" /> |
Link에 대한 타깃 동작 정의하기
target 속성을 사용하여 링크된 리소스를 클릭할 때 표시할 위치를 지정할 수 있습니다.
1 | <!-- 같은 프레임에서 열림 --> |
추가 정보 제공
title 속성은 사용자가 요소 위로 마우스를 가져갈 때 요소에 대한 추가 정보를 제공하는 데 사용할 수 있습니다.
1 | <p title="World Health Organization">WHO</p> |
특정 파일 형식 허용
서버에서 수용할 파일 유형을 지정하기 위해 accept 속성을 사용할 수 있습니다(파일 유형에만 해당). 이는 <input> 요소와 함께 사용됩니다.
1 | <input type="file" accept="image/png, image/jpeg" /> |
동영상 로딩 최적화
<video> 요소와 함께 preload 속성을 사용하면 비디오 파일을 더 빠르게 로드하여 더 원활하게 재생할 수 있습니다.
1 | <video src="video.mp4" preload="auto"> |