内联元素中的块元素

时间:2012-09-25 15:41:43

标签: css

我一直试图在behance.net网站上剖析一些css。我已经在Chrome检查员中仔细查看了它,但有些事情我只是不明白。

在顶部导航栏上,有文字显示“发现”,“画廊”,“工作”。我注意到“Discover”是一个锚标记内的div。我的印象是块级元素不能嵌入内联级元素。但这是一个非常专业的网站,他们正在这样做。它在某些浏览器中不会中断吗?

<a    class="nav-link" href="/"><div class="nav-text nav-sprite nav-sprite-discover">Discover</div></a>

谢谢!

2 个答案:

答案 0 :(得分:3)

根据HTML5文档,<a>元素具有transparent content model,这意味着它们可以包含块级元素。

在HTML4及以下版本中,<a>元素是内联元素,不能包含块内容。

答案 1 :(得分:1)

如果Behance使用HTML5文档类型,这将是有效的(正如zzzzBov所说,HTML5规范的当前草案中的元素具有透明的内容模型,这意味着它们可以包含块级元素。)

但是,由于他们使用的是XHTML doctype,因此在此上下文中的使用无效。它不会破坏(大多数)浏览器,但它并不严格正确,我不会模仿它。