Javascript 段落可以是父元素吗?

Javascript 段落可以是父元素吗?,javascript,html,Javascript,Html,应该提到: 我不是最有经验的网络程序员。 然而:目前正在处理一些前端的东西 昨天我编写了一些JavaScript,结果并不像我预期的那样 我制作了这个演示: 每个段落都包含一个标题和一些文本。段落包含在div容器中 <div class="container"> <p class="paragraph"> <h3 class="headline">Some headline ...</h3> <span>Lorem

应该提到: 我不是最有经验的网络程序员。 然而:目前正在处理一些前端的东西

昨天我编写了一些JavaScript,结果并不像我预期的那样

我制作了这个演示:

每个段落都包含一个标题和一些文本。段落包含在div容器中

<div class="container">
  <p class="paragraph">
    <h3 class="headline">Some headline ...</h3>
    <span>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. </span>
  </p>

  <p class="paragraph">
    <h3 class="headline">Another headline ...</h3>
    <span>Nam quam nunc, blandit vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et ante tincidunt tempus. Donec vitae sapien ut libero venenatis faucibus.</span>
  </p>

  <!-- More paragraph-container ... -->
</div>

我希望返回“段落”,因为段落包含标题。相反,我得到了div的类名

有人能解释这种行为吗?

“我希望返回'paragration',因为该段落包含标题。相反,我得到的是div的类名。”

因为
都是块元素。它们不是放在一起的。就像您不能在
中添加
一样

要使
内联,必须设置css
display:inline

请参阅:

“我希望返回'paragration',因为该段落包含标题。取而代之的是div的类名。”

因为
都是块元素。它们不是放在一起的。就像您不能在
中添加
一样

要使
内联,必须设置css
display:inline


请参阅:

将标题元素(
等)放在段落元素内是无效的html


您的浏览器可能在
元素之前关闭段落元素,因此
的父元素将成为您的
容器

将标题元素(
等)放在段落元素中是无效的html


您的浏览器可能在
元素之前关闭了段落元素,因此
的父元素将成为您的
容器

我相信您的html无效。 你不应该把H3放在段落内,而是放在上面。 浏览器将选择
作为父元素,而不是
元素


我相信您的html无效。 你不应该把H3放在段落内,而是放在上面。 浏览器将选择
作为父元素,而不是
元素


您得到的是
容器
而不是
段落
,因为web浏览器正在更正格式错误的html代码结构:

错误在于
元素应该包含文本体,而不是其他元素

将您的
标记更改为
会使您的代码像这样完美地工作:

<div class="container">
  <div class="paragraph">
    <h3 class="headline">Some headline ...</h3>
    <span>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. </span>
  </div>

  <div class="paragraph">
    <h3 class="headline">Another headline ...</h3>
    <span>Nam quam nunc, blandit vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et ante tincidunt tempus. Donec vitae sapien ut libero venenatis faucibus.</span>
  </div>
</div>

一些标题。。。
Lorem ipsum dolor sit amet,是一位杰出的领导者。埃尼安·康莫多·利古拉·埃吉特·多洛。
另一个标题。。。
Nam quam nunc,blandit vel,luctus pulvinar,hendrerit id,lorem。这是一个非常重要的时刻。不要为威尼斯人的自由而浪费生命。

您得到的是
容器
而不是
段落
,因为web浏览器正在更正格式错误的html代码结构:

错误在于
元素应该包含文本体,而不是其他元素

将您的
标记更改为
会使您的代码像这样完美地工作:

<div class="container">
  <div class="paragraph">
    <h3 class="headline">Some headline ...</h3>
    <span>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. </span>
  </div>

  <div class="paragraph">
    <h3 class="headline">Another headline ...</h3>
    <span>Nam quam nunc, blandit vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et ante tincidunt tempus. Donec vitae sapien ut libero venenatis faucibus.</span>
  </div>
</div>

一些标题。。。
Lorem ipsum dolor sit amet,是一位杰出的领导者。埃尼安·康莫多·利古拉·埃吉特·多洛。
另一个标题。。。
Nam quam nunc,blandit vel,luctus pulvinar,hendrerit id,lorem。这是一个非常重要的时刻。不要为威尼斯人的自由而浪费生命。

你搞错了,
parentNode
返回第一个父元素。如果你搞错了,
parentNode
可能重复,则返回第一个父元素。可能重复的不是
内联元素?@choz如果CSSyes没有将它们设置为内联元素,则必须设置css“display:inline”@aspirin只是想知道这个方法是否正确。
是一个内联元素,不是吗?@choz,除非你在上面设置了
display:block
内联元素吗?@choz如果CSSyes没有设置内联元素,你就必须设置css“display:inline”“@阿斯匹林只是想知道我的方法是否正确
是一个内联元素,不是吗?@choz,除非您在其上设置了
display:block