Ich habe einen einfachen Satz Karten, die nebeneinander Bilder zeigen, die ich auf die Bildschirmbreite ansprechen muss. So einfach inline-block
verwenden, habe ich diese Struktur:Warum erzwingen Divs mit einer prozentualen Breite einen Inline-Block auf 100% Breite?
<div class="cards" id="ex1">
<div class="card">
<img src="http://www.clker.com/cliparts/5/b/a/7/1194986784455829849basebalm_ganson.svg.med.png" />
</div>
<div class="card">
<img src="http://www.clker.com/cliparts/d/1/4/6/11971185311926706097Gioppino_Basketball.svg.med.png" />
</div>
</div>
Mit dieser CSS:
.cards {
display: inline-block;
border: 2px solid #808080;
border-radius: 2px;
padding: 10px;
margin-bottom: 20px;
}
#ex1 .card {
width: 35%;
display: inline-block;
}
Aber zu meiner Überraschung, die Mutter div, .cards
, die Breite der Seite erstreckt, als ob es display: block
waren :
wenn ich jedoch fest einprogrammieren die Breiten der .card
di vs, es funktioniert wie erwartet. Hier ist eine fiddle, die die beiden vergleicht.
Warum beachtet inline-block
keine Prozentsätze, die nicht zu 100% addiert werden? Gibt es eine Möglichkeit, dies mit Prozentsätzen zu tun? (Ich könnte sie beide 50% machen, aber selbst mit box-sizing: border-box
kann dies dazu führen, dass sie vertikal stapeln.)