8.1 align-items ์์ฑ
align-items
์ align-self
์์ฑ์ Flex ์์๋ค์ ๊ต์ฐจ ์ถ์ผ๋ก ์ ๋ ฌํ ์ ์๊ฒ ํ๊ณ ,
๋ ์ด์์์์ ์ ์ฐ์ฑ๊ณผ ์ ํ์ฑ์ ์ ๊ณตํฉ๋๋ค.
align-items
์์ฑ์ Flex ์ปจํ
์ด๋ ์์์ Flex ์์๋ค์ ์ฃผ ์ถ๊ณผ ์์ง์ ์ด๋ฃจ๋ ๊ต์ฐจ ์ถ์ผ๋ก ์ ๋ ฌํฉ๋๋ค.
๊ต์ฐจ ์ถ์ flex-direction
์์ฑ ๊ฐ์ ๋ฐ๋ผ ๋ค๋ฆ
๋๋ค:
flex-direction
๊ฐ์ดrow
๋๋row-reverse
์ธ ๊ฒฝ์ฐ, ๊ต์ฐจ ์ถ์ ์์ง์ ๋๋ค.flex-direction
๊ฐ์ดcolumn
๋๋column-reverse
์ธ ๊ฒฝ์ฐ, ๊ต์ฐจ ์ถ์ ์ํ์ ๋๋ค.
๊ฐ:
stretch
: ์์๋ค์ด ์ปจํ ์ด๋๋ฅผ ์ฑ์ฐ๊ธฐ ์ํด ๋์ด๋ฉ๋๋ค (๊ธฐ๋ณธ๊ฐ)flex-start
: ์์๋ค์ด ์ปจํ ์ด๋์ ์์ ๋ถ๋ถ์ ์ ๋ ฌ๋ฉ๋๋คflex-end
: ์์๋ค์ด ์ปจํ ์ด๋์ ๋ ๋ถ๋ถ์ ์ ๋ ฌ๋ฉ๋๋คcenter
: ์์๋ค์ด ์ปจํ ์ด๋์ ์ค์์ ์ ๋ ฌ๋ฉ๋๋คbaseline
: ์์๋ค์ด ํ ์คํธ์ ๊ธฐ์ค์ ์ ์ ๋ ฌ๋ฉ๋๋ค
์ฌ์ฉ ์์:
.container {
display: flex;
height: 200px;
border: 2px solid #000;
padding: 10px;
margin-bottom: 20px;
}
.item {
background-color: #3498db;
color: white;
padding: 10px;
margin: 5px;
}
.align-stretch {
align-items: stretch;
}
.align-flex-start {
align-items: flex-start;
}
<div class="container align-stretch">
<div class="item">์์ 1</div>
<div class="item">์์ 2</div>
<div class="item">์์ 3</div>
</div>
<div class="container align-flex-start">
<div class="item">์์ 1</div>
<div class="item">์์ 2</div>
<div class="item">์์ 3</div>
</div>
8.2 align-self ์์ฑ
align-self
์์ฑ์ ํน์ Flex ์์์ ๋ํด align-items
๊ฐ์ ์ฌ์ ์ํ ์ ์๊ฒ ํด์ค๋๋ค.
์ด ์์ฑ์ ์ง์ Flex ์์์ ์ ์ฉ๋์ด Flex ์ปจํ
์ด๋ ์์์ ๊ต์ฐจ ์ถ์ผ๋ก ์ ๋ ฌ์ ์ ์ดํฉ๋๋ค.
๊ฐ:
auto
: ๋ถ๋ชจ๋ก๋ถํฐ ๊ฐ์ ์์๋ฐ์ (๊ธฐ๋ณธ๊ฐ)stretch
: ์์๊ฐ ์ปจํ ์ด๋๋ฅผ ์ฑ์ฐ๊ธฐ ์ํด ๋์ด๋ฉ๋๋คflex-start
: ์์๊ฐ ์ปจํ ์ด๋์ ์์ ๋ถ๋ถ์ ์ ๋ ฌ๋ฉ๋๋คflex-end
: ์์๊ฐ ์ปจํ ์ด๋์ ๋ ๋ถ๋ถ์ ์ ๋ ฌ๋ฉ๋๋คcenter
: ์์๊ฐ ์ปจํ ์ด๋์ ์ค์์ ์ ๋ ฌ๋ฉ๋๋คbaseline
: ์์๊ฐ ํ ์คํธ์ ๊ธฐ์ค์ ์ ์ ๋ ฌ๋ฉ๋๋ค
์ฌ์ฉ ์์:
.container {
display: flex;
height: 200px;
border: 2px solid #000;
padding: 10px;
margin-bottom: 20px;
align-items: flex-start;
}
.item {
background-color: #3498db;
color: white;
padding: 10px;
margin: 5px;
}
.self-flex-end {
align-self: flex-end;
}
.self-center {
align-self: center;
}
.self-baseline {
align-self: baseline;
}
<div class="container">
<div class="item self-flex-end">์์ 3</div>
<div class="item self-center">์์ 4</div>
<div class="item self-baseline">์์ 5</div>
</div>
์ฝ๋ ์ค๋ช :
.self-flex-end
: ์ด ์์๋ ์ปจํ ์ด๋์ ํ๋จ์ ์ ๋ ฌ๋ฉ๋๋ค.self-center
: ์ด ์์๋ ์์ง ์ค์์ ์ ๋ ฌ๋ฉ๋๋ค.self-baseline
: ์ด ์์๋ ํ ์คํธ์ ๊ธฐ์ค์ ์ ๋ง์ถ์ด ์ ๋ ฌ๋ฉ๋๋ค
8.3 ์์ ์ค์ฌ ์ ๋ ฌ
Flexbox๋ justify-content
์ align-items
๋๋ align-self
์ ์กฐํฉ์ ์ฌ์ฉํ์ฌ
์์๋ค์ ์ํ ๋ฐ ์์ง์ผ๋ก ์ฝ๊ฒ ์ค์์ ๋ง์ถ ์ ์์ต๋๋ค.
์ฌ์ฉ ์์:
.center-container {
display: flex;
justify-content: center; /* ์ํ ์ค์ฌ ์ ๋ ฌ */
align-items: center; /* ์์ง ์ค์ฌ ์ ๋ ฌ */
height: 300px;
border: 2px solid #000;
}
.center-item {
background-color: #3498db;
color: white;
padding: 20px;
}
<div class="center-container">
<div class="center-item">์ค์ ์ ๋ ฌ๋ ์์</div>
</div>
์ฝ๋ ์ค๋ช :
-
.center-container
:justify-content: center;
๋ก ์ํ์ผ๋ก,align-items: center;
๋ก ์์ง์ผ๋ก ์์๋ค์ด ์ค์ ์ ๋ ฌ๋ Flex ์ปจํ ์ด๋ .center-item
: ์ปจํ ์ด๋์ ์ค์์ ์ ๋ ฌ๋ Flex ์์
GO TO FULL VERSION