【发布时间】:2018-06-16 02:59:38
【问题描述】:
我有一个简单的 Flexbox 页脚。当屏幕低于 580 像素时,布局会发生变化,如下所示。
我有两个主要问题:
<ul>上的 justify-content 属性似乎没有起作用。如果我将<ul>设置为display: flex项目,那么子元素肯定应该是弹性项目,不是吗?在页脚的移动版中,<li>项始终停留在右侧。为什么右侧容器(切换到移动视图的底部项目)的高度比其在移动设备尺寸下的同级容器大得多?此项目没有添加额外的填充或高度值。
** 注意 - 我在每个元素周围放置了一个 1px 的边框,以便更容易看到正在发生的事情。
* {
border: 1px solid black;
}
body {
margin: 0;
padding: 0;
}
footer {
width: 100%;
display: flex;
justify-content: space-between;
background: red;
box-sizing: border-box;
padding: 1rem;
}
.footer-inner {
background: blue;
width: 30%;
display: flex;
align-items: center;
padding: 1rem;
color: white;
}
#footerright {
display: flex;
justify-content: flex-end;
}
#footerright ul {
display: flex;
list-style-type: none;
justify-content: flex-end;
}
#footerright ul li {
padding: 0px 10px;
color: white;
}
@media screen and (max-width: 580px) {
footer {
flex-direction: column;
align-items: center;
}
.footer-inner {
justify-content: center;
min-width: 240px;
}
#footerright {
justify-content: center;
}
#footerright ul {
justify-content: center;
}
}
<footer>
<div class="footer-inner" id="footerleft">©<span id="footer-year">Year</span> The Company</div>
<div class="footer-inner" id="footerright">
<ul>
<li id="facebook">Twi</li>
<li id="instagram">Fac</li>
<li id="twitter">Ins</li>
</ul>
</div>
</footer>
【问题讨论】: