Home  >  Article  >  Web Front-end  >  How to Create a Responsive Card-Deck with Variable Card Widths in Bootstrap 4?

How to Create a Responsive Card-Deck with Variable Card Widths in Bootstrap 4?

Linda Hamilton
Linda HamiltonOriginal
2024-10-28 22:14:30897browse

How to Create a Responsive Card-Deck with Variable Card Widths in Bootstrap 4?

Bootstrap 4 Card-Deck with Variable Card Widths

Problem:

Bootstrap 4's card-deck feature aligns cards side-by-side, but all cards have the same width regardless of viewport size. This can result in suboptimal presentation on narrower screens.

Solution:

To create a responsive card-deck with varying card widths based on viewport size, you can implement the following steps:

1. Eliminate the Use of Card-Deck:

The card-deck class uses a table-cell layout, which limits flexibility. Instead, use the grid column classes (e.g., col-sm-4, col-lg-2) to define card widths.

2. Enable Flexbox:

Bootstrap 4 Alpha 6 and later versions use flexbox by default. However, if you're using an earlier version, you may need to manually enable it with the following CSS:

.row > div[class*='col-'] {
  display: flex;
  flex: 1 0 auto;
}

3. Set Card Heights:

To ensure all cards have the same height, add the h-100 class to each card:

<div class="card h-100">
  ...
</div>

4. Responsive Breakpoints:

Use the col-- classes to define different card widths for specific viewport sizes (i.e., screen widths):

<div class="card h-100 col-xs-6 col-sm-4 col-md-3 col-lg-2 col-xl-1">
  ...
</div>

Example Code:

<div class="row">
  <div class="card h-100 col-xs-6 col-sm-4 col-md-3 col-lg-2 col-xl-1">
    ...
  </div>
  <div class="card h-100 col-xs-6 col-sm-4 col-md-3 col-lg-2 col-xl-1">
    ...
  </div>
  <div class="card h-100 col-xs-6 col-sm-4 col-md-3 col-lg-2 col-xl-1">
    ...
  </div>
  <div class="card h-100 col-xs-6 col-sm-4 col-md-3 col-lg-2 col-xl-1">
    ...
  </div>
</div>

This solution allows you to create a responsive card-deck that resizes based on viewport size, ensuring your layout adapts to different screens.

The above is the detailed content of How to Create a Responsive Card-Deck with Variable Card Widths in Bootstrap 4?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn