DOM ID에는 어떤 문자가 허용됩니까? [복제]
중복 가능성 :
HTML의 id 속성에 유효한 값은 무엇입니까?
밑줄은 괜찮아 보입니다. 대시는 어떻습니까? 다른 특수 문자?
실제로 HTML과 XHTML에는 차이가 있습니다. XHTML은 XML이므로 XML ID에 대한 규칙이 적용됩니다.
유형 ID의 값은 이름 생산과 일치해야합니다.
NameStartChar ::= ":" | [A-Z] | "_" | [a-z] | [#xC0-#xD6] | [#xD8-#xF6] | [#xF8-#x2FF] | [#x370-#x37D] | [#x37F-#x1FFF] | [#x200C-#x200D] | [#x2070-#x218F] | [#x2C00-#x2FEF] | [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] | [#x10000-#xEFFFF] NameChar ::= NameStartChar | "-" | "." | [0-9] | #xB7 | [#x0300-#x036F] | [#x203F-#x2040]
출처 : XML (Extensible Markup Language) 1.0 (제 5 판) 2.3
HTML의 경우 다음이 적용됩니다.
id = name [CS]
이 속성은 요소에 이름을 할당합니다. 이 이름은 문서에서 고유해야합니다.ID 및 NAME 토큰은 문자 ([A-Za-z])로 시작해야하며 그 뒤에 문자, 숫자 ([0-9]), 하이픈 ( "-"), 밑줄 ( "_")이 올 수 있습니다. , 콜론 ( ":") 및 마침표 ( ".").
W3C 사양 기본 HTML 데이터 유형 은 "ID 및 NAME 토큰은 문자 ([A-Za-z])로 시작해야하며 그 뒤에 임의의 수의 문자, 숫자 ([0-9]), 하이픈 ("-)이 올 수 있습니다. "), 밑줄 (" _
"), 콜론 (": ") 및 마침표 (". ")."
질문의 제목을 문자 그대로 받아들이면 HTML이나 XHTML 규칙이 적용되지 않습니다. 대신 관련 사양은 DOM 사양입니다.
DOM 레벨 3을 소스로 사용하고 "DOM ID"가 "ID"플래그가 설정된 속성을 의미한다고 가정하면 값은 "DOMString"이며 문자는 UTF-16 인코딩 가능 문자 일 수 있습니다.
16 비트 단위
DOMString의 기본 단위입니다. 이는 DOMString에 대한 인덱싱이 16 비트 단위로 발생 함을 나타냅니다. 이것은 DOMString이 임의의 16 비트 단위를 저장할 수 있다는 의미로 오해해서는 안됩니다. DOMString은 UTF-16으로 인코딩 된 문자열입니다. 이는 UTF-16의 제한과 문자열에 대한 기타 관련 제한이 유지되어야 함을 의미합니다. 예를 들어 숫자 문자 참조 형식의 단일 문자는 하나 또는 두 개의 16 비트 단위에 해당 할 수 있습니다.
물론 이것은 아마도 당신이 원하는 것이 아니며 Ludwig Weinzierl의 대답은 당신이 찾고 있던 것입니다. 그러나 모든 DOM이 HTML 또는 XHTML로 직렬화 될 수있는 것은 아니며 DOM에 자체 규칙 집합이 있다는 것을 이해하는 것이 좋습니다.
HTML 4.0 사양에 따르면
ID 및 NAME 토큰은 문자 ([A-Za-z])로 시작해야하며 그 뒤에 문자, 숫자 ([0-9]), 하이픈 ( "-"), 밑줄 ( "_")이 올 수 있습니다. , 콜론 ( ":") 및 마침표 ( ".").
유효한 html 일명 xhtml을 위해 Philippe이 정확합니다. id 속성에 공백이나 특수 문자 (확실히 이스케이프가 필요하지 않음)가 없습니다. 52 자 알파벳, 대문자 및 소문자, 숫자 0-9, 하이픈 ( "-"), 밑줄 ( "_"), 콜론 ( ":") 및 마침표 ( ".")
참고 URL : https://stackoverflow.com/questions/1077084/what-characters-are-allowed-in-dom-ids
'programing tip' 카테고리의 다른 글
초기 데이터의 순서를 유지하도록 생성자를 사용하여 OrderedDict를 초기화하는 올바른 방법은 무엇입니까? (0) | 2020.08.08 |
---|---|
Python super ()는 TypeError를 발생시킵니다. (0) | 2020.08.08 |
Moq : 재정의 할 수없는 구성원에 대한 잘못된 설정 : x => x.GetByTitle ( "asdf") (0) | 2020.08.08 |
Go 빌드 :“패키지를 찾을 수 없음”(GOPATH가 설정되어 있어도) (0) | 2020.08.08 |
추상 클래스의 모든 상속 된 클래스 가져 오기 (0) | 2020.08.07 |