页脚导航未居中
Footer nav not centered
我无法让页脚导航正确居中。这很简单,但只是没有做它应该做的。
.main-footer li {
float: left;
font-size: 0.85em;
padding: 0 0.5em;
margin-bottom: 0.5em;
}
.main-footer {
text-align: center;
width: 100%;
background-color: lightblue;
padding: 2em;
margin-top: 30px;
}
<footer class="main-footer">
<ul>
<li><a href="#">Contact us</a></li>
<li>© Copyright Acme Industries 2019</li>
</ul>
</footer>
我试过在两个 css 选择器中添加 display: block
或 display: inline-block
但没有帮助。有什么想法吗?
谢谢,凯特
尝试 flexbox
:
.main-footer {
display: flex;
justify-content: center;
width: 100%;
background-color: lightblue;
padding: 2em;
margin-top: 30px;
}
.main-footer li {
float: left;
font-size: 0.85em;
padding: 0 0.5em;
margin-bottom: 0.5em;
}
<footer class="main-footer">
<ul>
<li><a href="#">Contact us</a></li>
<li>© Copyright Acme Industries 2019</li>
</ul>
</footer>
首先。切勿使用 float
进行布局。它会扰乱您的内容,并在您的 CSS.
中开始滚雪球效应
flex
是要走的路 -> flexbox MDN(和其他链接)
使用align-items: center
将您的项目垂直对齐,使用justify-content: center
将它们水平对齐。
此外,使用 box-sizing: border-box
,这样页脚的填充将在 100%
宽度中为 'included',并且 x 轴上没有滚动溢出。
.main-footer li {
font-size: 0.85em;
padding: 0 0.5em;
margin-bottom: 0.5em;
display: inline-block;
}
.main-footer {
display: flex;
align-items:center;
justify-content: center;
text-align: center;
width: 100%;
background-color: lightblue;
padding: 2em;
margin-top: 30px;
box-sizing:border-box;
}
<footer class="main-footer">
<ul>
<li><a href="#">Contact us</a></li>
<li>© Copyright Acme Industries 2019</li>
</ul>
</footer>
如果您不想采用弹性方式,只需更改 UL 元素的显示 属性。
像这样:
.main-footer ul {
display: inline-block;
margin: 0;
padding: 0;
}
.main-footer li {
float: left;
font-size: 0.85em;
padding: 0 0.5em;
list-style-type: none;
}
.main-footer {
text-align: center;
width: 100%;
background-color: lightblue;
padding: 2em 0;
margin-top: 30px;
}
<footer class="main-footer">
<ul>
<li><a href="#">Contact us</a></li>
<li>© Copyright Acme Industries 2019</li>
</ul>
</footer>
将 ul
设置为 flex 容器并从 footer
容器中移除左右填充以确保其居中。可以将填充添加到 ul
中。
没有 flexbox,将 li
元素设置为 display: inline-block
。
.main-footer {
width: 100%;
background-color: lightblue;
padding: 2em 0;
margin-top: 30px;
}
.main-footer ul {
display: flex;
justify-content: center;
list-style: none;
}
.main-footer li {
font-size: 0.85em;
margin-right: 0.5em;
}
.main-footer li:last-child {
margin-right: 0;
}
<footer class="main-footer">
<ul>
<li><a href="#">Contact us</a></li>
<li>© Copyright Acme Industries 2019</li>
</ul>
</footer>
使用浮动,您将强制元素向左拉。
使用 display:inline-block 使元素居中,因为父元素已经是 text-align:center
.main-footer li {
display: inline-block;
font-size: 0.85em;
padding: 0 0.5em;
margin-bottom: 0.5em;
list-style-type:none
}
.main-footer {
text-align: center;
width: 100%;
background-color: lightblue;
padding: 2em;
margin-top: 30px;
}
<footer class="main-footer">
<ul>
<li><a href="#">Contact us</a></li>
<li>© Copyright Acme Industries 2019</li>
</ul>
</footer>
我无法让页脚导航正确居中。这很简单,但只是没有做它应该做的。
.main-footer li {
float: left;
font-size: 0.85em;
padding: 0 0.5em;
margin-bottom: 0.5em;
}
.main-footer {
text-align: center;
width: 100%;
background-color: lightblue;
padding: 2em;
margin-top: 30px;
}
<footer class="main-footer">
<ul>
<li><a href="#">Contact us</a></li>
<li>© Copyright Acme Industries 2019</li>
</ul>
</footer>
我试过在两个 css 选择器中添加 display: block
或 display: inline-block
但没有帮助。有什么想法吗?
谢谢,凯特
尝试 flexbox
:
.main-footer {
display: flex;
justify-content: center;
width: 100%;
background-color: lightblue;
padding: 2em;
margin-top: 30px;
}
.main-footer li {
float: left;
font-size: 0.85em;
padding: 0 0.5em;
margin-bottom: 0.5em;
}
<footer class="main-footer">
<ul>
<li><a href="#">Contact us</a></li>
<li>© Copyright Acme Industries 2019</li>
</ul>
</footer>
首先。切勿使用 float
进行布局。它会扰乱您的内容,并在您的 CSS.
flex
是要走的路 -> flexbox MDN(和其他链接)
使用align-items: center
将您的项目垂直对齐,使用justify-content: center
将它们水平对齐。
此外,使用 box-sizing: border-box
,这样页脚的填充将在 100%
宽度中为 'included',并且 x 轴上没有滚动溢出。
.main-footer li {
font-size: 0.85em;
padding: 0 0.5em;
margin-bottom: 0.5em;
display: inline-block;
}
.main-footer {
display: flex;
align-items:center;
justify-content: center;
text-align: center;
width: 100%;
background-color: lightblue;
padding: 2em;
margin-top: 30px;
box-sizing:border-box;
}
<footer class="main-footer">
<ul>
<li><a href="#">Contact us</a></li>
<li>© Copyright Acme Industries 2019</li>
</ul>
</footer>
如果您不想采用弹性方式,只需更改 UL 元素的显示 属性。
像这样:
.main-footer ul {
display: inline-block;
margin: 0;
padding: 0;
}
.main-footer li {
float: left;
font-size: 0.85em;
padding: 0 0.5em;
list-style-type: none;
}
.main-footer {
text-align: center;
width: 100%;
background-color: lightblue;
padding: 2em 0;
margin-top: 30px;
}
<footer class="main-footer">
<ul>
<li><a href="#">Contact us</a></li>
<li>© Copyright Acme Industries 2019</li>
</ul>
</footer>
将 ul
设置为 flex 容器并从 footer
容器中移除左右填充以确保其居中。可以将填充添加到 ul
中。
没有 flexbox,将 li
元素设置为 display: inline-block
。
.main-footer {
width: 100%;
background-color: lightblue;
padding: 2em 0;
margin-top: 30px;
}
.main-footer ul {
display: flex;
justify-content: center;
list-style: none;
}
.main-footer li {
font-size: 0.85em;
margin-right: 0.5em;
}
.main-footer li:last-child {
margin-right: 0;
}
<footer class="main-footer">
<ul>
<li><a href="#">Contact us</a></li>
<li>© Copyright Acme Industries 2019</li>
</ul>
</footer>
使用浮动,您将强制元素向左拉。 使用 display:inline-block 使元素居中,因为父元素已经是 text-align:center
.main-footer li {
display: inline-block;
font-size: 0.85em;
padding: 0 0.5em;
margin-bottom: 0.5em;
list-style-type:none
}
.main-footer {
text-align: center;
width: 100%;
background-color: lightblue;
padding: 2em;
margin-top: 30px;
}
<footer class="main-footer">
<ul>
<li><a href="#">Contact us</a></li>
<li>© Copyright Acme Industries 2019</li>
</ul>
</footer>