短い答えは、 "有効な、標準、意味的に正しいHTMLではない" です。 (HTML 5はまだ標準ではなく、さまざまなブラウザで動作させるにはハックを必要とします)
無効なテクニックに頼ったり、見出しを投げ捨てたりすることで実現できますが、これはお勧めできません。
妥当な数のユーザーが、有用なものを探しているドキュメントのリンクをスキミングします。スクリーンリーダーのユーザーは良い例です。リンクテキストが大きい場合(この例のように)、この利点は失われます。
ここでは、JavaScriptを使用するのは良い解決策です(しかし、当然、JSが利用できない場合でも機能します)。
この例では、jQueryを使用します(これを正当化するにはDOMと十分に異なる)。
<div class="summary">
<h4><a href='#'>Small Heading</a></h4>
<p>Small amount of text</p>
</div>
jQuery('div.summary').click(function() {
jQuery('a', this).click();
});
私はこれをテストしていませんが、クリックは()を実行していない場合、私は何を期待あなたがそれを置き換えることができます。
jQuery('div.summary').click(function() {
document.location = jQuery('a', this).attr('href');
});
JavaScriptが使用できない場合は、見出しがまだありますクリック可能なリンク。そうであれば、全領域をクリックすることができます。あなたはとホバー効果を追加することができます
:
jQuery('div.summary').addClass('hoverable');
と
div.hoverable:hover { background-color: green; }
(JSが利用できないですが、CSSがある場合は、この方法では、ホバー効果は発生しません)
その後、純粋主義者はデザインのゴーフです。これは、テキストのみのブラウザに本当にうまく機能しなくなり、html/cssはすべて有効です!彼らは何について不平を言わなければならないでしょうか? –
タグの意味が失われてしまったので、見出しが見出しであることをブラウザーが認識しないように、テキストへの変換は行われません。 – edeverett
ありがとうございます10goto10 - 私はスパンを使用したくありませんでした当初は利用可能な最良の選択肢のようです。 –