frazman
frazman

Reputation: 33293

How to add padding in between cards in bootstrap

I have a row consisting of 8 cards. I want to have all these in single line. There is a margin of column size 2 on left side and I have set each card of size 1 (so 8 + 2 = 10) But then, my row is all messed up. enter image description here

Currently my code for border is

<div class="row">
<div class="col-sm-2">
<div class="card-header"> Discover new genres {{genre}}</div>
</div>
  <div class="col-lg-1 text-center">
    <div class="card border-secondary mb-3" style="width: 10rem;">
      <img class="card-img-top img-responsive full-width circle-img rounded-circle" src="{{rec['artpath']}}" alt="{{rec['name']}}"> 
</img>
   <div class="card-block">
    <div class="card-body"><p class="card-title text-center "><small>{{rec["name"]}}</small></p></div>
   </div>
    </div>
</div> 
</div>

I want the card to have this width (so not card to be small)..It can overflow on the right side of the screen.. How do i do this?

Upvotes: 2

Views: 6192

Answers (1)

Robert
Robert

Reputation: 6967

The problem has to do with your inline style of width:10rem. It's going to supersede the width of col-lg-1 when it is greater than that column width. Removing this inline style results in expected behavior.

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css" integrity="sha384-WskhaSGFgHYWDcbwN70/dfYBj47jz9qbsMId/iRN3ewGhXQFZCSftd1LZCfmhktB" crossorigin="anonymous">

<div class="container-fluid">
  <div class="row">
    <div class="col-4">
      <div class="card-header"> Discover new genres {{genre}}</div>
    </div>

    <div class="col-4 text-center">
      <div class="card border-secondary mb-3" style="">
        <img class="card-img-top img-responsive full-width circle-img rounded-circle" src="{{rec['artpath']}}" alt="{{rec['name']}}"> 
        <div class="card-block">
          <div class="card-body">
            <p class="card-title text-center">
              <small>{{rec["name"]}}</small>
            </p>
          </div>
        </div>
      </div>
    </div> 

    <div class="col-4 text-center">
      <div class="card border-secondary mb-3" style="">
        <img class="card-img-top img-responsive full-width circle-img rounded-circle" src="{{rec['artpath']}}" alt="{{rec['name']}}"> 
        <div class="card-block">
          <div class="card-body">
            <p class="card-title text-center">
              <small>{{rec["name"]}}</small>
            </p>
          </div>
        </div>
      </div>
    </div> 
    
  </div>
</div>

For the purposes of this example I've changed your column breakpoints to something that works better when you choose 'Run Code Snippet'. I suspect you were applying an inline width because col-lg-1 is too small; that being the case I recommend you consider a larger column breakpoint in lieu of inline styles overriding grid behavior.

Upvotes: 2

Related Questions