[html] 웹 표준에서 링크 (<a> 태그)와 제목 (<h1> 태그)을 혼합하는 방법은 무엇입니까?

웹 표준에 따라 제목 1이있는 링크를 만드는 올바른 코드는 무엇입니까?

그것은

<h1><a href="http://stackoverflow.com"> stackoverflow </a></h1>

또는

<a href="http://stackoverflow.com"><h1> stackoverflow </h1></a>

감사



답변

웹 표준에 따르면 블록 요소를 인라인 요소에 넣을 수 없습니다.

마찬가지로 h1블록 요소이고 a정확한 방법은 인라인 요소이다 :

<h1><a href="#">This is a title</a></h1>

여기에 더 많은 것을 배울 수있는 링크가 있습니다 : w3 비주얼 포맷팅 모델

그러나 HTML5 에서는 앵커 태그에서 블록 수준 요소 (예 : div, p또는 h*) 를 래핑하는 것이 유효하다는 예외가 있습니다. 앵커 이외의 인라인 요소에 블록 수준 요소를 래핑하는 것은 여전히 ​​표준에 위배됩니다.


답변

HTML5는이 주제를 업데이트합니다. 이제 다른 질문에 명시된 것처럼 블록 수준 요소를 A로 래핑해도됩니다. https://stackoverflow.com/a/9782054/674965 및 여기 : http://davidwalsh.name/html5-)에 됩니다. 요소-링크


답변

내가 이해하는 한 HTML5를 사용하면 링크 태그에서 블록 수준 요소를 래핑 할 수 있습니다. 그러나 이전 브라우저에서는 버그가 나타날 수 있습니다. Firefox 3.6.18에서이 문제가 발생했고 moz-rs-heading = “”이 내 코드에 삽입되었습니다. 따라서 내 스타일이 깨졌습니다. 해결 방법에 관심이 있다면 링크 태그를 div로 래핑 할 수 있습니다. 다음은 추가 코드가 작동하는 이유에 대한 더 나은 설명입니다. http://oli.jp/2009/html5-block-level-links/


답변

a > h1 텍스트 선택에 어려움이 있습니다.

텍스트 선택 문제

둘 다 HTML5에서 완전히 유효하므로 h1 > a


답변