1/ Ý nghĩa Flexbox

Flexbox là cho phép vùng chứa có khả năng điều chỉnh, co giãn các phần tử bên trong (theo chiều rộng, chiều cao) dựa theo khoảng trống có sẵn bên trong vùng để tránh trường hợp bị tràn vùng, bể giao diện. Bố cục Flexbox khác với bốc cụ thông thường (theo mô hình khối – block) ở chỗ cho phép tính năng thay đổi kích thước, kéo căng, co giãn,… các thành phần giao diện dễ dàng hơn.
Flexbox nhắm đến mục tiêu là cách hiệu quả để tạo bố cục, canh chỉnh và giãn cách khoảng trống giữa các phần tử bên trong vùng chứa bố cục, ngay cả khi chưa biết kích thước của các phần tử này.

2/ Vùng chứa Container

Container là vùng chứa toàn bộ giao diện web, và các thành phần bên trong. Có thể tạo vùng chứa Flexbox như sau:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Đây là vùng chứa Flexbox CSS</title>
    <style>
       .flex-container {
            display: flex;
            background-color: lightblue;
        }
        
    </style>
</head>
 
<body>
<div class="flex-container">
  <!-- Nội dung bố cục con được thêm ở đây -->
</div>
</body>
 
</html>

3/ Các phần tử trong vùng chứa Container

Flex-item được gọi là các phần tử trong vùng chứa contaner, ví dụ như sau:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Flexbox CSS --- DAMMIO.COM</title>
    <style>
       .flex-container {
            display: flex;
            background-color: lightblue;
        }
        .flex-item {
            background-color: #f1f1f1;
            margin: 10px;
            width:33.33%;
            padding: 20px;
            font-size: 30px;
        }
    </style>
</head>
<body>
<div class="flex-container">
  <div class="flex-item">Phần tử 1 --- dammio.com</div>
  <div class="flex-item">Phần tử 2</div>
  <div class="flex-item">Phần tử 3</div
</div>
</body>
</html>

4/ Các thuộc tính của Flexbox

Các thuộc tính dùng cho phần tử bên trong vùng chứa (item):

order: mô tả thứ tự sắp xếp các phần tử con.
flex-grow: mô tả kích thước tương đối của phần tử con so với các phần tử khác.
flex-shrink: mô tả kích thước của phần tử được co lại.
flex-basis: mô tả kích thước (pixel) của phần tử
flex: thuộc tính dùng chung cho 3 thuộc tính flex-grow, flex-shrink, và flex-basis.
align-self: canh các phần tử theo chiều dọc.

Các thuộc tính dùng cho vùng chứa (container):

flex-direction: mô tả chiều của Flexbox, theo hàng (row) hay cột (column).
flex-wrap: có nên bao phần tử con bên trong hay không (wrap, nowrap).
flex-flow: thuộc tính chung cho 2 thuộc tính flex-direction và flex-wrap.
justify-content: canh phần tử theo chiều ngang.
align-items: canh phần tử theo chiều dọc.
align-content: canh nội dung theo chiều dọc.

5/ Bố cục Flexbox trong thiết kế web

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Vùng chứa contaner Flexbox CSS ---</title>
    <style>
    
        .header{
            width:100%;
            height:100px;
            background-color:yellow;
        }
        
       .flex-container {
            display: flex;
            flex-direction: row;
            background-color: lightblue;
        }
        
        .sidebar-1{
            flex:25%;
            background-color: pink;
        }
        
        .sidebar-2{
            flex:25%;
            background-color: #F7DC6F;
        }
        
        .content{
            flex:50%;
            background-color: #D7BDE2;
        }
        
        .footer{
            width:100%;
            height:50px;
            background-color: #AAA;
        }
        
        @media screen and (max-width: 768px) {
            .flex-container {  
            flex-direction: column;
        }
}        
    </style>
</head>
 
<body>
<div class="header">
    <h3>Header</h3>
</div>
<div class="flex-container">
    <div class="sidebar-1">
        Sidebar 1</br>
        Sidebar 1</br>
        Sidebar 1</br>
    </div>
    <div class="content">
        Content</br>
        Content</br>
        Content</br>
    </div
    <div class="sidebar-2">
        Sidebar 2</br>
        Sidebar 2</br>
    </div
</div>
<div class="footer">Footer</div
</body>
</html>
Đặc điểm của Flexbox là chỉ dùng để giao diện cho từng dòng chứa phần tử giúp bạn thiết kế giao diện một cách đơn giản.
Bài viết này mình đã giới thiệu tổng quát về chức năng, thuộc tính của Flexbox , bạn có thể tham khảo thêm về cách chỉnh sửa css trong website wordpress