2009-11-11 172 views
11

W3C验证器告诉我,我不能在内联元素中放置块级元素。有意义...内联元素内的块级元素

但如果我使用CSS将块级元素更改为内联元素会怎样?

如果我使用CSS将内联元素转换为块级元素(当内嵌另一个内联元素时)该怎么办?

Validator对此没有明显的认识,但它错了吗?

(我实际上没有这样做,我只是想知道的最佳实践)

回答

7

定义为HTML规范一个块级元素元素是不一样的CSS定义为display: block;一个元素。

这个我的意思是:即使你说<p style="display: inline;">Lorem...</p>。在HTML中,<p>仍然是一个块元素。

如果使用正确的HTML,CSS和JavaScript,据说它们具有相互对应的loose coupling,并且一个不应该依赖于另一个,并且缺少一个不应该使其他人(或整个系统)失败。

2

内联元素的元素不应包含块元素。块元素可以包含块和/或行内元素,而行内元素只能包含其他行内元素(包括inline-block,例如<img>)元素。

无论如何,你当然可以这样做,因为图形表示在各浏览器之间是非常一致的。这仍然不是我想要推荐的东西,也不能真正想到做这件事的理由。