我试图使一个图像适合左侧的导航栏只使用纯html和CSS。到目前为止,我还没有做实际的nav li链接,但下面是我所做的:
HTML
<header id="header">
<div class="container nav_class">
<img id="header-img" src="https://odysseeservice.com/wp-content/uploads/2016/12/Microsoft-Dynamics-NAV-Logo.png" alt="">
<nav id="nav-bar">
<ul>
<li class="nav-link"></li>
<li class="nav-link"></li>
<li class="nav-link"></li>
</ul>
</nav>
</div>
</header>
CSS:
.container {
max-width: 1100px;
margin: 0 auto;
overflow: auto;
padding: 0 40px;}
img {
width: 100%;}
.nav_class {
height: 80px;}
我不希望它的高度超过80像素。只有图像在左边和3导航一个字导航链接在右边。我理解如何创建导航链接,并得到所有的容器孩子并排,但我不知道如何使图像更小,并在导航栏的固定位置。
猜猜我主要想问的是,如何让图像适合容器,甚至如何为它制作一个合适的容器。谢谢!
您可以为此使用
img {
width: 100%;
height: 100%;
object-fit: contain;
}
编辑:您可以在此页面上了解有关此属性的更多信息。
https://www.w3schools.com/css/css3_object-Fit.asp
如果img的容器是
null
#nav-bar{
height: 80px;
display: flex;
justify-content: space-between;
}
#nav-bar img{
height: 100%;
}
.nav-links{
display: flex;
}
.nav-links li{
width: 100px;
}
<header id="header">
<nav id="nav-bar">
<img id="header-img" src="https://odysseeservice.com/wp-content/uploads/2016/12/Microsoft-Dynamics-NAV-Logo.png" alt="">
<ul class="nav-links">
<li>A</li>
<li>A</li>
<li>A</li>
</ul>
</nav>
</header>
.container {
max-width: 1100px;
margin: 0 auto;
/* overflow: ; */
padding: 0 40px;
display:flex;
flex-direction: row;
justify-content: space-between ;
}
/* that will make image fit */
img {
width: 25%;
}
/* make the navbar and take every thing inside */
.nav_class {
height: 80px;
overflow: hidden;
}
#nav-bar ul{
margin: 0;
padding:0;
display:flex;
justify-content: space-between;
}