Cách căn chỉnh hai thẻ div cạnh nhau (5 phương pháp hàng đầu)

Căn chỉnh hai thẻ div có khả năng thích ứng, đặt cạnh nhau

Chào bạn đọc blog, hôm nay chúng ta sẽ nói về "Cách căn chỉnh hai thẻ div cạnh nhau". Trong HTML, có các kiểu phần tử inline và block. Các phần tử inline có thể đặt các phần tử cạnh nhau nhưng chúng không hỗ trợ thuộc tính chiều cao và chiều rộng theo mặc định, còn các phần tử block hỗ trợ thuộc tính chiều rộng và chiều cao theo mặc định nhưng chúng ta sẽ căn chỉnh các phần tử block như hai thẻ div cạnh nhau bằng cách sử dụng thuộc tính side.

Cách căn chỉnh hai thẻ div cạnh nhau (5 phương pháp hàng đầu)
Cách căn chỉnh hai thẻ div cạnh nhau (5 phương pháp hàng đầu)

Vậy, ở đây chúng ta có thể thấy cách chúng ta có thể làm cho nó hoạt động. Chúng ta sẽ xem cách thẻ div có thể nằm cạnh nhau theo 5 cách khác nhau.

5 phương pháp hàng đầu để căn chỉnh hai thẻ div cạnh nhau

  •     hiển thị: inline-block (cách truyền thống)
  •     Phương thức flexbox của CSS
  •     Phương thức lưới CSS
  •     hiển thị: phương thức bảng
  •     thuộc tính nổi
  •     CSS Subgrid (phiên bản mới nhất, 2023 trở lên)

1. Sử dụng display: inline-block

Thuộc tính này giúp định vị các phần tử khối cạnh nhau. Tuy nhiên, chúng ta cần thêm thuộc tính chiều rộng cho phần tử khối vì theo mặc định, phần tử khối chiếm toàn bộ chiều rộng.

HTML-CSS


<div class="element">
  </div>
  <div class="element">
  </div>

<style>
.element {
  display: inline-block;
  width: 100px;
  height: 100px;
  background: #ce8888;}
</style>

Preview

Tips: Bạn có thể thay đổi CSS (style) theo yêu cầu của mình.

2. Sử dụng flexbox

Flexbox là một phương pháp hiện đại để thiết kế định dạng của một trang web và flexbox không phải lúc nào cũng là một thuộc tính đơn lẻ mà là cả một mô-đun với nhiều tính năng khác nhau.

Hãy cùng xem cách chúng ta có thể căn chỉnh các thẻ div liền kề nhau bằng flexbox.

HTML-CSS


<div class="container">
    <div class="item"></div>
    <div class="item"></div>
</div>

<style>
.container {display: flex;}
.item {background: #ce8888; flex-basis: 100px; height: 100px; margin: 5px;}
</style>

Preview

Tips: Bạn có thể thay đổi CSS (style) theo yêu cầu của mình.

3. Sử dụng lưới CSS (CSS grid)

CSS Grid là một phương pháp tuyệt vời khác để thiết kế trang web và toàn bộ mô-đun của nó đi kèm với một số tính năng.

Hãy xem cách chúng ta có thể hiển thị các phần tử div thông qua việc sử dụng lưới CSS.

HTML-CSS


<div class="container">
      <div class="item"></div>
      <div class="item"></div>
</div>

<style>
 .container {display: grid; grid-template-columns: 100px 100px; grid-template-rows: 100px; grid-column-gap: 5px;}
      
.item {background: #ce8888;}
</style>

Preview

Tips: Bạn có thể thay đổi CSS (style) theo yêu cầu của mình.

4. Sử dụng display table

Thuộc tính này là một lựa chọn thay thế cho thẻ <table>

Permit’s see how we can acquire showing div side via facet the usage of display:table assets


<div class="container">
    <div class="table-row">
     <div class="table-cell"></div>
      <div class="table-cell"></div>
    </div>
</div>

<style>
.container {display: table; width: 20%;}
.table-row { display: table-row; height: 100px;}
.table-cell {border: 1px solid; background: #ce8888; display: table-cell; padding: 2px;}
</style>

Preview

Tips: Bạn có thể thay đổi CSS (style) theo yêu cầu của mình.

5. Sử dụng float property

Thuộc tính CSS Glide đặt các phần tử và chi tiết ở phía bên trái hoặc bên phải của hộp, cho phép văn bản và các phần tử nội tuyến bao quanh nó. Phần tử này bị tách khỏi luồng thông thường của trang, mặc dù vẫn là một phần cuối cùng của luồng.

Hãy xem cách chúng ta có thể hiển thị khía cạnh của thẻ div theo từng khía cạnh bằng cách sử dụng phương pháp "đi theo dòng chảy".


<div class="element"></div>
  <div class="element"></div>

<style>
.element {float: left; width: 100px; height: 100px; background: #ce8888; margin: 5px}
</style>

Preview

Tips: Bạn có thể thay đổi CSS (style) theo yêu cầu của mình.

6. Sử dụng CSS Subgrid (Phiên bản mới nhất, 2023 trở lên)

Thuộc tính subgrid được giới thiệu như một phần của CSS Grid Level 2. Nó cho phép các phần tử lưới lồng nhau căn chỉnh theo cùng một đường lưới với phần tử cha của chúng — hữu ích cho các bố cục lồng nhau sâu và các thiết kế dựa trên thành phần.

Hãy cùng xem cách chúng ta có thể sử dụng subgrid để căn chỉnh hai div cạnh nhau, kế thừa cấu trúc lưới từ phần tử cha.

HTML-CSS

 <div class="grid-parent"> <div class="grid-child"> <div class="item"></div> <div class="item"></div> </div> </div> <style> .grid-parent { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; width: 100%; } .grid-child { display: subgrid; grid-column: span 2; grid-template-columns: subgrid; } .item { height: 100px; background: #66D3F7; border: 2px solid #333; } </style> 

Preview

Tips: Hãy chắc chắn kiểm tra khả năng tương thích của trình duyệt với subgrid — hiện được hỗ trợ trên Firefox và Chromium 117 trở lên (Chrome 117, Edge 117, Opera 103).

Phần kết luận

Hiện nay có 6 phương pháp hiệu quả để căn chỉnh các thẻ div cạnh nhau. Việc lựa chọn phương pháp nào phụ thuộc vào độ phức tạp của dự án, yêu cầu hỗ trợ trình duyệt và khả năng bảo trì trong tương lai.

  1. Flexbox and Grid (đặc biệt là với subgrid) là những công cụ hiện đại, mạnh mẽ và được khuyến nghị sử dụng cho bố cục..
  2. Inline-block or float vẫn có thể hữu ích cho các trường hợp sử dụng đơn giản hoặc cũ.
  3. Subgrid (2023+) là lựa chọn tốt nhất cho các thành phần lồng nhau khi cần căn chỉnh lưới hoàn toàn trên nhiều lớp.

Nếu bạn thấy bài viết này hữu ích, hãy cân nhắc chia sẻ nhé — vì chia sẻ là thể hiện sự quan tâm ❤️

Đăng nhận xét