Css 为什么这些div互相排斥? 磁铁?

Css 为什么这些div互相排斥? 磁铁?,css,html,Css,Html,如果“magnetics?”被包装在段落或标题标签中,那么div为什么不再是连续的呢?您要包装的元素可能有默认的页边距。您要包装的元素可能有默认的页边距。您需要将h3或p上的页边距归零 <html> <div style="width:200px;"> <div style="background:red;height:5px"></div> <div style="background:yellow"> Magnets


如果“magnetics?”被包装在段落或标题标签中,那么div为什么不再是连续的呢?

您要包装的元素可能有默认的页边距。

您要包装的元素可能有默认的页边距。

您需要将h3或p上的页边距归零

<html>
 <div style="width:200px;">
  <div style="background:red;height:5px"></div>
  <div style="background:yellow">
   Magnets?
  </div>
  <div style="background:green;height:5px"></div>
 </div>
</html>

磁铁?
如果您想保持h3和其他元素的边距,那么需要解决div中元素的边距崩溃的问题。有几种方法可以解决此问题:

  • 向div添加边框
  • 在div中添加1px边框
  • 从元素中删除边距,并将其添加到div中
  • 以下链接提供了更多信息:


    您需要将h3或p上的边距归零

    <html>
     <div style="width:200px;">
      <div style="background:red;height:5px"></div>
      <div style="background:yellow">
       Magnets?
      </div>
      <div style="background:green;height:5px"></div>
     </div>
    </html>
    
    
    磁铁?
    
    如果您想保持h3和其他元素的边距,那么需要解决div中元素的边距崩溃的问题。有几种方法可以解决此问题:

  • 向div添加边框
  • 在div中添加1px边框
  • 从元素中删除边距,并将其添加到div中
  • 以下链接提供了更多信息:


    谢谢!将默认页边距设置为0是可行的,但是为什么div不能与内容一起拉伸呢?谢谢!将默认页边距设置为0是可行的,但是为什么div不能与内容一起拉伸呢?感谢您的回复!该解决方案确实有效,但是标题的边距是否应该相对于其父div的填充将其向下推?阅读以下文章了解有关填充和边距的更多信息:@Terminal问题在于边距折叠。阅读我在上面的评论中提供的第一个链接,了解有关这方面的信息。要修复它,您可以在主div上设置1px填充或给它一个边框。这将允许您在h3上保留边距,并使背景色包含整个元素。感谢您的回复!该解决方案确实有效,但是标题的边距是否应该相对于其父div的填充将其向下推?阅读以下文章了解有关填充和边距的更多信息:@Terminal问题在于边距折叠。阅读我在上面的评论中提供的第一个链接,了解有关这方面的信息。要修复它,您可以在主div上设置1px填充或给它一个边框。这将允许您在h3上保留边距,并使背景色包含整个元素。