#html #css
#HTML #css
Вопрос:
Я застрял с этим, это проблема
<div id="example1">
<div id="example2"> </div>
<div id="example3"> </div>
</div>
Мне нужно выровнять div по идентификатору example3
в примере 2 и, если это возможно, просто в нижнем колонтитуле и в центре div с идентификатором example1
. как я могу это сделать?? у меня есть дни попыток и больше похоже на это.
CSS
#example3{
margin-left:auto;
margin-right:auto;
margin:0;
height:80px;
position:absolute;
top:170px;
}
#example2{
height:153px;
width:305px;
float:left;
background:url(Logo.png);
}
спасибо за вашу помощь
Ответ №1:
Во-первых, position:absolute
это не позволит вам устанавливать поля.
Во-вторых, у вас есть
margin:0;
который сбрасывает ваш auto
слева справа. Попробуйте
margin:0 auto;
Вот JSFiddle, который выполняет то, что вы пытаетесь сделать (более или менее).
Редактировать
Хорошо, но теперь вы ввели третью проблему в float:left
, которая переопределяет auto
поле и всегда перемещается влево.
Кроме того, проблемы, о которых я упоминал выше, не были решены. Подводя итог: никаких плавающих значений, никаких абсолютных позиций, и постарайтесь не переопределять поле, стилизуя его дважды.
Вы пытаетесь сделать пробел размером 17 пикселей между #example2
и #example3
? Вот обновленная ссылка, созданная по сравнению с предыдущей, которая выполняет это новое поведение: JSFiddle
Комментарии:
1. спасибо за вашу помощь, но я отредактировал вопрос и задал стиль div 2. я ищу свойство, которое я не знаю, является ли exit
Ответ №2:
Исходя из имеющегося у вас CSS, я думаю, вам нужно поменять местами div, который полностью расположен по отношению к «логотипу» (#example2), затем вы можете просто выделить верхнюю часть примера 3, чтобы получить верхний интервал в 170 пикселей
Пример: jsfiddle
попробуйте:
#example1{
background: #eee;
height: 250px;
position: relative;
overflow: auto;
}
#example2 {
background: #444;
color: #fff;
position: absolute;
top: 0;
left: 0;
height:152px;
width:305px;
}
#example3 {
background: #007;
color: #fff;
width: 300px; /* adjust to suit */
height: 80px;
margin: 170px auto 0 auto;
}
если вы не знаете ширину #example3
— и поэтому не можете использовать auto
левое и правое поля — тогда вы можете центрировать его другим способом, изменив его на display: inline-block
и установив text-align: center
на #example1