HTML 엔티티 인코더 / 디코더
HTML에서 안전하게 사용하도록 텍스트를 이스케이프하고, 특수 문자를 숫자 엔티티로 변환하거나, 엔티티를 일반 텍스트로 디코딩하세요.
자주 쓰는 HTML 엔티티
| 문자 | 엔티티 | 숫자 형식 | 설명 |
|---|---|---|---|
| & | & | & | 앰퍼샌드 |
| < | < | < | 보다 작음 기호 |
| > | > | > | 보다 큼 기호 |
| " | " | " | 큰따옴표 |
| ' | ' | ' | 아포스트로피 (작은따옴표) |
| ⍽ | |   | 줄 바꿈 없는 공백 |
| © | © | © | 저작권 기호 |
| ® | ® | ® | 등록 상표 기호 |
| ™ | ™ | ™ | 상표 기호 |
| € | € | € | 유로 기호 |
| £ | £ | £ | 파운드 기호 |
| ¥ | ¥ | ¥ | 엔 기호 |
| ¢ | ¢ | ¢ | 센트 기호 |
| § | § | § | 섹션 기호 |
| ° | ° | ° | 도 기호 |
| ± | ± | ± | 플러스마이너스 기호 |
| × | × | × | 곱하기 기호 |
| ÷ | ÷ | ÷ | 나누기 기호 |
| … | … | … | 말줄임표 |
| – | – | – | 엔 대시 |
| — | — | — | 엠 대시 |
| « | « | « | 왼쪽 겹화살괄호 따옴표 |
| » | » | » | 오른쪽 겹화살괄호 따옴표 |
| · | · | · | 가운뎃점 |
HTML 엔티티 인코더 / 디코더 소개
HTML은 일부 문자를 자체 문법에 사용하므로, 앰퍼샌드, 부등호(보다 작음, 보다 큼), 따옴표가 텍스트로 나타날 때는 &, <, " 같은 엔티티로 작성해야 합니다. 이를 이스케이프하는 것은 사용자 입력을 페이지에 표시할 때 크로스 사이트 스크립팅(XSS)에 대한 첫 번째 방어이기도 합니다. “특수 문자”를 선택하면 이 다섯 문자만 이스케이프하고, “모든 비ASCII”를 선택하면 악센트 문자, 기호, 이모지까지 é 같은 숫자 엔티티로 변환합니다. 이는 오래된 시스템, 이메일 템플릿, 인코딩을 알 수 없는 파일에 유용합니다. 디코딩 모드는 그 반대로, 이름, 10진수, 16진수 엔티티를 브라우저와 똑같이 읽을 수 있는 문자로 되돌립니다. 참조 표에는 가장 자주 필요한 엔티티가 정리되어 있습니다. 모든 처리는 브라우저에서 이루어집니다.
FAQ
'와 '의 차이는 무엇인가요?
둘 다 아포스트로피를 의미합니다. '는 HTML5와 XML에서는 정의되어 있지만 구형 HTML 4에는 없으므로, 숫자 형식인 '가 가장 안전하며 어디서나 작동합니다.
HTML 이스케이프만으로 XSS를 막을 수 있나요?
다섯 가지 특수 문자를 이스케이프하면 태그 사이의 텍스트와 따옴표로 묶인 속성 값은 보호됩니다. URL, JavaScript, CSS 컨텍스트는 각각 별도의 인코딩이 필요하므로, 기본적으로 이스케이프하는 템플릿 엔진과 콘텐츠 보안 정책(CSP)도 함께 사용하세요.
이름 엔티티와 숫자 엔티티 중 무엇을 사용해야 하나요?
숫자 엔티티는 모든 유니코드 문자와 모든 파서에서 작동합니다. 이름 엔티티는 읽기 쉽지만 일부 문자에만 존재합니다. UTF-8 페이지에서는 보통 특수 문자만 이스케이프하면 됩니다.