nicetool.dev logo

HTML 엔티티 인코더 / 디코더

HTML에 삽입하기 전에 텍스트를 이스케이프해 마크업 깨짐과 XSS를 방지하세요.

입력
결과

자주 쓰는 엔티티

엔티티를 클릭하면 복사됩니다.

HTML 엔티티란?

HTML 엔티티는 예약 문자나 특수 문자를 나타내는 코드로, 예를 들어 <는 &lt;, &는 &amp;로 씁니다. 사용자 입력을 HTML로 렌더링하기 전에 인코딩하면 마크업이 올바르게 유지되고 크로스 사이트 스크립팅(XSS)을 예방할 수 있습니다.

기능

  • • 예약 문자만 또는 모든 비ASCII 문자 인코딩
  • • 이름, 10진수, 16진수 엔티티 형식
  • • 모든 HTML5 이름 및 숫자 엔티티 디코딩
  • • 자주 쓰는 엔티티 빠른 참조

로컬 처리

인코딩과 디코딩은 브라우저에서 이루어집니다. 콘텐츠는 서버로 전송되지 않습니다.

100% 클라이언트 측.

HTML 엔티티 사용 방법

  1. 1

    특수 문자를 HTML 엔티티로 바꾸려면 Encode, &lt;나 &#169; 같은 엔티티를 문자로 되돌리려면 Decode를 고르세요.

  2. 2

    인코딩할 때는 모드를 고르세요. Basic은 & < > " '만 이스케이프하고, Named는 &eacute; 같은 이름 엔티티를, Decimal과 Hex는 ASCII가 아닌 모든 문자를 숫자 참조로 바꿉니다.

  3. 3

    텍스트나 HTML을 붙여넣으면 결과가 바로 갱신됩니다.

  4. 4

    결과를 복사하거나 "결과를 입력으로 사용"으로 이어서 처리하세요. 참조 표의 항목을 클릭하면 자주 쓰는 엔티티를 복사할 수 있습니다.

활용 예시

웹페이지에 코드 표시

블로그나 문서에서 <div class="box">를 글자로 보여주려면 &lt;div class=&quot;box&quot;&gt;로 인코딩해 브라우저가 태그로 해석하지 않게 하세요.

안전한 사용자 콘텐츠

사용자가 입력한 텍스트를 HTML에 넣기 전에 이스케이프하면 레이아웃 깨짐과 XSS 공격을 막을 수 있습니다. Basic 모드가 중요한 다섯 문자를 처리합니다.

이중 인코딩 수정

페이지나 RSS에 &amp;amp;나 &amp;quot;가 보인다면 한두 번 디코딩해 어디서 과하게 이스케이프됐는지 찾으세요.

ASCII 전용 시스템

일부 이메일 템플릿, 오래된 CMS, XML 피드는 ASCII만 받습니다. Decimal이나 Hex 모드는 é나 한글을 &#233; 같은 참조로 바꿔 어떤 인코딩에서도 깨지지 않게 합니다.

자주 묻는 질문

HTML에서 반드시 이스케이프해야 하는 문자는?+

텍스트 내용에서는 &와 <입니다. 속성 값 안에서는 값을 감싼 따옴표(" 또는 ')도 이스케이프하세요. >까지 이스케이프하는 것은 흔하고 무해한 습관입니다.

이름 엔티티와 숫자 엔티티 중 무엇을 쓰나요?+

둘 다 똑같이 표시됩니다. &copy; 같은 이름 엔티티는 읽기 쉽고, &#169; 같은 숫자 엔티티는 이름이 없는 문자를 포함한 모든 유니코드 문자에 쓸 수 있습니다.

HTML 이스케이프만으로 XSS를 막을 수 있나요?+

태그 사이나 따옴표로 감싼 속성 안의 텍스트에는 올바른 방어입니다. <script>, style, 이벤트 핸들러, URL 안의 텍스트는 문맥별 이스케이프가 따로 필요하며 최신 프레임워크가 이를 처리해 줍니다.

악센트 문자나 한글에 엔티티가 필요한가요?+

페이지가 UTF-8로 제공되면 필요 없으며 오늘날에는 이것이 기본입니다. ASCII로 제한된 시스템에서만 필요합니다.