html - 无法让“对齐项目”在 flexbox 中工作
问题描述
我正在尝试使用弹性框对齐分配给它的网格单元中心的“导航 ul”,但“对齐项目”属性似乎不想工作。我也尝试过使用“justify-content”,但这也不起作用。我错过了什么?提前致谢。
CSS / HTML
* {
box-sizing: border-box;
margin: 0;
padding: 0;
color: white;
}
a {
color: white;
}
.siteContainer {
height: 100vh;
display: grid;
grid-template-columns: 15% auto;
grid-template-rows: 25% 6% 60% auto;
grid-template-areas: "imgTitle main" "nav main" "sidebar main" "sidebar footer"
}
#imgTitle {
grid-area: imgTitle;
background-color: rgb(43, 43, 43);
font-family: 'Indie Flower', cursive;
text-align: center;
}
#imgTitle img {
width: 50%;
border-radius: 50%;
}
nav {
grid-area: nav;
background-color: rgb(53, 53, 53);
}
nav ul {
list-style-type: none;
display: flex;
align-items: center;
justify-content: space-evenly;
}
.siteContainer main {
grid-area: main;
background-color: rgb(73, 73, 73);
}
.siteContainer section {
grid-area: sidebar;
background-color: rgb(63, 63, 63);
}
.siteContainer footer {
grid-area: footer;
background-color: rgb(43, 43, 43);
}
<link rel="stylesheet" type="text/css" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<body>
<div class="siteContainer">
<div id="imgTitle">
<img src="./img/david.png">
<h1>First Last</h1>
<h4>Artist | Programmer</h4>
</div>
<nav>
<ul>
<li><a href="#"><i class="fas fa-home"></i></a></li>
<li><a href="#"><i class="fas fa-cube"></i></a></li>
<li><a href="#"><i class="fas fa-user"></i></a></li>
<li><a href="#"><i class="fas fa-phone"></i></a></li>
</ul>
</nav>
<section>Blank</section>
<main>Main</main>
<footer>Footer</footer>
</div>
</body>
解决方案
您可以通过两种方式使用flex
和对齐。或在nav
justify-content: center
center
display grid
nav
使用显示:flex
* {
box-sizing: border-box;
margin: 0;
padding: 0;
color: white;
}
a {
color: white;
}
.siteContainer {
height: 100vh;
display: grid;
grid-template-columns: 15% auto;
grid-template-rows: 25% 6% 60% auto;
grid-template-areas: "imgTitle main" "nav main" "sidebar main" "sidebar footer"
}
#imgTitle {
grid-area: imgTitle;
background-color: rgb(43, 43, 43);
font-family: 'Indie Flower', cursive;
text-align: center;
}
#imgTitle img {
width: 50%;
border-radius: 50%;
}
nav {
grid-area: nav;
background-color: rgb(53, 53, 53);
display: flex;
justify-content: center;
}
nav ul {
list-style-type: none;
display: flex;
align-items: center;
justify-content: space-evenly;
}
.siteContainer main {
grid-area: main;
background-color: rgb(73, 73, 73);
}
.siteContainer section {
grid-area: sidebar;
background-color: rgb(63, 63, 63);
}
.siteContainer footer {
grid-area: footer;
background-color: rgb(43, 43, 43);
}
<body>
<script src="https://kit.fontawesome.com/a076d05399.js"></script>
<div class="siteContainer">
<div id="imgTitle">
<img src="./img/david.png">
<h1>First Last</h1>
<h4>Artist | Programmer</h4>
</div>
<nav>
<ul>
<li><a href="#"><i class="fas fa-home"></i></a></li>
<li><a href="#"><i class="fas fa-cube"></i></a></li>
<li><a href="#"><i class="fas fa-user"></i></a></li>
<li><a href="#"><i class="fas fa-phone"></i></a></li>
</ul>
</nav>
<section>Blank</section>
<main>Main</main>
<footer>Footer</footer>
</div>
</body>
使用显示:网格
* {
box-sizing: border-box;
margin: 0;
padding: 0;
color: white;
}
a {
color: white;
}
.siteContainer {
height: 100vh;
display: grid;
grid-template-columns: 15% auto;
grid-template-rows: 25% 6% 60% auto;
grid-template-areas:
"imgTitle main"
"nav main"
"sidebar main"
"sidebar footer"
}
#imgTitle {
grid-area: imgTitle;
background-color: rgb(43, 43, 43);
font-family: 'Indie Flower', cursive;
text-align: center;
}
#imgTitle img {
width: 50%;
border-radius: 50%;
}
nav {
grid-area: nav;
background-color: rgb(53, 53, 53);
display: grid;
}
nav ul {
list-style-type: none;
display: flex;
align-items: center;
justify-content: space-evenly;
}
.siteContainer main {
grid-area: main;
background-color: rgb(73, 73, 73);
}
.siteContainer section {
grid-area: sidebar;
background-color: rgb(63, 63, 63);
}
.siteContainer footer {
grid-area: footer;
background-color: rgb(43, 43, 43);
}
<body>
<script src="https://kit.fontawesome.com/a076d05399.js"></script>
<div class="siteContainer">
<div id="imgTitle">
<img src="./img/david.png">
<h1>First Last</h1>
<h4>Artist | Programmer</h4>
</div>
<nav>
<ul>
<li><a href="#"><i class="fas fa-home"></i></a></li>
<li><a href="#"><i class="fas fa-cube"></i></a></li>
<li><a href="#"><i class="fas fa-user"></i></a></li>
<li><a href="#"><i class="fas fa-phone"></i></a></li>
</ul>
</nav>
<section>Blank</section>
<main>Main</main>
<footer>Footer</footer>
</div>
</body>
推荐阅读
- python - 如何在不覆盖先前值的情况下将循环写入数据帧
- python - 我应该做什么而不是使用全局变量?
- java - 如何将whatsapp上的图像和文本分享给特定号码?
- python-3.x - 使用 python3 和 pyautogui 自动化创建社交媒体帐户
- javascript - 无法为此侧边菜单设置过渡速度
- ios - 如何在 SwiftUI 中获取 tabBar 的高度
- c# - 如何将这些合并到 1 个函数中
- python - 查找值落在 PySpark Dataframe 中特定列之间的所有列的列表
- entity-framework - 开启延迟加载时快速加载导航属性
- asp.net - 如何判断代码是用哪个版本的 ASP.NET 编写的?