Dalam contoh ini gambar tidak berada di tengah. Mengapa? Browser saya adalah Google Chrome v10 di windows 7, bukan IE.
<img src="/img/logo.png" style="margin:0px auto;"/>
css
google-chrome
margin
centering
Desainer web
sumber
sumber
Jawaban:
tambahkan
display:block;
dan itu akan berhasil. Gambar sebaris secara defaultUntuk memperjelas, lebar default untuk
block
elemen adalahauto
, yang tentu saja mengisi seluruh lebar yang tersedia dari elemen penampung.Dengan mengatur margin ke
auto
, browser menetapkan setengah dari sisa ruang kemargin-left
dan setengah lainnya kemargin-right
.sumber
margin:auto
memusatkan item dalam aliran. (display:block
ataudisplay:table
,position:static
atauposition:relative
, dll.)0px auto
menjadi hanyaauto
itu masih tidak berfungsi.Dalam keadaan tertentu (seperti versi sebelumnya dari IE, Gecko, WebKit) dan warisan, unsur dengan
position:relative;
akan mencegahmargin:0 auto;
dari bekerja, bahkan jikatop
,right
,bottom
, danleft
tidak diatur.Menyetel elemen ke
position:static;
(default) dapat memperbaikinya dalam keadaan ini. Umumnya, elemen level blok dengan lebar yang ditentukan akan menghormatimargin:0 auto;
penggunaan salah saturelative
ataustatic
pemosisian.sumber
margin: 0 auto
bekerja dengan baik pada elemen yang diposisikan secara relatif selama mereka adalah elemen blok tanpa float dan lebar yang ditentukan ...float
dandisplay
dapat mengubah perilaku itu.Anda dapat memusatkan div lebar otomatis menggunakan
display:table;
sumber
Dalam kasus saya, masalahnya adalah saya telah mengatur lebar min dan maks tanpa lebar itu sendiri.
sumber
position:static
, memilikiwidth:
set tetap dan menjadidisplay:block
elemenSetiap kali kita tidak menambah lebar dan menambah
margin:auto
, saya kira itu tidak akan berhasil. Ini dari pengalaman saya. Lebar memberi gagasan di mana tepatnya ia perlu memberikan margin yang sama.sumber
ada alternatif untuk
margin-left:auto; margin-right: auto;
ataumargin:0 auto;
untuk yang menggunakanposition:absolute;
ini adalah caranya:Anda mengatur posisi kiri elemen menjadi 50% (
left:50%;
) tetapi itu tidak akan memusatkannya dengan benar agar elemen berada di tengah dengan benar Anda perlu memberinya a margin minus setengah lebarnya, yang akan memusatkan elemen Anda dengan sempurnaberikut ini contohnya: http://jsfiddle.net/35ERq/3/
sumber
Untuk tombol bootstrap:
sumber
letakkan ini di css tubuh: background: # 3D668F; lalu tambahkan: display: block; margin: otomatis; ke css img.
sumber