对齐文本和图像
我遇到了特定部分的问题。期望的目标是,它看起来像this。对齐文本和图像
而我得到this。
.timeline {
text-align: center;
}
#about-us {
ul {
&:before {
position: absolute;
top: 0;
bottom: 0;
left: 50%;
width: 2px;
margin-left: -1.5px;
content: '';
background-color: #f1f1f1;
z-index: -1;
}
}
img {
width: 150px;
height: 150px;
border-radius: 50%;
}
}
.timeline-img {
border: 7px solid #f1f1f1;
border-radius: 50%;
text-align: center;
display: inline-block;
}
.timeline-1,
.timeline-3 {
.timeline-info {
float: left;
width: 45%;
text-align: right;
}
}
.timeline-2,
.timeline-4 {
.timeline-info {
float: right;
width: 45%;
text-align: left;
}
}
此外,最后的灰线溢出一点点,我不能使它只要最后一个图像。
可以使用一些引导类的至reverse flow
使用
.flex-row
设置一个水平方向(浏览器默认值),或.flex-row-reverse
开始从相对侧上的水平方向上。
- HTML可能更新
<ul class="timeline">
<li class="timeline-1 d-flex flex-row-reverse"></li>
<li class="timeline-2 d-flex"></li>
<li class="timeline-3 d-flex flex-row-reverse"></li>
<li class="timeline-4 d-flex"></li>
<li class="timeline-5 "></li>
</ul>
然后,您可以添加一个伪填补宽度相同的timeline-info
一个空的空间:
- CSS可能的更新
.timeline li:before {
content:'';
width: 45%;
}
感谢您的解答,我刚刚得到了几个问题: 1.如果'.timeline li:before'的宽度为45%,并且.timeline-info的宽度相同,这意味着剩下10% ,那它去哪了?它是图像div吗?因为我试图给出所提到的元素50%的宽度,并且imgs没有突破到下一行。 2.我注意到图像已经失去了8px左右的宽度。当我将第一个问题中提到的元素的宽度从45%减少到40%时,imgs恢复了全宽,但略偏离中心。 45%是糖果还是其他东西? – KestVir
@KestVir最好将flex:1设置为timeline-info和:before(https://codepen.io/gc-nomade/pen/gxJvBj更新),并且忘记宽度,浏览器将处理它,他们将共享中心图像不会使用的均匀空间。这是典型的flex事物,它是灵活的:)当你设置静态值时,浏览器将尝试调整,元素可以扩展,缩小或溢出 –
你是不是用引导的网格系统呢?我现在正在使用网格系统开发解决方案。 –