Css 在HTML中,块级元素是否应始终换行<;a>;标签?
在HTML中,块级元素是否应该始终包装Css 在HTML中,块级元素是否应始终换行<;a>;标签?,css,html,xhtml,Css,Html,Xhtml,在HTML中,块级元素是否应该始终包装标记?如果标记需要包装块级元素以确保应用正确的样式,该怎么办?例如,我们可以这样做吗 <h3><a href="/">Your Header</a></h3> CSS 在这种情况下,a元素绝对可以包含h3元素,至少根据HTML5 a元素称为“透明”元素:它可以包含其父元素可能包含的任何内容。唯一的标准是,它可能不包含任何其他“交互式”内容,例如其他a元素、button元素、iframe元素。在这种情况下,假设
标记?如果标记需要包装块级元素以确保应用正确的样式,该怎么办?例如,我们可以这样做吗
<h3><a href="/">Your Header</a></h3>
CSS
在这种情况下,
a
元素绝对可以包含h3
元素,至少根据HTML5
a
元素称为“透明”元素:它可以包含其父元素可能包含的任何内容。唯一的标准是,它可能不包含任何其他“交互式”内容,例如其他a
元素、button
元素、iframe
元素。在这种情况下,假设第一个版本是允许的,第二个版本在HTML5下也是允许的
它规定了这一点。这需要一点解释才能理解,不幸的是…两者都可以
<h3><a href="/">Your Header</a></h3>
<a href="/"><h3>Your Header</h3></a>
但是如果我不在乎锚中有什么,我会使用第一个,我只希望它看起来像
如果我关心锚点需求的特定部分,我将使用第二个。为了
下面的例子我需要第二个
<a href="/"> check normal text <h3>check large text</h3></a>
在HTML4.01和XHTML中,
h3
标记可以包含a
标记,但不能反过来
在HTML5中,这两种方法都是有效的。如果
a
标记包含h3
标记,则a
标记不得嵌套在不能包含h3
元素的元素中。注意,在HTML5中有一种情况
<h3><a href="/">Your Header</a></h3>
是有道理的,但是
<a href="/"><h3>Your Header</h3></a>
不会,此时
元素的父元素是
元素
元素只能有
子元素,因此
及
是唯一有效的安排。您发布的帖子中的答案是正确的。它将适用于任何标题元素,也可能适用于任何块级元素。
“但我不确定h3标记是否适用不同或更灵活的规则”
为什么您认为h1和h3标记之间会有很大差异?它们非常相似。基本上,不要使用小写,除非你只关心支持HTML5兼容的浏览器。@Simon AndréForsburg-它们相似但不完全相同。我还更感兴趣的是关于用a元素包装h3元素以应用正确的CSS的视图。可能重复的。。。我今天学到了一些东西!这是使用h3元素的一个糟糕的例子。你不应该仅仅为了获得样式效果而使用标题元素。我知道,这只是一个场景示例。更合适的例子是
<a href="/"> check normal text <h3>check large text</h3></a>
<h3><a href="/">Your Header</a></h3>
<a href="/"><h3>Your Header</h3></a>
<hgroup>
<h3>
<a href="/">Your Header</a>
</h3>
</hgroup>
<a href="/">
<hgroup>
<h3>Your Header</h3>
</hgroup>
</a>