Ich habe ein Div, dessen Breite 100% beträgt.
Ich möchte einen Knopf darin zentrieren. Wie kann ich das tun?
<div style="width:100%; height:100%; border: 1px solid">
<button type="button">hello</button>
</div>
Ich habe ein Div, dessen Breite 100% beträgt.
Ich möchte einen Knopf darin zentrieren. Wie kann ich das tun?
<div style="width:100%; height:100%; border: 1px solid">
<button type="button">hello</button>
</div>
Antworten:
Aktualisierte Antwort
Aktualisieren, weil ich bemerkt habe, dass es eine aktive Antwort ist, aber Flexbox wäre jetzt der richtige Ansatz.
Live-Demo
Vertikale und horizontale Ausrichtung.
Nur horizontal (solange die Hauptflexachse horizontal ist, was standardmäßig ist)
Originalantwort mit fester Breite und ohne Flexbox
Wenn das Originalposter eine vertikale und mittlere Ausrichtung für eine feste Breite und Höhe der Schaltfläche wünscht, versuchen Sie Folgendes
Live-Demo
CSS
Verwenden Sie entweder nur für die horizontale Ausrichtung
oder
quelle
Sie könnten einfach machen:
Oder Sie könnten es stattdessen so machen:
Der erste wird alles innerhalb des Div zentrieren. Der andere richtet nur die Taste in der Mitte aus.
quelle
et voila:
Update : Wenn OP nach horizontaler und vertikaler Mitte sucht, wird diese Antwort dies für ein Element mit fester Breite / Höhe tun.
quelle
Margin: 0 auto; ist die richtige Antwort nur für die horizontale Zentrierung. Für die Zentrierung in beide Richtungen funktioniert so etwas mit jquery:
Update ... fünf Jahre später könnte man die Flexbox auf dem übergeordneten DIV-Element verwenden, um die Schaltfläche einfach horizontal und vertikal zu zentrieren.
Einschließlich aller Browserpräfixe für beste Unterstützung
Code-Snippet anzeigen
quelle
Mit den begrenzten Details gehe ich von der einfachsten Situation aus und sage, dass Sie Folgendes verwenden können
text-align: center
:http://jsfiddle.net/pMxty/
quelle
Flexbox verwenden
Und dann fügen Sie die Klasse zu Ihrer Schaltfläche hinzu.
quelle
Sie sollten es hier einfach angehen lassen:
Zuerst haben Sie die Anfangsposition Ihres Textes oder Ihrer Schaltfläche:
Durch Hinzufügen dieser CSS-Codezeile zum h2- Tag oder zum div- Tag, das das Button-Tag enthält
Endlich Der Ergebniscode lautet:
quelle
Ich stieß auf diesem und dachte , dass ich die Lösung , die ich als gut verlassen würde, die verwendet
line-height
undtext-align: center
sowohl vertikale als auch horizontale Zentrierung zu tun:Klicken Sie hier, um JSFiddle zu bearbeiten
quelle
Um eine
<button type = "button">
sowohl vertikal als auch horizontal innerhalb einer<div>
Breite zu zentrieren, die wie in Ihrem Fall dynamisch berechnet wird, gehen Sie wie folgt vor:text-align: center;
Umbruch setzen<div>
: Hiermit wird die Schaltfläche zentriert, wenn Sie die Größe<div>
des Fensters (oder besser gesagt des Fensters) ändern.Für die vertikale Ausrichtung müssen Sie
margin: valuepx;
die Schaltfläche festlegen . Dies ist die Regel für die Berechnungvaluepx
:valuepx = (wrappingDIVheight - buttonHeight)/2
Hier ist eine JS Bin-Demo .
quelle
Eine supereinfache Antwort, die in den meisten Fällen gilt, besteht darin, den Rand auf
0 auto
und die Anzeige auf einzustellenblock
. Sie können sehen, wie ich meine Schaltfläche in meiner Demo auf CodePen zentriert habequelle
Am einfachsten ist es, es als "div" einzugeben. Geben Sie ihm einen "Rand: 0 auto". Wenn Sie jedoch möchten, dass es zentriert wird, müssen Sie ihm eine Breite geben
quelle
Responsive CSS-Option zum vertikalen und horizontalen Zentrieren einer Schaltfläche, ohne sich um die Größe des übergeordneten Elements zu kümmern (Verwendung von Datenattribut-Hooks aus Gründen der Klarheit und Trennung) :
HTML
CSS
Geige: https://jsfiddle.net/crrollyson/zebo1z8f/
quelle
Reaktionsschnelle Möglichkeit, Ihren Button in einem Div zu zentrieren:
quelle
Angenommen, div ist #div und die Schaltfläche ist #button:
Verschachteln Sie dann den Button wie gewohnt in div.
quelle