Html 为什么内联div的行为与内联span不同
我尝试过内联div,但它不起作用 很难解释,请参见下面的链接: SDFDSDSSFDAFASSFHtml 为什么内联div的行为与内联span不同,html,css,Html,Css,我尝试过内联div,但它不起作用 很难解释,请参见下面的链接: SDFDSDSSFDAFASSF SDFDSDSSFDAFASSF 问题是,在第二个示例中,我使用div而不是span,为什么p块不包含第一行之后的元素 我推测问题在于div的默认属性将div放在p中是不正确的语法 有关块元素、divspan和p元素的详细信息,请参阅 在p中放置div是不正确的语法 有关块元素、divspan和p元素的详细信息,请参阅 不能在中嵌套块级元素-仅允许嵌套(包括和内联格式上下文中的所有其他元素) 如
SDFDSDSSFDAFASSF
问题是,在第二个示例中,我使用div而不是span,为什么p块不包含第一行之后的元素
我推测问题在于div的默认属性将
div
放在p
中是不正确的语法
有关块元素、div
span
和p
元素的详细信息,请参阅
在
p
中放置div
是不正确的语法
有关块元素、div
span
和p
元素的详细信息,请参阅
不能在
中嵌套块级元素-仅允许嵌套(包括
和内联格式上下文中的所有其他元素)
如果您查看示例,您将看到
自动从段落外部删除(
的作用类似于一个自动关闭的元素),最后会出现两行框(内联
和
)下一行是空块级
。不能在
中嵌套块级元素-仅允许(包括
和内联格式上下文中的所有其他元素)
如果您查看示例,您将看到
自动从段落外部删除(
的作用类似于一个自动关闭的元素),最后会出现两行框(内联
和
)下一行是一个空的块级。看起来这样做的原因是不能在内,但可以。因此,由于
的边距,所以
get被向下推
位于
内,因此它不会被
的边距压下
当使用firebug时,您可以清楚地看到这种行为。看起来必须这样做,
不能在中,但
可以。因此,由于
的边距,所以
get被向下推
位于
内,因此它不会被
的边距压下
使用firebug时,您可以清楚地看到这种行为。查看检查器(firebug或其他)
这是因为浏览器在解析之前的HTML元素时关闭,因为HTML的语义表示中不应该有任何查看检查器(Firebug或其他东西)
这是因为浏览器在解析之前的HTML元素时关闭,因为HTML的语义表示中不应该有任何。简而言之,不可能在p中放置div元素。打开div标记将自动关闭p元素
较长版本:
从w3c建议中可以看到:
p元素表示一个段落。它不能包含块级元素(包括P本身)
我想您已经猜到了,但是div标记是一个块元素,即使您将css显示指定为内联。因此,描述的行为简而言之,不可能将div元素放置在p中。打开div标记将自动关闭p元素
较长版本:
从w3c建议中可以看到:
p元素表示一个段落。它不能包含块级元素(包括P本身)
我想您已经猜到了,但是div标记是一个块元素,即使您将css显示指定为内联。因此,所描述的行为不应该在这样的元素内部使用div
,这就是为什么我们有span
s
关闭
标记,因为如果后面跟着另一个块元素,则不需要结尾
。所以
是关闭的,我们都知道
自动添加了以下换行符
如果p元素后面紧跟着地址、文章、旁白、blockquote、dir、div、dl、字段集、页脚、表单、h1、h2、h3、h4、h5、h6、页眉、hr、菜单、导航、ol、p、pre、section、table或ul元素,则可以省略p元素的结束标记,或者如果父元素中没有更多内容,并且父元素不是元素
{另一个答案的链接被盗}
请在网上查一下
也许这也是
您不应该在这样的元素内部使用div
,这就是为什么我们有span
s
关闭
标记,因为如果后面跟着另一个块元素,则不需要结尾
。所以
是关闭的,我们都知道
自动添加了以下换行符
如果p元素后面紧跟着地址、文章、旁白、blockquote、dir、div、dl、字段集、页脚、表单、h1、h2、h3、h4、h5、h6、页眉、hr、菜单、导航、ol、p、pre、section、table或ul元素,则可以省略p元素的结束标记,或者如果父元素中没有更多内容,并且父元素不是元素
{另一个答案的链接被盗}
请在网上查一下
也许是t
<p style="background:red;">SDFDSDSFDSSFDAFASasf<br /> <span style="background: blue; display:inline;">sadfasfasdf</span><em>sasfsalfjsalfjalsjf</em></p>
<p style="background:red;">SDFDSDSFDSSFDAFASasf<br /> <div style="background: blue; display:inline;">sadfasfasdf</div><em>sasfsalfjsalfjalsjf</em></p>