我有这个侧窗格。它的高度是80%。在这个侧窗格中,我有一个文本。我希望这始终处于中间位置。
主要部分:
.simulation {
height: 80%;
width: 500px;
border: 1px solid #ccc;
box-shadow: 8px 8px 7px #A5A5A5;
background: #FFF;
position: absolute;
top: 10px;
z-index: 100;
left: -450px;
transition: 500ms ease all;
}
Sub div:
.simulation .simulation-content .simulation-bar .heading {
position: relative;
margin-top: 340px; /* How do I get this in the middle?? */
-webkit-transform: rotate(-90deg);
}
当我用%表示时,我无法获得保证金权利。
答案 0 :(得分:2)
您可以通过定位子absolute
以及top: 50%
和transform: translateY(-50%)
的组合,将子元素垂直对齐在父级的中间。
在这个特定的例子中 - Example:
.simulation .simulation-content .simulation-bar .heading {
position: absolute;
top: 50%;
left: 0;
-webkit-transform: translate(-30%, -50%) rotate(-90deg);
-moz-transform: translate(-30%, -50%) rotate(-90deg);
-ms-transform: translate(-30%, -50%) rotate(-90deg);
-o-transform: translate(-30%, -50%) rotate(-90deg);
transform: translate(-30%, -50%) rotate(-90deg);
}
可以在这里找到解释:
答案 1 :(得分:0)
您也可以使用flexbox来实现它。只需添加:
display: flex;
flex-flow: column nowrap;
justify-content: center;
到您的"主要内容"