2009-03-21 2 views
10

를 사용하여 IE에서 유니 코드 문자를 표시하는 방법 :이 코드 사용하여 내 페이지 하단의 저작권과 무한대 표시를 보여주기 위해 노력하고 HTML

&#x00A9 Copyright Mikle 2009 - &#x221E 

이 파이어 폭스 2, 3, 크롬에서 완벽하게 작동을 . 대신 내가 기대의 (위 참조 같은) 다른 브라우저 쇼 IE7하지만, 나에게 실제 코드를 보여주고있다 :

© Copyright Mikle 2009 - ∞ 

이 아마 바보 같은 일이지만 이것은 IE가 점점 왜 나를 이해하고있다 너무 싫어. 이 문제를 어떻게 해결할 수 있습니까?

답변

21

엔티티는 세미콜론이 필요합니다

© 

파이어 폭스는이 경우 오버 도움이 잘못되고 있습니다.

+0

일반적인 어구가 아니기 때문에 어리석은 요구 사항처럼 보입니다 ("안녕, 내 친구 & # x00fe!"), 왜 그것을 찾아야합니까; 불필요한 복잡성처럼 보입니다. – Mikle

+2

이것은 HTML 권장 사항의 일부이며 HTML 권장 사항은 가정에 비해 완성도 (간단한 파서로 이어짐)를 선호합니다. 아이러니 한 점은 IE가 잘못되었다고 생각한 것입니다. 사실 IE가 엄격하게 "표준"을 고수하고있을 때였습니다. ;-) – Rahul

+3

나는 이것이 다소 아이러니하다는 것에 동의한다. 나는 브라우저의 호환성에 대해 많이 읽었고, IE가 얼마나 짜증나고 전체적인 엄격한 VS 구문 분석 문제가 있었는지, 그리고 첫 번째 웹 프로젝트로 3 시간도 남지 않았다. (나는 주로 데스크톱 프로그래밍을했다.) 나는 그걸로 조금씩 얻는다 ... – Mikle

6
  1. 10 진수 값을 사용하십시오.
  2. 항상 엔티티를 종료하십시오. (선택 사항 인) 상황에서도 세미콜론 (세미콜론)을 사용합니다.
  3. 가능하면 명명 된 엔티티를 사용하십시오. 귀하의 예를 엔티티, © © 및 ∞

다른 접근 방식 ∞를 작성 실체 잊어하고, 그냥 일반 UTF-8 문자를 넣어해야합니다.

+0

이 코드는 작동하지만 16 진수는 유니 코드의 일부이므로 두 번째 방법을 사용하겠습니다. – Mikle

+0

자세히 설명해 주시겠습니까? – vartec

+0

HTML 텍스트를 7 ​​비트 ASCII로 제한하면 인생이 훨씬 쉬워집니다. 8 비트 인코딩을 사용하는 경우 해당 인코딩을 식별하기 위해 웹 서버가 올바른 응답 매개 변수를 삽입해야합니다. 누군가가 어딘가에서 망쳐 버릴 가능성이 있습니다. – kdgregory

2

"©"을 사용할 수 없습니까?

This page에는 일반적인 기호에 대한 HTML 코드 목록이 있습니다.

+0

@Jimmy 코드로 리터럴 HTML을 삽입 할 수있다. – vartec