здесь родительский div подобен этому
.div parent{
width:100%;
height:100%;
text-align:center;
}
.div child{
width:10%;
height:10%;
}
В чувствительных мобильных устройствах для мобильных устройств дочерний div не выравнивается по вертикали, как можно выравнивать середину? пожалуйста помогите..
Благодарю.
Попробуйте добавить:
.div parent{
vertical-align: middle;
width:100%;
height:100%;
text-align:center;
}
Очень простое решение, которое я использовал много раз.
.a {
width: 300px;
height: 300px;
background-color:#666;
}
.b {
margin:auto;
width: 75px;
height: 100px;
top: calc(50% - 50px);
text-align:middle;
position: relative;
background-color:#111;
}
<div class='a'>
<div class='b'>
</div>
</div>
Я знаю, что этот пост старый, но вот еще один подход с Flex
(также доступен в CodePen - http://codepen.io/KErez/pen/kXzYAj):
HTML:
<div class='a'>
<div class='b'>
Inner
</div>
</div>
CSS (цвета только для четкого отображения ящиков):
.a {
display: flex;
justify-content: space-around;
align-items: center;
color: #ffffff;
background-color: #223344;
width: 100%;
height: 100%;
}
.b {
display: flex;
justify-content: space-around;
align-items: center;
width: 75px;
height: 100px;
background-color: #999999;
color: #00ff00;
}
Вы написали .div parent
похоже, недействительный селектор. Если вы пытаетесь выбрать div
с parent
класса, его следует выбрать с помощью div.parent
(То же, что и для вашего дочернего div).
Попробуй это;
Применить diplay:table-cell;
to .parent
div, чтобы получить возможность выровнять его дочерний .parent
вертикали.
затем примените vertical-align:middle
к тому же, чтобы дочерние элементы были вертикально средними
div.parent{
width:100%;
height:100%;
text-align:center;
display:table-cell;
vertical-align:middle;
}
Это альтернативный вариант, используя таблицы CSS
HTML
<div class='table'>
<div class='row'>
<div class='cell'>
<div>Child</div>
</div>
</div>
</div>
CSS
html, body {
width:100%;
height:100%;
margin:0;
padding:0;
}
.table {
display:table;
table-layout:fixed;
width:100%;
height:100%;
}
.row {
display:table-row;
}
.cell {
display:table-cell;
border:1px solid grey;
vertical-align:middle;
text-align:center;
}
.cell div {
background:red;
display:inline-block;
margin:0 auto;
}