Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 为什么内联div的行为与内联span不同_Html_Css - Fatal编程技术网

Html 为什么内联div的行为与内联span不同

Html 为什么内联div的行为与内联span不同,html,css,Html,Css,我尝试过内联div,但它不起作用 很难解释,请参见下面的链接: SDFDSDSSFDAFASSF SDFDSDSSFDAFASSF 问题是,在第二个示例中,我使用div而不是span,为什么p块不包含第一行之后的元素 我推测问题在于div的默认属性将div放在p中是不正确的语法 有关块元素、divspan和p元素的详细信息,请参阅 在p中放置div是不正确的语法 有关块元素、divspan和p元素的详细信息,请参阅 不能在中嵌套块级元素-仅允许嵌套(包括和内联格式上下文中的所有其他元素) 如

我尝试过内联div,但它不起作用

很难解释,请参见下面的链接:

SDFDSDSSFDAFASSF

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>