Hỏi về thuộc tính float trong css

Mọi người giải thích giúp em cái ví dụ trên với.
Tại sao border của thẻ div nó không bao luôn float04 vậy???
Cái float04 nó nằm trong thẻ div mà :confused: .

Theo mình thấy là cái <p> có class="floatNone" nó ngắt float. Do đó cái float04 không thể float: left; theo => bị đẩy ra ngoài div

1 Like

Mình nghĩ là do dòng float: none; nó làm cái float03 trở về thuộc tính mặc định của thẻ <p> mà thuộc tính mặc định của <p>block, vì thế nó chiếm hết chỗ của cái float04 và đẩy float04 xuống dưới.

1 Like

Có nhiều cách để khắc phục, tuy nhiên có 2 cách dễ nhất:``

div { border: 1px solid #ff0000; } p { float: left; } p.floatNone { float: none; } /* br { clear: both; } */ div::after { content: ""; display: table; clear: both; } /*Cách 2*/

float01

float02

float03

float04

`` Cách 1 trong phần comment, giải thích hơi dài nên thôi bạn tự tìm hiểu nhé :slight_smile: Cách 2 phổ biến hơn, xem ở đây: https://www.w3schools.com/css/css_float.asp
1 Like

Cảm ơn mọi người nhiều nhe.:grinning:
Mình hiểu rồi.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?