HTML 문자 엔티티가 필요한 이유는 무엇입니까? 그들은 무슨 소용입니까? 나는 그 점을 보지 못한다.HTML 문자 엔티티가 필요한 이유는 무엇입니까?
답변
두 가지 주요한 것들.
- 현재 사용중인 문자 세트에서 정의되지 않은 문자를 사용할 수 있습니다. 예를 들어 합법적으로 ASCII를 charset으로 사용할 수 있으며 여전히 임의의 유니 코드 문자를 포함 할 수 있습니다.
- Simon이 지적한대로 HTML은 특별한 의미를 부여하는 문자를 인용 할 수있게합니다.
"1 < 2
"은 내 페이지에 "1 < 2
"을 넣을 수있게합니다.
긴 대답 : HTML 이후
는 텍스트로 있음을 원하는 경우 그냥 '<
'입력 할 수 없습니다, 태그를 여는 데 사용하는 '<
'. 따라서 "내 페이지에 텍스트<
을 넣고 싶습니다."라고 말할 수있는 방법이 있어야합니다. HTML (또는 실제로 SGML, HTML의 전임자)을 디자인 한 사람은 ''(접히지 않거나 줄 바꿈을 허용하는 공백) 같은 것을 넣을 수 있도록 '&
무언가를;
'으로 사용하기로 결정했습니다. . 물론 지금은 '&
'이라고 말할 수있는 방법이 필요하므로 '&
'이 표시됩니다.
+1 :
하지만 문제없이 "
문자 엔티티는 .ex.ex.에 대한 HTML을 쓰기 위해 예약 된 문자를 나타내는 데 사용됩니다. <,>, /, & 등, 당신이 문자 엔티티를 사용한다 콘텐츠에 이러한 문자를 표현하려면 가
당신은 도움을 엔티티를 사용하는 내용과 마크 업을 구별에,이 파서 도움이 될 것입니다 구문 분석기는 문자가 HTML로 표시되어야하는지, 사용자에게 실제로 표시 할 것인지를 구분합니다. HTML은 자체에 대해 특수 문자 세트를 예약하기 때문입니다.
, 내가 >
는 "</풍자 >"태그가 사라집니다 그 </풍자처럼 의미하지 않는다 HTML
에 문자 그대로 타이핑
예 HTML과 같은 정의 된 태그가 없습니다 않는
나는 그
같은 의미하지 않는다. 이 경우 엔티티를 사용하면 텍스트가 올바르게 표시됩니다.
아니요, 정말로!& lt;/sarcasm & gt;
정말
없음 제공! </풍자
원하는대로.
이들은 &
, <
, >
, "
및 아마도
과 떨어져 있지 않습니다. 다른 모든 문자의 경우 UTF-8 만 사용하십시오.
실제로 '"'은 속성에만 필요합니다. –
SGML과 XML에서는 문자를위한 것이 아닙니다. 그것들은 일반적인 포함 메커니즘이며 특수 문자에 대한 사용은 많은 경우 중 하나 일뿐입니다. 그들은 XML 모드에서만 작동하고 브라우저 구성에서 "검증"구문 분석 모드를 사용하지 않고 외부 DTD 파일을 사용할 수 없기 때문에
<!ENTITY signature "<hr/><p>Regards, <i>&myname;</i></p>">
<!ENTITY myname "John Doe">
기관의이 종류는, 웹 사이트에 유용하지 않다.
엔티티는 재귀 적으로 확장 될 수 있습니다. 이를 통해 "Billion Laughs Attack"이라는 Serice 공격 거부에 XML을 사용할 수 있습니다. HTML에서
<!ENTITY hidemac.label "Hide &brandShortName;">
<!ENTITY hidewin.label "Hide - &brandShortName;">
그냥 필요 : 파이어 폭스 (무리와 IceWeasel의 삶을 쉽게하기 위해) 국제화와 브랜드 독립적 인 메시지 (XUL과 같은) 내부적 엔티티를 사용
<
, &
및 "
을 사용하면 텍스트와 마크 업 간의 모호성을 피할 수 있습니다.
다른 모든 엔티티는 기본적으로 유니 코드 인코딩에 의해 폐기되며 편의성 만 유지됩니다 (그러나 좋은 텍스트 편집기는이를 대체 할 수있는 매크로/스 니펫이 있어야합니다). 독립형 XML 파서와 함께 작동하지 않기 때문에
가 XHTML에서 기본적인 몇 가지를 제외한 모든 개체는 문제가있다 (예를 들어,
이 작동하지 않습니다).
모든 XHTML 엔터티를 구문 분석하려면 유효성 검사 XML 구문 분석기 (일반적으로 "resolve externals"라고하는 옵션)가 느리고 DTD 카탈로그를 설정해야합니다. DTD 카탈로그를 무시하거나 망치면 DDoS of W3C servers에 참여하게됩니다.
이 답변은 용어를 혼란스럽게합니다. 질문은 * name *, * external *, * parameter * 엔티티가 아닌 * character * 엔티티에 관한 것입니다. – kjhughes
- 1. ▼에 해당하는 html 엔티티가 있습니까?
- 2. 내 poco 엔티티가 프록시가 아닌 이유는 무엇입니까?
- 3. HTML 헤드에 메타 콘텐츠 유형 태그가 필요한 이유는 무엇입니까?
- 4. 번호 접미사가 필요한 이유는 무엇입니까?
- 5. 전달 선언이 필요한 이유는 무엇입니까?
- 6. PhotoCamera에 VideoBrush가 필요한 이유는 무엇입니까?
- 7. 거북이 SVN이 필요한 이유는 무엇입니까?
- 8. 콜백 이벤트가 필요한 이유는 무엇입니까?
- 9. 웹에 HTTP가 필요한 이유는 무엇입니까?
- 10. 여기에 UseCompatibleTextRendering이 필요한 이유는 무엇입니까?
- 11. ": nodoc :"구문이 필요한 이유는 무엇입니까?
- 12. 메일의 HTML 문자
- 13. HTML 엔티티가 손상되지 않도록 줄임표로 문자열 자름
- 14. HTML 문자 집합에없는 문자 인코딩
- 15. 문자열의 html 문자 엔티티 바꾸기
- 16. 배포 ASP.NET 웹 사이트 : 설치에 필요한 * .msi가 필요한 이유는 무엇입니까?
- 17. HTML 엔티티가 작동하지 않는 CakePHP 페이지 매김
- 18. 내 문자열 선언의 위치가 내 HTML 인코딩 엔티티가 제대로 표시되는지 여부에 영향을주는 이유는 무엇입니까?
- 19. nhibernate : 내 엔티티가 첫 번째 레벨 캐시에로드되지 않는 이유는 무엇입니까?
- 20. 이 코드에 klass가 필요한 이유는 무엇입니까?
- 21. IMPLEMENT_DYNAMIC에 빈 생성자가 필요한 이유는 무엇입니까?
- 22. .NET에서 이름 스레드가 필요한 이유는 무엇입니까?
- 23. IEhalityComparer 인터페이스에서 GetHashcode()가 필요한 이유는 무엇입니까?
- 24. 하스켈에서 '파'와 'seq'또는 'pseq'가 필요한 이유는 무엇입니까?
- 25. UdpClient.Receive에서 ref 매개 변수가 필요한 이유는 무엇입니까?
- 26. 스레드 특정 데이터가 pthread에서 필요한 이유는 무엇입니까?
- 27. DSL에 구문 분석 도구가 필요한 이유는 무엇입니까?
- 28. C 열거 상수에 이름이 필요한 이유는 무엇입니까?
- 29. mex endpoint와 httpGetEnable이 모두 필요한 이유는 무엇입니까?
- 30. TimedLock에서 SuppressFinalize (tl.leakDetector)가 필요한 이유는 무엇입니까?
3. 어떤 이유로 든 직접 입력 할 수없는 문자를 사용할 수 있습니다. 간단한 예로, 키보드에 "gräßlich"라는 단어를 입력 할 수는 없지만 "gr ä ß lich"를 입력하는 데 아무런 문제가 없습니다. 물론, 다른 곳에있는 "ä"와 "ß"라는 글자를 복사하여 붙여 넣을 수는 있지만, 편리하지는 않습니다. –
RegDwight, 저는 그것을 고의로 떠났습니다. 키보드/OS로 입력하는 방법을 배우는 것이 좋으며, 필요하다면 복사하는 것이 좋습니다.불필요하게/엔티티가 가득 찬 페이지는 읽기가 어렵습니다. –