개인공간

[웹표준] dl dt dd란? 본문

IT정보/웹표준_웹접근성

[웹표준] dl dt dd란?

천재소년s 2012. 11. 20. 20:47
반응형

정의목록(<dl><dt><dd>) 올바르게 쓰고 계신가요?

nate의 화면을 보다가 의문이 들었다. dl dt dd로만 쓸수 있는줄 알았는데~ 

저렇게 바꿔 써도 되나? 왠지 될꺼 같기는한데 확실히 몰라서 찾아보았다.



DTD 명세(http://www.w3.org/TR/1999/REC-html401-19991224/struct /lists.html#edef-DD) 에 따르면, 


DL(Definition lists)은 DT(definition term), DD(definition description)와 함께 쓰인다.
DT, DD의 순서에 상관이 없다.
DT에는 인라인요소만 갖을 수 있다,
DD에는 블록요소와 인라인요소 모두 갖을 수 있다.
DT와 DD중 하나만 있어도 된다.
DT와 DD는 여는 태그는 필요하지만 닫는 태그는 생략해도 상관없다 


라고 쓰여 있습니다. 




즉, 이렇게도 쓸 수 있지만, 

<DL>
<DT>Dweeb
<DD><EM>Nerd</EM> 또는 <EM>Geek</EM>로 성숙 할 수 있는 흥분 잘하는 젊은 사람
<DT>Cracker
<DD>인터넷 해거(hacker)
<DT>Nerd
<DD>자기 처의 생일을 잊어버리고 Net에 빠진 남자
</DL>


 

이렇게

<DL>
<DD><EM>Nerd</EM> 또는 <EM>Geek</EM>로 성숙 할 수 있는 흥분 잘하는 젊은 사람
<DT>Dweeb
<DD>인터넷 해거(hacker)
<DT>Cracker
<DD>자기 처의 생일을 잊어버리고 Net에 빠진 남자
<DT>Nerd
</DL>



또는 이렇게 써도 틀리진 않다는 것입니다.

<DL>
<DD><EM>Nerd</EM> 또는 <EM>Geek</EM>로 성숙 할 수 있는 흥분 잘하는 젊은 사람
<DD> 인터넷 해거(hacker)
<DD>자기 처의 생일을 잊어버리고 Net에 빠진 남자
</DL> 



약간 의아하지만, 스펙에는 분명히 그렇게 정의되어 있네요.
우리가 모르는 히스토리가 있었지 않을까요?

이 부분 때문에 많은 논란이 있어 왔고 HTML5에서는 조금 엄격하게 스펙 정의가 되었다고 합니다.
HTML 5에 정의된 DL, DT, DD 에 대한 정의는 아래 URL을 참고하세요



http://dev.w3.org/html5/markup/dl.html
http://dev.w3.org/html5/markup/dt.html
http://dev.w3.org/html5/markup/dd.html



무슨 히스토리가 있었는지는 모르겠지만,
가 능하면 <dt>와 <dd>의 순서도 지키고 <dt>가 있으면 <dd>도 생략 하지 않는게 더 의미있는 마크업일 것 같습니다



반응형