4

I have made 6 cards and I want to display it in 3 + 3 sequence on my website. The problem is that all my cards are not coming as I had anticipated for some reason.

What I mean by 3 + 3 sequence is that, the cards should be displayed such that the first row contains 3 cards and the second row too contains 3 cards.

You can run the code snippet to know how the result looks like.

Here is the code-

.cardsForhhiae {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  border-radius: 10px;
}

.cardsForhhiae p {
  font-family: 'Roboto', sans-serif;
  background-color: #68b0ab;
  padding: 20px;
  font-size: 20px;
  color: #000;
  margin: 2%;
  border-radius: 10px;
  box-shadow: 0 0 7px 0px;
}
<div class="cardsForhhiae">

  <p>
    In ultrices pulvinar enim, et faucibus ante bibendum sit amet. Maecenas venenatis mauris sed erat porta imperdiet ut congue eros. Duis porta nec enim eget venenatis. Morbi vestibulum tellus in ornare hendrerit. Phasellus eu turpis sit amet nulla iaculis
    efficitur. In nisl nibh, sagittis sed enim eget, finibus malesuada purus. Maecenas gravida tempor condimentum.
  </p>

  <p>
    Vivamus turpis ante, condimentum eget sapien ut, maximus efficitur massa. Aenean eu scelerisque velit, a facilisis lectus. Quisque porttitor accumsan arcu in ullamcorper. In quis elit est. Maecenas blandit dui eget nulla eleifend lacinia. Mauris blandit,
    leo id venenatis iaculis, dolor turpis tincidunt ligula, a imperdiet nulla elit et eros. Donec tristique tincidunt risus et finibus. Maecenas laoreet quis enim ut porta.

  </p>

  <p>
    Quisque rutrum aliquam dolor, et vulputate mauris auctor nec. Duis molestie massa sed est efficitur, eget bibendum nisi mollis. Nunc sit amet diam vel nibh malesuada rutrum. Vestibulum libero odio, commodo ac justo vitae, vulputate sodales diam. Donec
    ornare tellus sed tortor finibus ultrices. Mauris sit amet convallis lorem. In venenatis, ante ut dapibus convallis, mauris arcu euismod nunc, quis bibendum tellus tortor vitae nunc.
  </p>

  <p>
    Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Aliquam erat volutpat. Etiam ullamcorper augue ac dui ullamcorper dapibus. Nulla laoreet nulla nibh. Sed ex mauris, porta eu sapien ut, maximus efficitur neque.
    Donec sit amet accumsan erat, venenatis porta libero. Integer aliquam rutrum ligula, nec sagittis arcu euismod eu. Praesent aliquam dictum turpis a rhoncus. Ut cursus, elit vitae scelerisque cursus, lorem urna scelerisque nibh, at venenatis tortor
    enim non lectus. Quisque suscipit quis enim ac hendrerit. Integer ultrices maximus nunc, et porta magna mattis ultricies. Integer non vestibulum leo.
  </p>

  <p>
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vitae mattis nulla, et bibendum mauris. Donec interdum nibh ante. Nullam viverra tellus vitae scelerisque semper. Donec luctus mi nibh. Nunc convallis velit et ante molestie aliquam. Proin
    varius volutpat sem, ut blandit justo tincidunt ac. Vestibulum iaculis, nisl eu sollicitudin tincidunt, eros diam laoreet arcu, vel laoreet lectus lacus vel est. Nullam auctor convallis enim id dictum. Vestibulum vestibulum mi id justo interdum dignissim.
    Mauris pharetra imperdiet lectus. Maecenas posuere hendrerit fringilla. Nunc sed augue urna. Phasellus et metus nulla. Phasellus sed sollicitudin lacus.
  </p>

  <p>
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vitae mattis nulla, et bibendum mauris. Donec interdum nibh ante. Nullam viverra tellus vitae scelerisque semper. Donec luctus mi nibh. Nunc convallis velit et ante molestie aliquam. Proin
    varius volutpat sem, ut blandit justo tincidunt ac. Vestibulum iaculis, nisl eu sollicitudin tincidunt, eros diam laoreet arcu, vel laoreet lectus lacus vel est. Nullam auctor convallis enim id dictum. Vestibulum vestibulum mi id justo interdum dignissim.
    Mauris pharetra imperdiet lectus. Maecenas posuere hendrerit fringilla. Nunc sed augue urna. Phasellus et metus nulla. Phasellus sed sollicitudin lacus.
  </p>
</div>
Zaid Ahmad
  • 87
  • 12

3 Answers3

4

Use flex-basis and max-width to .cardsForhhiae p

That is,

if we take max-width:33%and flex-basis:33% in 3 column per row but here you are used margin and padding so it minus from it.

margin:2% = 4% both right and left margin

padding:20px = 40px both right and left padding

  max-width:calc(33% - (4% + 40px));
  flex-basis:calc(33% - (4% + 40px));

About flex-basis

The flex-basis CSS property sets the initial main size of a flex item. It sets the size of the content box unless otherwise set with box-sizing.

About max-width

The max-width CSS property sets the maximum width of an element. It prevents the used value of the width property from becoming larger than the value specified by max-width.

About Calc()

The calc() CSS function lets you perform calculations when specifying CSS property values. It can be used anywhere a <length>, <frequency>, <angle>, <time>, <percentage>, <number>, or <integer> is allowed.

Working DEMO

.cardsForhhiae {
  display: flex;
  flex-wrap: wrap;
  justify-content:center;
  border-radius: 10px;
}

.cardsForhhiae p {
  font-family: 'Roboto', sans-serif;
  background-color: #68b0ab;
  padding: 20px;
  font-size: 20px;
  color: #000;
  margin: 2%;
  border-radius: 10px;
  max-width:calc(33% - (4% + 40px));
  flex-basis:calc(33% - (4% + 40px));
  box-shadow: 0 0 7px 0px;
}
<div class="cardsForhhiae">

  <p>
    In ultrices pulvinar enim, et faucibus ante bibendum sit amet. Maecenas venenatis mauris sed erat porta imperdiet ut congue eros. Duis porta nec enim eget venenatis. Morbi vestibulum tellus in ornare hendrerit. Phasellus eu turpis sit amet nulla iaculis
    efficitur. In nisl nibh, sagittis sed enim eget, finibus malesuada purus. Maecenas gravida tempor condimentum.
  </p>

  <p>
    Vivamus turpis ante, condimentum eget sapien ut, maximus efficitur massa. Aenean eu scelerisque velit, a facilisis lectus. Quisque porttitor accumsan arcu in ullamcorper. In quis elit est. Maecenas blandit dui eget nulla eleifend lacinia. Mauris blandit,
    leo id venenatis iaculis, dolor turpis tincidunt ligula, a imperdiet nulla elit et eros. Donec tristique tincidunt risus et finibus. Maecenas laoreet quis enim ut porta.

  </p>

  <p>
    Quisque rutrum aliquam dolor, et vulputate mauris auctor nec. Duis molestie massa sed est efficitur, eget bibendum nisi mollis. Nunc sit amet diam vel nibh malesuada rutrum. Vestibulum libero odio, commodo ac justo vitae, vulputate sodales diam. Donec
    ornare tellus sed tortor finibus ultrices. Mauris sit amet convallis lorem. In venenatis, ante ut dapibus convallis, mauris arcu euismod nunc, quis bibendum tellus tortor vitae nunc.
  </p>

  <p>
    Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Aliquam erat volutpat. Etiam ullamcorper augue ac dui ullamcorper dapibus. Nulla laoreet nulla nibh. Sed ex mauris, porta eu sapien ut, maximus efficitur neque.
    Donec sit amet accumsan erat, venenatis porta libero. Integer aliquam rutrum ligula, nec sagittis arcu euismod eu. Praesent aliquam dictum turpis a rhoncus. Ut cursus, elit vitae scelerisque cursus, lorem urna scelerisque nibh, at venenatis tortor
    enim non lectus. Quisque suscipit quis enim ac hendrerit. Integer ultrices maximus nunc, et porta magna mattis ultricies. Integer non vestibulum leo.
  </p>

  <p>
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vitae mattis nulla, et bibendum mauris. Donec interdum nibh ante. Nullam viverra tellus vitae scelerisque semper. Donec luctus mi nibh. Nunc convallis velit et ante molestie aliquam. Proin
    varius volutpat sem, ut blandit justo tincidunt ac. Vestibulum iaculis, nisl eu sollicitudin tincidunt, eros diam laoreet arcu, vel laoreet lectus lacus vel est. Nullam auctor convallis enim id dictum. Vestibulum vestibulum mi id justo interdum dignissim.
    Mauris pharetra imperdiet lectus. Maecenas posuere hendrerit fringilla. Nunc sed augue urna. Phasellus et metus nulla. Phasellus sed sollicitudin lacus.
  </p>

  <p>
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vitae mattis nulla, et bibendum mauris. Donec interdum nibh ante. Nullam viverra tellus vitae scelerisque semper. Donec luctus mi nibh. Nunc convallis velit et ante molestie aliquam. Proin
    varius volutpat sem, ut blandit justo tincidunt ac. Vestibulum iaculis, nisl eu sollicitudin tincidunt, eros diam laoreet arcu, vel laoreet lectus lacus vel est. Nullam auctor convallis enim id dictum. Vestibulum vestibulum mi id justo interdum dignissim.
    Mauris pharetra imperdiet lectus. Maecenas posuere hendrerit fringilla. Nunc sed augue urna. Phasellus et metus nulla. Phasellus sed sollicitudin lacus.
  </p>
</div>

Responsive Flex

Desktop view (3 ITEM per ROW)

enter image description here

iPad View(2 ITEM per ROW)

enter image description here

iPhone View(1 ITEM per ROW)

enter image description here

.cardsForhhiae {
  display: flex;
  flex-wrap: wrap;
  justify-content:center;
  border-radius: 10px;
}

.cardsForhhiae p {
  font-family: 'Roboto', sans-serif;
  background-color: #68b0ab;
  padding: 20px;
  font-size: 20px;
  color: #000;
  margin: 2%;
  border-radius: 10px;
  max-width:calc(33% - (4% + 40px));
  flex-basis:calc(33% - (4% + 40px));
  box-shadow: 0 0 7px 0px;
}

@media only screen and (max-width:980px){
  .cardsForhhiae p {
    max-width:calc(50% - (4% + 40px));
    flex-basis:calc(50% - (4% + 40px));
  }
}

@media only screen and (max-width:640px){
  .cardsForhhiae p {
    max-width:calc(100% - (4% + 40px));
    flex-basis:calc(100% - (4% + 40px));
  }
}
<div class="cardsForhhiae">

  <p>
    In ultrices pulvinar enim, et faucibus ante bibendum sit amet. Maecenas venenatis mauris sed erat porta imperdiet ut congue eros. Duis porta nec enim eget venenatis. Morbi vestibulum tellus in ornare hendrerit. Phasellus eu turpis sit amet nulla iaculis
    efficitur. In nisl nibh, sagittis sed enim eget, finibus malesuada purus. Maecenas gravida tempor condimentum.
  </p>

  <p>
    Vivamus turpis ante, condimentum eget sapien ut, maximus efficitur massa. Aenean eu scelerisque velit, a facilisis lectus. Quisque porttitor accumsan arcu in ullamcorper. In quis elit est. Maecenas blandit dui eget nulla eleifend lacinia. Mauris blandit,
    leo id venenatis iaculis, dolor turpis tincidunt ligula, a imperdiet nulla elit et eros. Donec tristique tincidunt risus et finibus. Maecenas laoreet quis enim ut porta.

  </p>

  <p>
    Quisque rutrum aliquam dolor, et vulputate mauris auctor nec. Duis molestie massa sed est efficitur, eget bibendum nisi mollis. Nunc sit amet diam vel nibh malesuada rutrum. Vestibulum libero odio, commodo ac justo vitae, vulputate sodales diam. Donec
    ornare tellus sed tortor finibus ultrices. Mauris sit amet convallis lorem. In venenatis, ante ut dapibus convallis, mauris arcu euismod nunc, quis bibendum tellus tortor vitae nunc.
  </p>

  <p>
    Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Aliquam erat volutpat. Etiam ullamcorper augue ac dui ullamcorper dapibus. Nulla laoreet nulla nibh. Sed ex mauris, porta eu sapien ut, maximus efficitur neque.
    Donec sit amet accumsan erat, venenatis porta libero. Integer aliquam rutrum ligula, nec sagittis arcu euismod eu. Praesent aliquam dictum turpis a rhoncus. Ut cursus, elit vitae scelerisque cursus, lorem urna scelerisque nibh, at venenatis tortor
    enim non lectus. Quisque suscipit quis enim ac hendrerit. Integer ultrices maximus nunc, et porta magna mattis ultricies. Integer non vestibulum leo.
  </p>

  <p>
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vitae mattis nulla, et bibendum mauris. Donec interdum nibh ante. Nullam viverra tellus vitae scelerisque semper. Donec luctus mi nibh. Nunc convallis velit et ante molestie aliquam. Proin
    varius volutpat sem, ut blandit justo tincidunt ac. Vestibulum iaculis, nisl eu sollicitudin tincidunt, eros diam laoreet arcu, vel laoreet lectus lacus vel est. Nullam auctor convallis enim id dictum. Vestibulum vestibulum mi id justo interdum dignissim.
    Mauris pharetra imperdiet lectus. Maecenas posuere hendrerit fringilla. Nunc sed augue urna. Phasellus et metus nulla. Phasellus sed sollicitudin lacus.
  </p>

  <p>
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vitae mattis nulla, et bibendum mauris. Donec interdum nibh ante. Nullam viverra tellus vitae scelerisque semper. Donec luctus mi nibh. Nunc convallis velit et ante molestie aliquam. Proin
    varius volutpat sem, ut blandit justo tincidunt ac. Vestibulum iaculis, nisl eu sollicitudin tincidunt, eros diam laoreet arcu, vel laoreet lectus lacus vel est. Nullam auctor convallis enim id dictum. Vestibulum vestibulum mi id justo interdum dignissim.
    Mauris pharetra imperdiet lectus. Maecenas posuere hendrerit fringilla. Nunc sed augue urna. Phasellus et metus nulla. Phasellus sed sollicitudin lacus.
  </p>
</div>
Rayees AC
  • 4,426
  • 3
  • 8
  • 31
1

If you have the option you could use grid

.cardsForhhiae {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
  gap: 1rem;
  border-radius: 10px;
}

.cardsForhhiae p {
  font-family: 'Roboto', sans-serif;
  background-color: #68b0ab;
  padding: 20px;
  font-size: 20px;
  color: #000;
  margin: 2%;
  border-radius: 10px;
  box-shadow: 0 0 7px 0px;
}
<div class="cardsForhhiae">

  <p>
    In ultrices pulvinar enim, et faucibus ante bibendum sit amet. Maecenas venenatis mauris sed erat porta imperdiet ut congue eros. Duis porta nec enim eget venenatis. Morbi vestibulum tellus in ornare hendrerit. Phasellus eu turpis sit amet nulla iaculis
    efficitur. In nisl nibh, sagittis sed enim eget, finibus malesuada purus. Maecenas gravida tempor condimentum.
  </p>

  <p>
    Vivamus turpis ante, condimentum eget sapien ut, maximus efficitur massa. Aenean eu scelerisque velit, a facilisis lectus. Quisque porttitor accumsan arcu in ullamcorper. In quis elit est. Maecenas blandit dui eget nulla eleifend lacinia. Mauris blandit,
    leo id venenatis iaculis, dolor turpis tincidunt ligula, a imperdiet nulla elit et eros. Donec tristique tincidunt risus et finibus. Maecenas laoreet quis enim ut porta.

  </p>

  <p>
    Quisque rutrum aliquam dolor, et vulputate mauris auctor nec. Duis molestie massa sed est efficitur, eget bibendum nisi mollis. Nunc sit amet diam vel nibh malesuada rutrum. Vestibulum libero odio, commodo ac justo vitae, vulputate sodales diam. Donec
    ornare tellus sed tortor finibus ultrices. Mauris sit amet convallis lorem. In venenatis, ante ut dapibus convallis, mauris arcu euismod nunc, quis bibendum tellus tortor vitae nunc.
  </p>

  <p>
    Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Aliquam erat volutpat. Etiam ullamcorper augue ac dui ullamcorper dapibus. Nulla laoreet nulla nibh. Sed ex mauris, porta eu sapien ut, maximus efficitur neque.
    Donec sit amet accumsan erat, venenatis porta libero. Integer aliquam rutrum ligula, nec sagittis arcu euismod eu. Praesent aliquam dictum turpis a rhoncus. Ut cursus, elit vitae scelerisque cursus, lorem urna scelerisque nibh, at venenatis tortor
    enim non lectus. Quisque suscipit quis enim ac hendrerit. Integer ultrices maximus nunc, et porta magna mattis ultricies. Integer non vestibulum leo.
  </p>

  <p>
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vitae mattis nulla, et bibendum mauris. Donec interdum nibh ante. Nullam viverra tellus vitae scelerisque semper. Donec luctus mi nibh. Nunc convallis velit et ante molestie aliquam. Proin
    varius volutpat sem, ut blandit justo tincidunt ac. Vestibulum iaculis, nisl eu sollicitudin tincidunt, eros diam laoreet arcu, vel laoreet lectus lacus vel est. Nullam auctor convallis enim id dictum. Vestibulum vestibulum mi id justo interdum dignissim.
    Mauris pharetra imperdiet lectus. Maecenas posuere hendrerit fringilla. Nunc sed augue urna. Phasellus et metus nulla. Phasellus sed sollicitudin lacus.
  </p>

  <p>
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc vitae mattis nulla, et bibendum mauris. Donec interdum nibh ante. Nullam viverra tellus vitae scelerisque semper. Donec luctus mi nibh. Nunc convallis velit et ante molestie aliquam. Proin
    varius volutpat sem, ut blandit justo tincidunt ac. Vestibulum iaculis, nisl eu sollicitudin tincidunt, eros diam laoreet arcu, vel laoreet lectus lacus vel est. Nullam auctor convallis enim id dictum. Vestibulum vestibulum mi id justo interdum dignissim.
    Mauris pharetra imperdiet lectus. Maecenas posuere hendrerit fringilla. Nunc sed augue urna. Phasellus et metus nulla. Phasellus sed sollicitudin lacus.
  </p>
</div>
Jason
  • 367
  • 1
  • 8
0

.quodrant{
width: 100%;
height: 100vh;
margin: 0;
padding: 0;
}

.qtop,
.qbottom{
    width: 96%;
    height: 46vh;
}

.card{
    display: flex;
    align-items: center;
    justify-content: space-around;
    float: left;
    width: 25%;
    height: 96%;
    border-radius: 30px;
    margin: 2%;
    padding: 2%;
    overflow: hidden;
}

.quodrant1{
    background-color: #948be5;
}

.quodrant2{
    background-color: #22e235;
}

.quodrant3{
    background-color: #086e75;
}

.quodrant4{ 
    background-color: #7cf5f9;
}

.quodrant5{ 
    background-color: #8768ae;
}

.quodrant6{ 
    background-color: #be3782;
}
<div class='quodrant'>
    <div class='qtop'>
        <div class='card quodrant1'>
          In ultrices pulvinar enim, et faucibus ante bibendum sit amet. Maecenas venenatis mauris sed erat porta imperdiet ut congue eros. Duis porta nec enim eget venenatis. Morbi vestibulum tellus in ornare hendrerit. Phasellus eu turpis sit amet nulla iaculis
        </div>
        <div class='card quodrant2'>
          In ultrices pulvinar enim, et faucibus ante bibendum sit amet. Maecenas venenatis mauris sed erat porta imperdiet ut congue eros. Duis porta nec enim eget venenatis. Morbi vestibulum tellus in ornare hendrerit. Phasellus eu turpis sit amet nulla iaculis
        </div>
        <div class='card quodrant3'>
          In ultrices pulvinar enim, et faucibus ante bibendum sit amet. Maecenas venenatis mauris sed erat porta imperdiet ut congue eros. Duis porta nec enim eget venenatis. Morbi vestibulum tellus in ornare hendrerit. Phasellus eu turpis sit amet nulla iaculis
        </div>
    </div>
    <div class='qbottom'>
        <div class='card quodrant4'>
          In ultrices pulvinar enim, et faucibus ante bibendum sit amet. Maecenas venenatis mauris sed erat porta imperdiet ut congue eros. Duis porta nec enim eget venenatis. Morbi vestibulum tellus in ornare hendrerit. Phasellus eu turpis sit amet nulla iaculis
        </div>
        <div class='card quodrant5'>
          In ultrices pulvinar enim, et faucibus ante bibendum sit amet. Maecenas venenatis mauris sed erat porta imperdiet ut congue eros. Duis porta nec enim eget venenatis. Morbi vestibulum tellus in ornare hendrerit. Phasellus eu turpis sit amet nulla iaculis
        </div>
        <div class='card quodrant6'>
          In ultrices pulvinar enim, et faucibus ante bibendum sit amet. Maecenas venenatis mauris sed erat porta imperdiet ut congue eros. Duis porta nec enim eget venenatis. Morbi vestibulum tellus in ornare hendrerit. Phasellus eu turpis sit amet nulla iaculis
        </div>
    </div>
</div>   
Weilory
  • 2,621
  • 19
  • 35