프로그래밍 언어/HTML,CSS,JS

'name' or 'ID' HTML 앵커 활용법

Rateye 2021. 6. 10. 12:36
728x90
반응형
질문 : '이름'또는 'ID'로 HTML 앵커를 만들어야합니까?

http://example.com/#foo "메소드로 웹 페이지의 일부를 참조하려면 다음을 사용해야합니다.

<h1><a name="foo"/>Foo Title</h1> 

또는

<h1 id="foo">Foo Title</h1> 

둘 다 작동하지만 동일합니까 아니면 의미 론적 차이가 있습니까?

답변

HTML 5 사양에 따르면 5.9.8 조각 식별자로 이동 :

HTML 문서 (및 text / html MIME 유형)의 경우 문서의 표시된 부분이 무엇인지 판별하려면 다음 처리 모델을 따라야합니다.
  1. URL을 구문 분석하고 fragid를 URL의 <fragment> 구성 요소로 둡니다.
  2. fragid가 빈 문자열이면 문서의 표시된 부분이 문서의 맨 위에 있습니다.
  3. DOM에 fragid와 정확히 동일한 ID를 가진 요소가있는 경우 트리 순서의 첫 번째 요소는 문서의 표시된 부분입니다. 여기서 알고리즘을 중지하십시오.
  4. 값 fragid 정확히 동일한 이름 속성이있는 DOM의 요소가 있다면, 트리 위해 최초의 요소는 문서의 지정된 부분이고; 여기서 알고리즘을 중지하십시오.
  5. 그렇지 않으면 문서의 표시된 부분이 없습니다.

HTML 문서 (및 text / html MIME 유형)의 경우 문서의 표시된 부분이 무엇인지 판별하려면 다음 처리 모델을 따라야합니다.

따라서 id="foo" 를 찾은 다음 name="foo"

편집 : @hsivonen이 지적했듯이 HTML5에서 a 요소에는 이름 속성이 없습니다. 그러나 위의 규칙은 다른 명명 된 요소에도 계속 적용됩니다.

출처 : https://stackoverflow.com/questions/484719/should-i-make-html-anchors-with-name-or-id
728x90
반응형