Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.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 将显示:内嵌元素放入嵌套显示:块元素不';不行?_Html_Css - Fatal编程技术网

Html 将显示:内嵌元素放入嵌套显示:块元素不';不行?

Html 将显示:内嵌元素放入嵌套显示:块元素不';不行?,html,css,Html,Css,请参见此示例: p{ 显示:内联; } em{ 显示:块; } 外部内联块内部内联块您的标记无效。您不应该将p元素嵌套在p元素中,从而引发问题 发件人: p元素表示一个段落。它不能包含块级别 元素(包括P本身) 检查源代码,您将了解为什么它的行为与您预期的不同 您的浏览器将实际分离出所有标记,并为您关闭p元素 那么我们如何修复它呢?使用元素而不是 有两种方法可以做到这一点: 将p元素转换为div 外部内联块内部内联块 或者将p的css更改为内联块,如下所示: p{ 显示:内联块; }

请参见此示例:

p{
显示:内联;
}
em{
显示:块;
}

外部内联块内部内联块

您的标记无效。您不应该将
p
元素嵌套在
p
元素中,从而引发问题

发件人:

p元素表示一个段落。它不能包含块级别 元素(包括P本身)

检查源代码,您将了解为什么它的行为与您预期的不同

您的浏览器将实际分离出所有标记,并为您关闭
p
元素

那么我们如何修复它呢?使用
元素而不是


有两种方法可以做到这一点:

  • 将p元素转换为div
  • 外部内联块内部内联块

  • 或者将p的css更改为内联块,如下所示:

    p{ 显示:内联块; }

  • 查看演示:

    使用div元素演示:

    我一直想知道如果
    p
    通过CSS成为内联元素,这是否仍然适用:
    p{display:inline;}
    @knittl您当然可以将
    p
    作为
    inline
    但嵌套很重要,无论您使用CSS更改元素的
    display
    ,从语义上讲,在
    p
    中嵌套任何块级元素是不正确的,浏览器将以不同的方式对其进行解析并自行修复
    <div> Outer inline <em>Block <p>Inner inline</p></em></div>