CSSグリッドにおける個別要素の水平軸方向の配置
水平軸方向の配置は、親要素だけでなく、
それぞれの子要素に対して個別に設定することもできます。
この目的で使用されるのが、
プロパティjustify-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 {
justify-self: 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 {
justify-self: center;
}
:
水平軸の末尾揃え
最初の要素を水平軸の末尾に揃えて配置してみましょう:
<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 {
justify-self: end;
}
:
実践的な課題
2行に配置された5つの要素からなるグリッドを作成してください。 2番目の要素を水平軸の先頭に揃えて配置してください。
次に、グリッドの要素を3行で配置し、 3番目の要素をグリッドの水平軸の中央に揃えて配置してください。
前の課題を変更して、 5番目の要素が水平軸の末尾に揃うように配置してください。