#html #css
#HTML #css
Вопрос:
Я пытаюсь выровнять div по центру шириной 1000 пикселей, а затем внутри указанного div выровнять фрагмент текста на 10 пикселей от левого края и выровнять изображение прямо по середине, но у меня возникают проблемы. Текст смещен с левой стороны экрана, а изображение расположено слева от экрана.
Я не понимаю, что я здесь сделал не так. Я уверен, что решение ошеломляюще очевидно, и я просто туплю.
<!DOCTYPE html>
<html>
<head>
<style>
body {
margin: 0;
padding: 0;
background-color:red;
}
div#headerinner {
position: relative;
margin-left: auto;
margin-right: auto;
width: 1000px;
}
img.header {
position:absolute;
display: block;
margin-left: auto;
margin-right: auto;
}
span#login {
position: absolute;
left: 10px;
}
</style>
</head>
<body>
<div id="headerinner">
<span id="login">Welcome!</span>
<img class="header" src="mysite/heading.png" alt="Header">
</div>
</body>
</html>
Ответ №1:
если вы задаете position: absolute, вы не можете установить margin-left: auto; и margin-right: auto; для этого элемента. таким образом
img.header {
display: block;
margin-left: auto;
margin-right: auto;
}
Ответ №2:
Просто удалите position:absolute
из этого class
img.header
img.header {
/*position:absolute;*/
display: block;
margin-left: auto;
margin-right: auto;
}