AD JB Toolbox 01

HTML 강좌 / HTML 오류 찾기와 문서 검사하기

HTML 문서 검사는 태그를 잘못 닫았거나 속성을 틀리게 쓴 것처럼 브라우저가 화면에 표시해 주지 않는 문제를 찾는 데 도움이 됩니다. 검사 결과를 고친 뒤에는 실제 브라우저에서도 내용과 조작이 예상대로 작동하는지 다시 확인해야 합니다.

검사 전에 파일과 화면 확인하기

먼저 HTML 파일을 저장하고 브라우저에서 열어 보세요. 제목, 문단, 링크, 이미지와 양식이 빠짐없이 보이는지 확인합니다. 화면이 보인다는 사실만으로 HTML이 올바르다는 뜻은 아닙니다. 브라우저가 잘못된 구조를 복구해서 보여 줄 수도 있기 때문입니다.

Nu HTML Checker로 문서 검사하기

Nu HTML Checker에서 공개 URL, 업로드한 파일 또는 직접 붙여 넣은 HTML을 검사할 수 있습니다. 아직 공개하지 않은 글이나 로컬 파일은 파일 업로드 또는 직접 입력 방식을 사용하세요. 비밀번호나 개인 정보가 들어 있는 원본 파일을 외부 검사 서비스에 올리지 않도록 주의합니다.

  1. 검사할 HTML 파일의 최신 내용을 저장합니다.
  2. 검사 서비스에서 파일 업로드나 직접 입력 방식을 선택하고 검사합니다.
  3. 오류의 위치와 메시지를 읽고 해당 줄뿐 아니라 앞뒤의 시작·종료 태그도 확인합니다.
  4. 파일을 고친 뒤 다시 검사하여 새 오류가 생기지 않았는지 확인합니다.

예를 들어 같은 id를 여러 곳에 사용하거나 열지 않은 요소의 종료 태그를 적으면 구조와 연결 관계가 어긋날 수 있습니다. 오류가 많이 나오면 위쪽의 첫 오류부터 고쳐 보세요. 하나의 잘못된 태그가 뒤따르는 여러 메시지를 만들기도 합니다. li처럼 종료 태그를 생략할 수 있는 요소도 있으므로, 태그가 짧아 보인다는 이유만으로 오류라고 단정하지는 마세요.

다음처럼 두 입력칸에 같은 id를 주면 두 번째 레이블이 어느 필드와 연결되는지 불분명해집니다.

<label for="email">이메일</label>
<input id="email" name="email" type="email">
<label for="email">확인용 이메일</label>
<input id="email" name="email_check" type="email">

두 번째 필드의 id를 email-check로 바꾸고 두 번째 레이블의 for도 같은 값으로 수정하세요. 그런 다음 검사 도구로 중복 ID 오류가 사라졌는지 확인하고, 브라우저에서 각 레이블을 눌러 서로 다른 입력칸에 초점이 가는지 시험합니다.

검사 메시지에는 오류가 발견된 줄과 실제 원인이 있는 줄이 다를 수 있습니다. 예를 들어 닫지 않은 따옴표는 다음 태그에서 문제로 나타날 수 있으므로 표시된 위치의 앞부분도 살펴보세요. 오류를 고친 뒤 파일을 저장하고 같은 파일을 다시 업로드해야 이전 버전을 반복해서 검사하는 실수를 피할 수 있습니다.

검사 결과만으로 충분하지 않은 이유

문법 검사는 링크가 독자에게 적절한 페이지로 연결되는지, alt가 이미지의 정보를 제대로 전달하는지, 양식 제출 후 서버가 올바르게 처리하는지까지 보장하지 않습니다. 검사 후에는 링크를 직접 열고, 키보드로 이동하고, 모바일 너비에서도 읽을 수 있는지 확인하세요.

외부 이미지나 동영상이 보이지 않으면 HTML 구문뿐 아니라 파일 경로, 서버 응답, 재생 형식도 확인해야 합니다. 검사 도구는 문제를 찾는 출발점이지 게시 전 최종 판단을 대신하지 않습니다.

검사 대상도 구별해야 합니다. 파일 업로드는 업로드한 HTML 문서 자체를, URL 검사는 서버가 실제로 제공하는 결과를 검사합니다. 워드프레스처럼 테마가 본문을 감싸는 사이트에서는 원고 조각만 검사한 결과와 공개 페이지 전체를 검사한 결과가 다를 수 있습니다. 원고를 검토할 때는 수정할 수 있는 범위를 파악하고, 테마·플러그인에서 생긴 문제를 본문 코드의 오류와 혼동하지 마세요.

같은 카테고리의 다른 글
HTML 강좌 / 양식에 안내 문구 추가하기

HTML 강좌 / 양식에 안내 문구 추가하기

HTML 양식에서 label, placeholder, value의 역할을 구분하고 안내 문구를 넣는 방법을 설명합니다. input·textarea 예제와 필수 입력 검사, 빈 값의 제출 동작을 함께 확인할 수 있습니다.

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

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

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

HTML 강좌 / 문법

HTML 강좌 / 문법

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

HTML 강좌 / 입력값 검증: required, 길이·범위 제한, 오류 안내

HTML 강좌 / 입력값 검증: required, 길이·범위 제한, 오류 안내

required, minlength, min, max 등의 기본 입력 제약을 설정하고 오류를 안내·시험하는 방법과 서버 검증의 필요성을 설명합니다.

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

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

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

HTML 강좌 / div와 span은 언제 사용할까?

HTML 강좌 / div와 span은 언제 사용할까?

div와 span의 차이와 사용 기준을 설명하고, 의미 요소가 없는 경우에만 묶음 요소를 쓰는 예제를 보여 줍니다.

HTML 강좌 / 목록 - ol, ul, dl, 중첩 목록

HTML 강좌 / 목록 - ol, ul, dl, 중첩 목록

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

HTML 강좌 / figure와 figcaption으로 그림과 설명 묶기

HTML 강좌 / figure와 figcaption으로 그림과 설명 묶기

figure와 figcaption으로 이미지와 설명을 묶고, alt와 캡션의 역할을 구분하는 방법을 예제로 설명합니다.

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

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

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

HTML 강좌 / textarea, select, option, button 사용하기

HTML 강좌 / textarea, select, option, button 사용하기

여러 줄 입력, 선택 목록, 양식 버튼을 만드는 요소의 역할과 값이 제출되는 방식을 예제로 설명합니다.