内联元素可以包含块元素吗? [英] Can inline elements contain block elements?
问题描述
内联元素是否可以包含一个块元素作为实例:一个列表是否可以包含段落? 解决方案
LI和P都是块级别的......
这样做永远不会有效,但从行为角度来看,有时,您可以嵌套块级元素,但它取决于浏览器解析器。
例如,在FireFox 3.x中,使用此标记
<!DOCTYPE html>
< i>
foo
< div> bar< / div>
baz
< / i>
将以斜体显示foo,bar和baz。
但是这个标记用inline元素< var>
< i> >(它也有斜体作为它的默认呈现)
<!DOCTYPE html>
< var>
foo
< div> bar< / div>
baz
< / var>
只会以斜体显示foo。
其他浏览器不表现行为一样。这是您坚持使用有效标记的原因之一。
Can an inline element contain a block element for instance: can a list have a paragraph?
Leaving aside the fact that LI and P are both block level ...
It's never valid to do so, but in behavioural terms, sometimes you can nest a block level element inside a inline level one, but it depends on the browser parser.
For example, in FireFox 3.x, with this markup
<!DOCTYPE html>
<i>
foo
<div>bar</div>
baz
</i>
will display foo, bar, and baz all in italics.
But this markup, replacing the inline element <i>
with inline element <var>
(which also has italics as its default rendering)
<!DOCTYPE html>
<var>
foo
<div>bar</div>
baz
</var>
will only display foo in italics.
Other browsers do not behave the same. Which is one reason why you should stick to using valid markup.
这篇关于内联元素可以包含块元素吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!