CSS Flexbox: Layout mà không cần đoán

tsudev· 28/10/2026

Giới thiệu về CSS Flexbox

CSS Flexbox là một mô-đun layout trong CSS cho phép bạn sắp xếp và phân phối các thành phần một cách dễ dàng và linh hoạt. Flexbox giúp bạn tạo ra các layout phức tạp mà không cần phải sử dụng đến các kỹ thuật phức tạp như tuyệt đối vị trí hoặc sử dụng table.

Flexbox bao gồm hai thành phần chính: container và item. Container là phần tử chứa các item, và item là các phần tử được chứa trong container. Khi bạn áp dụng thuộc tính display: flex cho container, các item bên trong sẽ được sắp xếp theo chiều ngang hoặc dọc tùy thuộc vào giá trị của thuộc tính flex-direction.

Cách sử dụng Flexbox

Để sử dụng Flexbox, bạn cần thêm thuộc tính display: flex cho container. Sau đó, bạn có thể sử dụng các thuộc tính khác như flex-direction, justify-content, align-items để điều chỉnh cách sắp xếp các item.

Ví dụ, bạn có thể tạo một container với các item được sắp xếp theo chiều ngang như sau:

css
.container {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

.item {
  width: 100px;
  height: 100px;
  background-color: #ccc;
  margin: 10px;
}

html
<div class="container">
  <div class="item">Item 1</div>
  <div class="item">Item 2</div>
  <div class="item">Item 3</div>
</div>

Kết quả sẽ là một container với các item được sắp xếp theo chiều ngang, cách đều nhau và được căn giữa theo chiều dọc.

Ưu điểm của Flexbox

Flexbox có nhiều ưu điểm so với các kỹ thuật layout khác. Một số ưu điểm chính bao gồm:

* Dễ dàng sử dụng: Flexbox rất dễ dàng sử dụng, ngay cả đối với những người mới bắt đầu với CSS.
* Linh hoạt: Flexbox cho phép bạn tạo ra các layout phức tạp mà không cần phải sử dụng đến các kỹ thuật phức tạp.
* Tương thích với các trình duyệt hiện đại: Flexbox được hỗ trợ bởi hầu hết các trình duyệt hiện đại, bao gồm Google Chrome, Mozilla Firefox, Safari, và Microsoft Edge.

Kết luận

CSS Flexbox là một công nghệ quan trọng trong thiết kế UI, giúp sắp xếp và phân phối các thành phần một cách dễ dàng và linh hoạt. Với Flexbox, bạn có thể tạo ra các layout phức tạp mà không cần phải sử dụng đến các kỹ thuật phức tạp. Để học thêm về Flexbox, bạn có thể tham khảo các tài liệu trên internet, bao gồm https://dev.to/practicaldevblog/css-flexbox-explained-layout-without-the-guesswork-40go.