Wie zentriere ich ein divhorizontal in seinem übergeordneten Element divmit CSS?
<div id='parent' style='width: 100%;'>
<div id='child' style='width: 50px; height: 100px;'>Text</div>
</div>
Wie zentriere ich ein divhorizontal in seinem übergeordneten Element divmit CSS?
<div id='parent' style='width: 100%;'>
<div id='child' style='width: 50px; height: 100px;'>Text</div>
</div>
Antworten:
Ich gehe davon aus, dass das übergeordnete Div keine Breite oder eine breite Breite hat und das untergeordnete Div eine kleinere Breite hat. Im Folgenden wird der Rand für oben und unten auf Null gesetzt und die Seiten werden automatisch angepasst. Dies zentriert die div.
div#child {
margin: 0 auto;
}
text-align: center;das parentDiv einstellen und es dann für das childeine wieder nach links (oder was auch immer) setzen müssen . Nicht sicher, ob dieses Problem IE6 betrifft ...
childDiv in allen von mir überprüften IE-Versionen (IE6-8) scheinbar nach links verschoben - im Vergleich zu Browsern, die mehr Standards entsprechen. Und text-align: center;für die parentund text-align: left;für die childbehoben es für alle diese Versionen.
<div id='parent' style='width: 100%;text-align:center;'>
<div id='child' style='width:50px; height:100px;margin:0px auto;'>Text</div>
</div>
text-align:left;, das #child div
text-align:centerzum Kind div oder zum Elternteil div?
Nur aus Interesse, wenn Sie zwei oder mehr Divs zentrieren möchten (damit sie nebeneinander in der Mitte liegen), gehen Sie wie folgt vor:
<div style="text-align:center;">
<div style="border:1px solid #000; display:inline-block;">Div 1</div>
<div style="border:1px solid red; display:inline-block;">Div 2</div>
</div>
Sie können den Wert "auto" für den linken und rechten Rand verwenden, damit der Browser den verfügbaren Speicherplatz gleichmäßig auf beide Seiten des inneren Bereichs verteilt:
<div id='parent' style='width: 100%;'>
<div id='child' style='width: 50px; height: 100px; margin-left: auto; margin-right: auto'>Text</div>
</div>
<div id='child' style='width: 50px; height: 100px; margin:0 auto;'>Text</div>