องค์ประกอบแบบลอยใต้แท็กใน CSS

สมมติว่าตอนนี้เรามีสองย่อหน้าและรูปภาพ ที่อยู่ในย่อหน้าแรก สมมติว่ารูปภาพนี้ มีคุณสมบัติ float ตั้งค่าเป็น right และมีความโปร่งใสบางส่วน:

html<div>
  <p>
    <img src="img.png" alt="">
    Lorem ipsum dolor sit amet, consectetur adipiscing elitorire.
  </p>
  <p>
    some long text
  </p>
</div>
cssdiv {
  border: 1px solid red;
  text-align: justify;
}
p {
  border: 1px solid green;
}
img {
  float: right;
  opacity: 0.5;
}

Результат:

และตอนนี้ลองวางรูปภาพในโค้ด HTML หลังจากย่อหน้าแรกและดูว่าจะเกิดอะไรขึ้น:

html<div>
  <p>
    Lorem ipsum dolor sit amet, consectetur adipiscing elitorire.
  </p>
  <img src="img.png" alt="">
  <p>
    some long text
  </p>
</div>
cssdiv {
  border: 1px solid red;
  text-align: justify;
}
p {
  border: 1px solid green;
}
img {
  float: right;
  opacity: 0.5;
}

Результат:

ดังที่เราเห็น ข้อความจากย่อหน้าที่สองลอยรอบรูปภาพ แต่ไม่ใช่จากย่อหน้าแรก

ลองย้ายรูปภาพของเราไปหลังจากย่อหน้าที่สอง ในกรณีนี้มันจะลอย ไปทางขวา แต่จะไม่มีข้อความใดลอยรอบ:

html<div>
  <p>
    Lorem ipsum dolor sit amet, consectetur adipiscing elitorire.
  </p>
  <p>
    some long text
  </p>
  <img src="img.png" alt="">
</div>
cssdiv {
  border: 1px solid red;
  text-align: justify;
}
p {
  border: 1px solid green;
}
img {
  float: right;
  opacity: 0.5;
}

Результат:

ปรากฏว่ามีเพียงองค์ประกอบที่อยู่ใต้รูปภาพเท่านั้น ที่จะลอยรอบรูปภาพ แต่ไม่ใช่องค์ประกอบที่อยู่เหนือมัน