가능한 복제를 시작하면 무엇 :
Why can't I have a numeric value as the ID of an element?요소의 ID가 숫자로
요소의 ID가 문자로 시작해야합니다 ([A-Za-z]와). 하지만 만약 내가 뭔가를 할
<td id='9'></td>
자바 스크립트는 이러한 요소를 찾을 수 있습니다. 그래서 나는 숫자로 시작할 수없는 이유를 모르겠다.
가능한 복제를 시작하면 무엇 :
Why can't I have a numeric value as the ID of an element?요소의 ID가 숫자로
요소의 ID가 문자로 시작해야합니다 ([A-Za-z]와). 하지만 만약 내가 뭔가를 할
<td id='9'></td>
자바 스크립트는 이러한 요소를 찾을 수 있습니다. 그래서 나는 숫자로 시작할 수없는 이유를 모르겠다.
표준은 ID가 문자로 시작해야한다고 지정한다. 브라우저 (또는 자바 스크립트 엔진)가 해당 요구 사항을 무시하도록 선택하면 바로 그 방법입니다. 브라우저가 정말 그렇게 용서하는 ...
자바 스크립트가 포함 된 C 스타일 프로그래밍 언어가 변수 이름을 사용할 수 없다는 점에 유의할 가치가 있다고 생각합니다. 이는 파서/컴파일러/인터프리터에 혼란을주기 때문에 숫자로 시작합니다. –
HTML 4는
ID와 이름 토큰은 문자로 시작해야합니다 ([A-Za-z]와) 어떤 수에 따라 수 있음을 참으로 정규화 (0-9), 하이픈 ("-"), 밑줄 ("_"), 콜론 (":") 및 마침표 (".")로 구성됩니다.
여전히 공식 하나가 아닌 경우에도, 브라우저가 much more permissive HTML5 norm 적용 오랜 시간이있다 :
모든 문자열은 다음과 같은 제한 사항 :
- 는 적어도 하나 개의 문자 여야합니다 긴 문자
- 에는 공백 문자가 포함되어서는 안됩니다.
HTML4 표준을 준수하지 않는 경우 구형 브라우저에 문제가있을 수 있으므로주의하십시오. 대부분의 언어로 된 프로그래머는 "평범한 아이디"에 익숙합니다. HTML4에서와 비슷합니다. "비정상적인"ID를 사용함으로써, 당신은 그들을 처리 할 수없는 라이브러리를 만날 위험이 크지 않습니다.
사양을 벗어난 경우 작업중인 사양보다 더 엄격하게 사양을 따르기로 결정한 브라우저에서 코드가 작동하지 않을 위험이 있습니다.
숫자가 고정 된 문자열로 시작하고 '숫자'ID의 의미를 유지하면 이러한 문제를 피할 수 있으므로 불필요한 위험이있는 것처럼 보일 수 있습니다.
숫자를 포함 할 수는 있지만 식별자로 시작할 수없는 식별자는 일반적인 규칙입니다 (TSQL 및 C# AFAIK와 동일). 그럴만한 이유가 있는지 확실하지 않습니다. –
클래스 식별자는 숫자로 시작할 수 있지만 ID 식별자는 사용할 수 없습니다. 그게 전부입니다. [CSS 트릭] (http://css-tricks.com/ids-cannot-start-with-a-number/). – sp00m
id = "item_1"과 같은 접두어를 붙이면 괜찮습니다. 예를 들어 자바 스크립트로 모든 ID를 나눌 수 있습니다 ... –