문제

HTML 문자 엔티티가 필요한 이유는 무엇입니까? 그들은 무엇이 좋은가요? 요점이 보이지 않습니다.

도움이 되었습니까?

해결책

두 가지 주요 사항.

  1. 그들은 현재 숯으로 정의되지 않은 문자를 사용할 수 있습니다. 예를 들어, 법적으로 ASCII를 숯으로 사용할 수 있으며 여전히 임의의 유니 코드 문자 Thorugh 엔티티를 포함 할 수 있습니다.
  2. 그들은 Simon이 지적했듯이 HTML이 특별한 의미를 부여하는 캐릭터를 인용하게합니다.

다른 팁

"1 &lt; 2"당신이 넣을 수 있습니다"1 < 2"당신의 페이지에서.

긴 답변 :

HTML이 사용하기 때문에<'태그를 열려면 입력 할 수 없습니다'<'당신이 그것을 텍스트로 원한다면. 그러므로 당신은 "나는"나는 " 텍스트 < 내 페이지에서 ".&무엇;', 당신은 또한 비 분해 공간과 같은 것들을 넣을 수도 있습니다.'&nbsp;'(붕괴되지 않거나 라인이 파손되지 않는 공간). 물론, 이제 당신은 말할 방법이 필요합니다.&', 당신은 얻는다'&amp;'...

그들은 제외하고는 아닙니다 &amp;, &lt;, &gt;, &quot; 그리고 아마도 &nbsp;. 다른 모든 문자의 경우 UTF-8을 사용하십시오.

SGML 및 XML에서는 문자만을위한 것이 아닙니다. 그것들은 일반적인 포함 메커니즘이며, 특수 문자에 대한 사용은 많은 경우 중 하나 일뿐입니다.

<!ENTITY signature "<hr/><p>Regards, <i>&myname;</i></p>">
<!ENTITY myname "John Doe">

이러한 종류의 엔티티는 웹 사이트에 유용하지 않습니다. XML 모드에서만 작동하기 때문에 브라우저 구성에서 "파싱 모드"를 활성화하지 않으면 외부 DTD 파일을 사용할 수 없습니다.


엔티티는 재귀 적으로 확장 될 수 있습니다. 이를 통해 "Billion Loughs Attack"이라는 Serice 공격 거부에 XML을 사용할 수 있습니다.


Firefox는 국제화 및 브랜드 독립적 메시지를 위해 내부적으로 (XUL 및 그와 같은) 엔티티를 사용합니다 (무리와 빙상의 삶을 더 쉽게하기 위해) :

<!ENTITY hidemac.label "Hide &brandShortName;">
<!ENTITY hidewin.label "Hide - &brandShortName;">

HTML에서는 그냥 필요합니다 &lt;, &amp; 그리고 &quot; 텍스트와 마크 업 사이의 모호성을 피하기 위해.

다른 모든 엔티티는 기본적으로 유니 코드 인코딩에 의해 쓸모 없게되며 화상으로 만 유지됩니다 (그러나 좋은 텍스트 편집기에는 대체 할 수있는 매크로/스 니펫이 있어야합니다).


XHTML에서 기본 소수를 제외한 모든 엔티티는 독립형 XML 파서와 함께 작동하지 않기 때문에 문제가 있습니다 (예 : &nbsp; 작동하지 않습니다).

필요한 모든 XHTML 엔티티를 구문 분석하려면 검증 XML Parser (옵션은 일반적으로 "externals"라고 불림)가 느리고 DTD 카탈로그 설정이 필요합니다. DTD 카탈로그를 무시하거나 망치면 W3C 서버의 DDOS.

캐릭터 엔티티는 html for.ex를 작성하기 위해 예약 된 문자를 나타내는 데 사용됩니다. <,>, /, & etc, 컨텐츠에서 이러한 문자를 대표하려면 캐릭터 엔티티를 사용해야합니다. 이것은 파서에게 도움이됩니다. 내용과 마크 업을 구별합니다

HTML은 특수 문자 세트를 자체적으로 예약하기 때문에 캐릭터가 문자를 HTML로 표시 해야하는 시점과 사용자에게 실제로 보여주고 싶은 내용을 구별하는 데 도움이되는 엔티티를 사용합니다.

문자 그대로 HTML에서 입력합니다

나는 그렇게 의미하지 않습니다u003C/sarcasm>

"u003C/sarcasm> "사라지는 태그,

예를 들어

나는 그렇게 의미하지 않습니다

HTML에는 그로 정의 된 태그가 없습니다. 이 경우 엔티티를 사용하면 텍스트가 올바르게 표시 될 수 있습니다.

예를 들어

아니, 정말! </sarcasm>

주어진

아니, 정말!u003C/sarcasm>

바라는대로.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top