W tym przykładzie obraz nie jest wyśrodkowany. Czemu? Moja przeglądarka to Google Chrome 10 w systemie Windows 7, a nie IE.
<img src="/img/logo.png" style="margin:0px auto;"/>
css
google-chrome
margin
centering
Projektant stron internetowych
źródło
źródło
Odpowiedzi:
dodaj
display:block;
i zadziała. Obrazy są domyślnie wbudowaneAby wyjaśnić, domyślna szerokość
block
elementu toauto
, co oczywiście wypełnia całą dostępną szerokość elementu zawierającego.Ustawiając margines na
auto
, przeglądarka przypisuje połowę pozostałej przestrzeni do,margin-left
a drugą połowę domargin-right
.źródło
margin:auto
aby wyśrodkować element w przepływie. (display:block
lubdisplay:table
,position:static
lubposition:relative
, itp.)0px auto
na zwykłyauto
, nadal nie działa.W pewnych okolicznościach (jak we wcześniejszych wersjach IE, Gecko, Webkit) i dziedziczenia, elementy z
position:relative;
zapobiegniemargin:0 auto;
z pracy, nawet jeślitop
,right
,bottom
, ileft
nie są ustawione.Ustawienie elementu na
position:static;
(domyślne) może to naprawić w tych okolicznościach. Ogólnie rzecz biorąc, elementy blokowe o określonej szerokości będą respektowanemargin:0 auto;
przy użyciu pozycjonowania alborelative
lubstatic
.źródło
margin: 0 auto
działa dobrze na względnie pozycjonowanych elementach, o ile są to elementy blokowe bez pływaka i określonej szerokości ...float
idisplay
mogą zmienić to zachowanie.Możesz wyśrodkować automatyczną szerokość div za pomocą
display:table;
źródło
W moim przypadku problem polegał na tym, że ustawiłem minimalną i maksymalną szerokość bez samej szerokości .
źródło
position:static
, mieć ustalonywidth:
zestaw i byćdisplay:block
elementemJeśli nie dodamy szerokości i nie dodamy
margin:auto
, myślę, że to nie zadziała. To z mojego doświadczenia. Szerokość daje wyobrażenie, gdzie dokładnie musi zapewnić równe marginesy.źródło
istnieje alternatywa dla
margin-left:auto; margin-right: auto;
lubmargin:0 auto;
dla tych, które używają wposition:absolute;
ten sposób:ustawiasz lewą pozycję elementu na 50% (
left:50%;
), ale to nie wyśrodkuje go poprawnie, aby element był prawidłowo wyśrodkowany, musisz nadać mu margines minus połowa jego szerokości, który idealnie wyśrodkuje Twój elementoto przykład: http://jsfiddle.net/35ERq/3/
źródło
W przypadku przycisku bootstrap:
źródło
umieść to w css ciała: tło: # 3D668F; następnie dodaj: display: block; margines: auto; do pliku css img.
źródło