Engineering Core
ISB Vietnam's skilled software engineers deliver high-quality applications, leveraging their extensive experience in developing financial tools, business management systems, medical technology, and mobile/web platforms.

In modern web design, organizing and aligning elements on a page is crucial. One of the powerful tools that helps achieve this is Flexbox (Flexible Box Layout). Flexbox allows you to create flexible and easily adjustable layouts, providing an optimal user experience.

Flex Container and Flex Items

When using Flexbox, you'll work with two main concepts:

  • Flex Container: The parent element defined by the property display: flex;. All child elements inside it become Flex Items.
  • Flex Items: The child elements within the flex container. They can automatically adjust their size and position based on the available space.

Key Properties of Flexbox

On Flex Container

  1. Display: flex;
    • Sets the container as a flex container.
  1. Flex-direction
    • Defines the direction of the flex items.
    • Values: row, row-reverse, column, column-reverse.
  1. Flex-wrap
    • Decides whether flex items should wrap onto multiple lines.
    • Values: nowrap, wrap, wrap-reverse.
  1. Justify-content
    • Decides whether flex items should wrap onto multiple lines.
    • Values: nowrap, wrap, wrap-reverse.
  1. Align-items
    • Decides whether flex items should wrap onto multiple lines.
    • Values: nowrap, wrap, wrap-reverse.
  2. Align-content
    • Adjusts the space between lines in the container when there are multiple lines.
    • Values: flex-start, flex-end, center, space-between, space-around, stretch.

On Flex Items

  1. Flex
    • Sets the container as a flex container.
  1. Flex-grow
    • Defines the direction of the flex items.
  1. Flex-shrink
    • Decides whether flex items should wrap onto multiple lines.
    • Values: nowrap, wrap, wrap-reverse.
  1. Flex-basis
    • Decides whether flex items should wrap onto multiple lines.
  1. Align-self
    • Decides whether flex items should wrap onto multiple lines.
    • Values: nowrap, wrap, wrap-reverse.

Example Usage

  • About Flex-direction 

flex-direction: column; /* Arrange items in a column */

flex-direction: row; /* Arrange items in a row*/

 

  • About  Flex and Align-content

flex-wrap: wrap; /* Allow items to wrap onto multiple lines */

align-content: space-between; /* Adjust space between lines */

 

Conclusion

Flexbox is a powerful tool that allows you to build complex layouts that are easy to adjust and maintain. It is particularly useful for designing responsive user interfaces, enabling elements to adapt automatically to different screen sizes. With Flexbox, creating visually appealing and functional designs has never been easier!

 

Cover image from: Html and css collage concept

Written by
Author Avatar
Engineering Core
ISB Vietnam's skilled software engineers deliver high-quality applications, leveraging their extensive experience in developing financial tools, business management systems, medical technology, and mobile/web platforms.

COMPANY PROFILE

Please check out our Company Profile.

Download

COMPANY PORTFOLIO

Explore my work!

Download

ASK ISB Vietnam ABOUT DEVELOPMENT

Let's talk about your project!

Contact US