У меня есть div, и я хочу добавить логотип в его середину. Если я напишу:
<div id="header">
<img id="logo" src="img/logo.png" title="Logo" />
</div>
#logo {
margin: 0 auto 0 auto;
width: 278px;
}
Ничего не произошло. Но если я сделаю специальный div для изображения, вот так:
<div id="header">
<div id = "logo">
<img src="img/logo.png" title="Logo" />
</div>
</div>
#logo {
margin: 0 auto 0 auto;
width: 278px;
}
Он работает, и изображение центрировано. Зачем?
Изображения встроены по умолчанию, поэтому они не будут соблюдать эту margin: auto
с битой. То, что вы можете сделать (без дополнительного div), дает text-align: center
для #header.
Причина, по которой вспомогательный div работает, заключается в том, что вы обертываете изображение в div с одинаковыми размерами и являетесь блочным элементом, div будет уважать маржу auto и центр.
этот пост может дать вам некоторую помощь
Это объясняет вам, почему вам нужно обернуть div и как это сделать без оболочки div (но может иметь проблему с совместимостью с браузером)
display: block
в первый блок CSS.