Съкращение за подравняване на отделен елемент в CSS грид
Може едновременно да се подравни отделен елемент
и по хоризонталната, и по вертикалната ос.
За това се използва свойството place-self.
То приема две стойности разделени с интервал.
Първата стойност указва подравняването
по вертикала, а втората - по хоризонтала.
Нека да разгледаме с примери.
По център на вертикалната и начало на хоризонталната
<div id="parent">
<div id="elem1">1</div>
<div>2</div>
<div>3</div>
<div>4</div>
</div>
#parent {
display: grid;
grid-template-columns: 100px 100px;
grid-template-rows: repeat(3, 1fr);
grid-gap: 10px;
padding: 10px;
border: 2px solid #696989;
height: 200px;
width: 400px;
}
#parent > div {
grid-gap: 10px;
padding: 10px;
box-sizing: border-box;
border: 1px solid #696989;
}
#elem1 {
place-self: center start;
}
:
По начало на вертикалната и край на хоризонталната
<div id="parent">
<div id="elem1">1</div>
<div>2</div>
<div>3</div>
<div>4</div>
</div>
#parent {
display: grid;
grid-template-columns: 100px 100px;
grid-template-rows: repeat(3, 1fr);
grid-gap: 10px;
padding: 10px;
border: 2px solid #696989;
height: 200px;
width: 400px;
}
#parent > div {
grid-gap: 10px;
padding: 10px;
box-sizing: border-box;
border: 1px solid #696989;
}
#elem1 {
place-self: start end;
}
:
По край на вертикалната и по център на хоризонталната
<div id="parent">
<div id="elem1">1</div>
<div>2</div>
<div>3</div>
<div>4</div>
</div>
#parent {
display: grid;
grid-template-columns: 100px 100px;
grid-template-rows: repeat(3, 1fr);
grid-gap: 10px;
padding: 10px;
border: 2px solid #696989;
height: 200px;
width: 400px;
}
#parent > div {
grid-gap: 10px;
padding: 10px;
box-sizing: border-box;
border: 1px solid #696989;
}
#elem1 {
place-self: end center;
}
:
Практически задачи
Създайте грид, състоящ се от пет елемента и ги разположете в три реда. Изпълнете подравняване на първия елемент по началото на хоризонталната и центъра на вертикалната ос.
Променете предходната задача така, че подравняването на третия елемент да се извършва по края на хоризонталната и центъра на вертикалната ос.
Сега разположете елементите на грида в два реда и задайте подравняване на петия елемент по центъра на хоризонталната и края на вертикалната ос.
Направете така, че вторият елемент да бъде подравнен по началото на хоризонталната и края на вертикалната ос, а четвъртият елемент - по центъра на хоризонталната и началото на вертикалната ос.