我正在为可能很容易解决的问题而奋斗。我有一个无序的列表和3个项目在一个响应的div。
我已经设法使它的中心水平,但垂直是我正在努力的地方。
<div class="left">
<div class="boxtext">
<div class="insidetext">
<ul>
<li>WATER</li>
<li>JUICE</li>
<li>TEA</li>
</ul>
</div>
</div>
</div>
.left {
@include aspect-ratio(16,9);
width: 50%;
height: 100vh;
min-width: 300px;
position: relative;
background-size: cover;
background-color:#333;
position: relative;
}
@media (max-width:768px) {
.left {
width: 100%;
height: 70vh;
}
}
.boxtext {
@include aspect-ratio(16,9);
border: solid white 0.15em;
height: 70vh;
width: 70%;
margin: auto;
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
text-align: center;
}
@media (max-width:768px) {
.boxtext {
width: 70%;
height: 70%;
}
}
.insidetext {
@include aspect-ratio(16,9);
background-color: aliceblue;
height: 70%;
width: 70%;
margin: auto;
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
font-size: 9vh;
text-align: center;
min-height:100px;
}
.insidetext li {
list-style-type:none;
}
.insidetext ul {
display: table;
margin: 0 auto;
}
.insidetext ul,li {
list-style-type: none;
list-style-position:inside;
margin:0 auto;
padding:0;
vertical-align:middle;
}下面是一个测试:http://jsfiddle.net/qq3LLop8/
发布于 2015-07-20 19:23:59
这应该是可行的:
.insidetext ul {
display: table;
margin: 0 auto;
position: relative; <-- Note these additions
top: 50%; <--
transform: translateY(-50%); <--
}见示例:
发布于 2015-07-20 19:44:34
只需将display: table;添加到.insidetext,将display: table-cell;添加到.insidetext ul即可。
https://stackoverflow.com/questions/31524449
复制相似问题