Расположить элементы на равном расстоянии друг от друга с помощью css-grid
Тренируюсь использовать css-grid, пытаюсь расположить три элемента в хэдере на одном расстоянии друг от друга, но они все сместились в левую сторону и не хотят задействовать левую часть контейнера. То есть надо, чтобы они расположились по всей длине контейнера, на равном расстоянии друг от друга. Помогите, пожалуйста.
.container {
width: 140rem;
margin: 0 auto;
}
.header {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
align-items: center;
}
.hamburger {
display: flex;
flex-direction: column;
width: 4.8rem;
}
.hamburger span {
display: block;
height: .2rem;
width: 4.8rem;
background: white;
}
.hamburger span:not(:last-child) {
margin-bottom: .6rem;
}
<header class="header container">
<div class="icons">
<img src="icons/facebook.svg" alt="facebook" />
<img src="icons/twitter.svg" alt="twitter" />
</div>
<img src="icons/logo.svg" alt="logo" />
<div class="hamburger">
<span></span>
<span></span>
</div>
</header>
Ответы (1 шт):
Автор решения: puffleeck
→ Ссылка
.header {
display: grid;
/*>по всей длине контейнера*/ grid-template-rows: 1fr;
grid-template-columns: auto 1fr auto; /*фр больше авто, потому лого больше*/
text-align: center;
/*>на равном расстоянии друг от друга*/ grid-gap: 15px;
width: 100%;
margin: 0 auto;
}
.header > *{/*чтоб видно было*/
background: pink;
border: 3px solid black;
}
.hamburger {
display: flex;
flex-direction: column;
width: 4.8rem;
}
.hamburger span {
display: block;
height: .2rem;
width: 4.8rem;
}
.hamburger span:not(:last-child) {
margin-bottom: .6rem;
}
<header class="header container">
<div class="icons">
<img src="icons/facebook.svg" alt="facebook" />
<img src="icons/twitter.svg" alt="twitter" />
</div>
<img src="icons/logo.svg" alt="logo" />
<div class="hamburger">
<span></span>
<span></span>
</div>
</header>
ну как то так...