-1

If I have css floated grid like this

.float {
  float: left;
  width: 45%;
  border: 1px solid black;
  margin: 1%;
  padding: 1%;
}

How can I force each new line to be aligned at same horizont level?

http://codepen.io/anon/pen/Kzezjp?editors=1100

Karolina Ticha
  • 531
  • 4
  • 19

2 Answers2

0

If you want each effective row to start on a new vertical level, you need to clear the floats after each 2nd div.

Codepen Demo

.float {
  box-sizing: border-box;
  float: left;
  width: 45%;
  border: 1px solid black;
  margin: 1%;
  padding: 1%;
}
div:nth-of-type(2n+1) {
  clear: left;
}
<div class="float">
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean nunc justo, efficitur eu nisl in, convallis aliquet sapien. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean
  nunc justo, efficitur eu nisl in, convallis aliquet sapien.nunc justo, efficitur eu nisl in, convallis aliquet sapien.
</div>
<div class="float">
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean nunc justo, efficitur eu nisl in, convallis aliquet sapien. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean nunc justo, efficitur eu nisl in, convallis aliquet sapien.
</div>

<div class="float">
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean nunc justo, efficitur eu nisl in, convallis aliquet sapien. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean
  nunc justo, efficitur eu nisl in, convallis aliquet sapien.nunc justo, efficitur eu nisl in, convallis aliquet sapien.
</div>
<div class="float">
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean nunc justo, efficitur eu nisl in, convallis aliquet sapien. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean nunc justo, efficitur eu nisl in, convallis aliquet sapien.
</div>
Paulie_D
  • 107,962
  • 13
  • 142
  • 161
-1

I think you want to use vertical-align and you should decrease the width:

    .float {
      float: left;
      width: 45%;
      border: 1px solid black;
      margin: 1%;
      padding: 1%;
    vertical-align:middle;
width:30%;
    }
João Pedro
  • 546
  • 1
  • 5
  • 19