Hier ist ein kleiner Trick, den Sie beachten sollten. Wenn Sie zwischen dem Schließen des ersten Div und dem Öffnen des zweiten Divisors Leerzeichen einfügen, funktionieren Ihre 50% nicht, da der Space im Browser angezeigt wird.
Es gibt mehrere Möglichkeiten, dies zu tun. Wenn Sie nur modernen Browser (Internet Explorer 9 +, FF, Chrome, Safari) sind Targeting, können Sie inline-block
verwenden:
<style>
.childDiv {
display: inline-block;
width: 50%;
}
</style>
<div class="parentDiv">
<div class="childDiv"> // 50% width
</div><div class="childDiv"> // 50% width
</div>
</div>
jedoch IE7 nicht inline-block
nicht unterstützt, so können Sie auf die „alte Schule“ Methode gehen , mit Schwimmern:
<style>
.childDiv {
float: left;
width: 50%;
}
</style>
<div class="parentDiv">
<div class="childDiv"> // 50% width
</div><div class="childDiv"> // 50% width
</div>
<div style="clear: both"></div>
</div>
Wenn Sie beiden Spalten sicherstellen wollen, sind genau die gleiche Breite und haben immer noch einen kleinen Spalt zwischen ihnen, verwenden verschiedene Arten von Schwimmern. Beachten Sie diese Methode nicht erfordert, dass Sie Leerzeichen in Ihrem Markup zwischen divs beseitigen, solange die Breite, die Sie verwenden, ist weniger als 50%:
<style>
.childDiv {
width: 49.5%;
}
.left { float: left; }
.right{ float: right; }
</style>
<div class="parentDiv">
<div class="childDiv left"> // 49.5% width
</div>
<div class="childDiv right"> // 49.5% width
</div>
<div style="clear: both"></div>
</div>
Dies könnte ich einfach, aber ich habe Probleme beim Verständnis Ihrer Frage. – Bulvak
So wie Christoph es zeigt. Ein prozentualer Wert in CSS ist immer relativ zum übergeordneten div. Stellen Sie sicher, dass Sie die Breite von "parentDiv" festgelegt haben. – poepje
Standardmäßig wird jedoch ein "div" als Block angezeigt, so dass es 100% der Breite seines Elternteils einnimmt (was, wenn dieser Elternteil "Körper" ist, beträgt die Breite 100% des Ansichtsfensters). – saluce