html - <div> 嵌套在 <p> 中

标签 html tags

在学习网络开发时,我遇到了一个问题。
那是我的代码:

<!DOCTYPE html>
<html>
<head>
    <style type="text/css">
    p
    {
        background: blue;
    }

    .primary
    {
        color: red;
    }
    </style>
</head>
<body>
    <p>
        text1
        <div class="primary">
            text
        </div>
        text2
    </p>
</body>
</html>

由于某种原因浏览器转换 <p><p>text</p></p>到相同。所以,而不是 <div>嵌套在 <p> (我在源代码中实际写的内容!)我明白了:
...
<body>
<p>
text1
</p>
<div class="primary">
    text
</div>
text2
<p></p>
</body>
...

我想这是因为 <p>既可以是空元素(如 <br> )也可以不是空元素(如 <div> )。你能解释一下问题并给出解决方案吗?谢谢你。

最佳答案

<div>标签,如 <p>是一个块级元素,这意味着它被设计为包含它自己的块,周围有换行符。试图嵌套一个 <div>内部 <p>不太可能做你想做的事,因为它没有多大意义。 A <p>是一个段落,它不应该包含块级元素。这个问题可能与:

https://stackoverflow.com/questions/4291467/nesting-block-level-elements-inside-the-p-tag-right-or-wrong

尝试使用 <span>相反,因为 <span>是一个内联元素,旨在显示在段落内。如果确实需要多个块级元素,请考虑不使用 <p>在那里,或者将它们用作最内部的块级元素而不是外部元素。

关于html - <div> 嵌套在 <p> 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44835895/

相关文章:

html - 这是将社交图标移至页面右侧的最佳解决方案吗?

http - 删除网页后,它仍然显示在搜索引擎中,为什么?

tags - 将标签从 CSV 文件导入到 AEM

html - 为什么我应该在 <body> 标签上使用类或 ID?

html - 在 CSS 问题中为 <select> 设置样式

php - 有没有 'fun'交互式主页的好例子?这里有关于创建此类交互性的教程吗?

javascript - 如何使用 Javascript 分离和收集 HTML 属性列表中的不同值?

html - 将 Div 的文本设置为白色

ruby-on-rails - 如何修复重复的标签?

用于嵌套 Div 标签的 PHP RegEx