如何更改 Flexbox-Item 的高度?
How do I change the height of a Flexbox-Item?
我尝试为弹性项目设置高度(父元素的 100%)。这是导航中的 li-tag。我在每个 li-tag 上都有一个 border-left,但边框不适合容器的大小。此外,最好单击区域中的任意位置,而不是直接单击 -Tag,这样我就可以将导航的 a-tag 也设置为 100%。
我设置了一个最小高度并用 display: block 试了一下,但这并没有限制它。
a {
text-decoration: none;
color: white;
}
nav {
background: #100e17;
}
.inline {
display: inline;
}
.flex {
display: flex;
align-items: center;
}
.reset {
margin: 0;
padding: 0;
}
#navLogo {
display: flex;
align-items: center;
margin-left: 1rem;
}
#logoText {
font-size: 1.5rem;
color: white;
margin: 1rem;
margin-left: 0.3rem;
}
#navLogoImg {
height: auto;
width: 2rem;
}
.menuItem {
font-size: 1.5rem;
margin: 0rem 1.5rem;
}
ul.flex li {
border-left: 1px solid #201c29;
min-height: 100%;
}
<!DOCTYPE html>
<html>
<head>
<title>A Complete Guide to Grid</title>
<link rel="stylesheet" href="style/style.css">
<link href="https://fonts.googleapis.com/css?family=Ubuntu:400,700&display=swap" rel="stylesheet">
</head>
<body class="reset">
<nav cla>
<ul class="reset flex">
<li class="inline"><a href="index.html" class="inline" id="navLogo">
<img class="inline" id="navLogoImg" src="Bilder/CSSTricks_Rad.png">
<h3 class="inline" id="logoText">CSS-TRICKS</h3>
</a></li>
<li><a href="#" class="menuItem">Articles</a></li>
<li><a href="#" class="menuItem">Videos</a></li>
<li><a href="#" class="menuItem">Almanac</a></li>
<li><a href="#" class="menuItem">Snippets</a></li>
<li><a href="#" class="menuItem">Newsletter</a></li>
<li><a href="#" class="menuItem">Jobs</a></li>
<li><a href="#" class="menuItem">Guides</a></li>
</ul>
</nav>
</body>
</html>
```
这是边框和导航的一般小图片(尝试重新创建 CSS-Tricks.com:
Screenshot
在 flex 上使用 align-items: stretch;
使它们达到 100% 高度。删除 li 上的 min-height: 100%;
,然后将锚定样式设置为 100% 高度、弯曲并居中对齐。
a {
text-decoration: none;
color: white;
}
nav {
background: #100e17;
}
.flex {
display: flex;
align-items: stretch;
}
.reset {
margin: 0;
padding: 0;
}
#navLogo {
display: flex;
align-items: center;
margin-left: 1rem;
}
#logoText {
font-size: 1.5rem;
color: white;
margin: 1rem;
margin-left: 0.3rem;
}
#navLogoImg {
height: auto;
width: 2rem;
}
.menuItem {
height: 100%;
display: flex;
align-items: center;
font-size: 1.5rem;
margin: 0rem 1.5rem;
}
ul.flex li {
border-left: 1px solid #201c29;
}
<!DOCTYPE html>
<html>
<head>
<title>A Complete Guide to Grid</title>
<link rel="stylesheet" href="style/style.css">
<link href="https://fonts.googleapis.com/css?family=Ubuntu:400,700&display=swap" rel="stylesheet">
</head>
<body class="reset">
<nav>
<ul class="reset flex">
<li>
<a href="index.html" class="inline" id="navLogo">
<img id="navLogoImg" src="Bilder/CSSTricks_Rad.png">
<h3 id="logoText">CSS-TRICKS</h3>
</a>
</li>
<li><a href="#" class="menuItem">Articles</a></li>
<li><a href="#" class="menuItem">Videos</a></li>
<li><a href="#" class="menuItem">Almanac</a></li>
<li><a href="#" class="menuItem">Snippets</a></li>
<li><a href="#" class="menuItem">Newsletter</a></li>
<li><a href="#" class="menuItem">Jobs</a></li>
<li><a href="#" class="menuItem">Guides</a></li>
</ul>
</nav>
</body>
</html>
我尝试为弹性项目设置高度(父元素的 100%)。这是导航中的 li-tag。我在每个 li-tag 上都有一个 border-left,但边框不适合容器的大小。此外,最好单击区域中的任意位置,而不是直接单击 -Tag,这样我就可以将导航的 a-tag 也设置为 100%。
我设置了一个最小高度并用 display: block 试了一下,但这并没有限制它。
a {
text-decoration: none;
color: white;
}
nav {
background: #100e17;
}
.inline {
display: inline;
}
.flex {
display: flex;
align-items: center;
}
.reset {
margin: 0;
padding: 0;
}
#navLogo {
display: flex;
align-items: center;
margin-left: 1rem;
}
#logoText {
font-size: 1.5rem;
color: white;
margin: 1rem;
margin-left: 0.3rem;
}
#navLogoImg {
height: auto;
width: 2rem;
}
.menuItem {
font-size: 1.5rem;
margin: 0rem 1.5rem;
}
ul.flex li {
border-left: 1px solid #201c29;
min-height: 100%;
}
<!DOCTYPE html>
<html>
<head>
<title>A Complete Guide to Grid</title>
<link rel="stylesheet" href="style/style.css">
<link href="https://fonts.googleapis.com/css?family=Ubuntu:400,700&display=swap" rel="stylesheet">
</head>
<body class="reset">
<nav cla>
<ul class="reset flex">
<li class="inline"><a href="index.html" class="inline" id="navLogo">
<img class="inline" id="navLogoImg" src="Bilder/CSSTricks_Rad.png">
<h3 class="inline" id="logoText">CSS-TRICKS</h3>
</a></li>
<li><a href="#" class="menuItem">Articles</a></li>
<li><a href="#" class="menuItem">Videos</a></li>
<li><a href="#" class="menuItem">Almanac</a></li>
<li><a href="#" class="menuItem">Snippets</a></li>
<li><a href="#" class="menuItem">Newsletter</a></li>
<li><a href="#" class="menuItem">Jobs</a></li>
<li><a href="#" class="menuItem">Guides</a></li>
</ul>
</nav>
</body>
</html>
```
这是边框和导航的一般小图片(尝试重新创建 CSS-Tricks.com: Screenshot
在 flex 上使用 align-items: stretch;
使它们达到 100% 高度。删除 li 上的 min-height: 100%;
,然后将锚定样式设置为 100% 高度、弯曲并居中对齐。
a {
text-decoration: none;
color: white;
}
nav {
background: #100e17;
}
.flex {
display: flex;
align-items: stretch;
}
.reset {
margin: 0;
padding: 0;
}
#navLogo {
display: flex;
align-items: center;
margin-left: 1rem;
}
#logoText {
font-size: 1.5rem;
color: white;
margin: 1rem;
margin-left: 0.3rem;
}
#navLogoImg {
height: auto;
width: 2rem;
}
.menuItem {
height: 100%;
display: flex;
align-items: center;
font-size: 1.5rem;
margin: 0rem 1.5rem;
}
ul.flex li {
border-left: 1px solid #201c29;
}
<!DOCTYPE html>
<html>
<head>
<title>A Complete Guide to Grid</title>
<link rel="stylesheet" href="style/style.css">
<link href="https://fonts.googleapis.com/css?family=Ubuntu:400,700&display=swap" rel="stylesheet">
</head>
<body class="reset">
<nav>
<ul class="reset flex">
<li>
<a href="index.html" class="inline" id="navLogo">
<img id="navLogoImg" src="Bilder/CSSTricks_Rad.png">
<h3 id="logoText">CSS-TRICKS</h3>
</a>
</li>
<li><a href="#" class="menuItem">Articles</a></li>
<li><a href="#" class="menuItem">Videos</a></li>
<li><a href="#" class="menuItem">Almanac</a></li>
<li><a href="#" class="menuItem">Snippets</a></li>
<li><a href="#" class="menuItem">Newsletter</a></li>
<li><a href="#" class="menuItem">Jobs</a></li>
<li><a href="#" class="menuItem">Guides</a></li>
</ul>
</nav>
</body>
</html>