2013-03-08 13 views

Odpowiedz

54
button { 
    margin:0 auto; 
    display:block; 
} 

jsFiddle example

+0

Jeśli używasz tego w realnym świecie, musisz zwiększyć swoistość, że jeśli chcesz element przycisk wyśrodkowany wszędzie. –

+0

Mam pytanie. Element block użyje pełnej szerokości swojego elementu nadrzędnego. Zobacz http://jsfiddle.net/xmpDD/1. Dlaczego element przycisku nie używa pełnej szerokości elementu div. Prawdą jest, że szerokość elementu przycisku wynosi 54 piksele. Nie mogę tego zrozumieć. Dziękuję Ci! – weilou

+0

Czy '0' jest rzeczywiście konieczne? 'margin: auto;' wydaje się działać w FF, IE i Chrome. –

2

Trzeba display: block; margin: auto; na <button>. jsFiddle

+0

Mam pytanie. Element block użyje pełnej szerokości swojego elementu nadrzędnego. Zobacz http://jsfiddle.net/xmpDD/1. Dlaczego element przycisku nie używa pełnej szerokości elementu div. Prawdą jest, że szerokość elementu przycisku wynosi 54 piksele. Nie mogę tego zrozumieć. Dziękuję Ci! – weilou

+1

@weilou Właściwie elementy blokowe niekoniecznie muszą mieć szerokość rodzica. Ich łączna szerokość, marginesy i dopełnienie są równe szerokości ich rodzica. Mam nadzieję, że pomogło! –

+0

Dziękuję bardzo! Phillip. Twój komentarz pomaga mi! – weilou

3

Inni już wspomniano metody margin: 0 auto;, ale jeśli chciał wyjaśnić, przeglądarka dzieli się na dostępnej przestrzeni w jakikolwiek pojemnik Twój elementem jest.

również podkreślić, to prawdopodobnie będziesz trzeba również podać elementowi szerokość, aby to działało poprawnie.

Tak ogólnie:

button { 
    display:inline-block; //Typically a button wouldn't need its own line   
    margin:0 auto; 
    width: 200px; //or whatever 
} 
Powiązane problemy