今天,遇到了一个超级坑的问题,解决了超级久没找到解决方法,各种百度,终于在茫茫的答案中找到了,太不容易了,泪奔~~
因此赶紧在这里记录下!!!!!
问题:一级父元素采用flex布局,但是没有设置高度,他有三个子元素,父元素的高度是有第三个子元素的高度撑开的,现在的情况是,需要让第一个子元素的高度和父元素一样高,但是现在如果是设置第一个子元素的高度为100%,是不会生效的
解决:设置子元素相对于父元素绝对定位,高度设置为100%,完美解决~over
.flow-item{
position: relative;
padding: 0.1rem 0.15rem 0 0.65rem;
width: 100%;
box-sizing: border-box;
&:first-child {
padding-top: 0;
.timeline-item {
position: absolute;
top: 0;
left: 0.75rem;
@include flexBox();
flex-direction: column;
height: 100%;
justify-content: center;
align-items: center;
.line {
flex: 1;
display: inline-block;
width: 1px;
background: #dedede;
.dot {
display: inline-block;
width: 0.14rem;
height: 0.14rem;
border-radius: 50%;
background: #dedede;
&.active {
left: 0.65rem;
.line {
background: #25ae5f;
.dot {
display: inline-block;
width: 0.24rem;
height: 0.24rem;
border: 0.05rem solid #b9e5cc;
border-radius: 50%;
background: #25ae5f;
.flow-right {
margin-left: 0.7rem;
padding-bottom: 0.2rem;
color: #999;
border-bottom: 1px solid #f1f1f1;
span {
font-size: 0.24rem;
margin-top: 0.12rem;
&.active {
color: #25ae5f;
<li class="flow-item">
<div class="timeline-item">
<span class="line"></span>
<span class="dot"></span>
<span class="line"></span>
</div>
<div class="flow-right" :class="[index == 0 ? 'active': '']">
<p>2019-04-17</p>
<p>123</p>
<p>234</p>
</div>