HTML:浮点数:左和相对位置

问题描述:

当我使用float:left和另一个具有相对位置的div块时,第二个块的行为意外 - 文本超出框和背景颜色。这里发生了什么?HTML:浮点数:左和相对位置

https://jsbin.com/merehowoxa/1/edit?html,output

 #first-section{ 

      color:black; 
      background-color:pink; 
      width:100px; 
      float:left; 

     } 

     #second-section{ 

      color:purple; 
      background-color:yellow; 
      width:100px; 
      height:100px; 
      position:relative; 
      left:500px; 
      top:200px; 

     } 
+0

我不明白为什么“#第二部分”是相对的? –

+0

为什么不能这样? https://jsbin.com/mitozamoja/1/edit?html,output – AlwaysConfused

当你使用浮动:左,它需要被清除。

添加这两者之间的div的

<div id="first-section"> 

     <p>Text1</p> 
     <p>Text2</p> 

    </div> 

    <div style="clear:both"> 

    <div id="second-section"> 
+0

谢谢。然而,我只是把这些功能混合在一起玩,并想知道为什么输出会像它那样出现。你能解释为什么会发生这种情况吗?输出与浮动罚款: – spheroid

+0

好吧,应用Float到任何元素引用下一个直接元素将坐在它旁边。除非你明确声明(使用clear:both)下一个元素不应该驻留在当前元素旁边。 – Janak

+0

由于最后一个元素(#第二部分)被迫在第一部分旁边浮动,因此内容正在从其父部分移出。 – Janak