2011-02-23 4 views
0

나는 웹 킹 (WebKing)이라는 소프트웨어를 사용하여 페이지를 만들고 그것에 대한 점검을했고 중복 앵커가 있다고 알려주고있다.중복 앵커 XHTML을 피하는 방법은 무엇입니까?

<ul > 
      <li><a href="#toc1" title="About The Code">About The Code</a></li> 
      <li><a href="#toc2" title="Blah Blah Test">Link 2 is boring</a></li> 
      <li><a href="#toc3" title="3rd link test">3rd line in</a></li> 
      <li><a href="#toc4" title="Contact Manny">Contact Manny</a></li> 

      <h3><a name="toc1" id="toc1">About the code</a></h3> 
      <h3><a name="toc2" id="toc2">Link 2 test</a></h3> 
      <h3><a name="toc3" id="toc3">3rd test</a></h3> 
      <h3><a name="toc4" id="toc4">Contact Manny</a></h3> 
</ul> 

그래서 내가 뭘 잘못하고 있니? 이드를 다른 것으로 바꿀까요?

답변

0

name과 id 속성은 동일한 네임 스페이스를 공유하므로 서로 다를 필요가 있습니다.

http://www.w3.org/TR/html401/struct/links.html#h-12.2.3

당신은 유효한 XHTML이 이름 태그를 사용하지 않으려 작성하는 경우.

http://www.w3.org/TR/xhtml1/

4.10 절. 'id'와 'name'속성을 가진 요소들 XHTML 1.0에서 이러한 요소의 이름 속성은 공식적으로 사용되지 않으며 XHTML의 후속 버전에서 삭제된다는 점에 유의하십시오.

또한 li의 내부에 있지 않지만 ul 내부에있는 일부 h3을 가지고 있습니다.

+0

정말 ID가 필요한가요? @Loktar – Manny

+0

죄송합니다 .. 그냥 기사를 .. 내 잘못 .. 많은 감사합니다 @ Loktar – Manny

+0

당신은 ID 또는 작동 앵커 이름이 필요하지 않습니다. href 속성 만 있으면됩니다. – Loktar

1

이것은 사용중인 분석 소프트웨어의 잘못된 경험 일뿐입니다. 이 코드에는 기술적으로 잘못된 것이 없습니다.

  <h3 id="toc1">About the code</h3> 

... 그리고 나는이 또한 상기 나쁜 발견을 유발하지 않도록 할 생각 : (즉 넷스케이프 사에 영합하지 않음) 말했다

, 현대적인 접근 방식은 말을하는 것입니다.

더 나은 ID가 있어야합니다. id="about" - 그들이가는 독자들에게 알려 URL이 그리 /mypage/#about 비트 /mypage/#toc1 나쁜 스타일의 주제에

을 URL에 비해 일반적으로 더 나은, 제목 속성은 요소에 대한 자문 정보가 제공하는 것입니다. 유용한 추가 정보가 있어야합니다. 귀하의 예는 링크의 본문을 복제하고 있습니다. 기껏해야 다운로드 할 수있는 여분의 바이트 일뿐입니다. 최악의 경우 일부 스크린 리더 사용자는 반복되는 모든 링크의 수신 경로를 경청해야합니다.

+0

예 화면 판독기 부분에 동의합니다. 이것은 간단한 예일뿐입니다. 많은 감사합니다 !!! – Manny

관련 문제