์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- ํ์ด์ฌ
- JavaScript
- ์ค๋ผํด
- ์ฑ
- ์นํ์ด์ง๋ง๋ค๊ธฐ
- Python
- ComputerScience
- css
- ํฐ์คํ ๋ฆฌ์ฑ๋ฆฐ์ง
- ๊ฐ๋ฐ
- ๋ ์
- Java
- ์๋ฐ
- ์ฝ๋ฉ
- K๋ฐฐํฐ๋ฆฌ๋ ๋ณผ๋ฃจ์
- ๋ฐ์ํ
- ์ํ
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ๋ผํ๋ผ์ค์๋ง๋
- ๊น๋ฏธ๊ฒฝ์๋งํ์์
- ์๋ฐ์คํฌ๋ฆฝํธ
- html
- ์ปดํจํฐ๊ณผํ
- ์นํผ๋ธ๋ฆฌ์ฑ
- ๋ง์ผ๋ด๊ฐ์ธ์์๋ค์์ฐ๋ค๋ฉด
- database
- ํ๋ก๊ทธ๋๋ฐ
- ๋ฆฌ์กํธ
- K๋ฐฐํฐ๋ฆฌ
- ์ค๋ธ์
- Today
- Total
JiYoung Dev ๐ฅ
CSS ๋ ์ด์์ : Position, Flex ๋ณธ๋ฌธ
2023.03.07~2023.03.08 ์ฝ๋์ ํ์ต๋ด์ฉ
๐ Position ์์ฑ
๊ธ์ ํ๋ฆ์์ ๋ฒ์ด๋ ์์๋ฅผ ์์ ๋กญ๊ฒ ๋ฐฐ์นํ ๋ ์ฐ๋ ์์ฑ
๊ธฐ๋ณธ๊ฐ์ static์ด๊ณ , static์ธ ๊ฒฝ์ฐ ์๋ ์์ด์ผ ํ ์์น์ ๋ฐฐ์น๋จ
๐ ์์น ์ ํ๊ธฐ
top, right, bottom, left ์์ฑ์ผ๋ก ์์น๋ฅผ ์ ํ ์ ์์
์์ 4๊ฐ์ ๊ฐ์ด ๋ชจ๋ ๊ฐ์ ๊ฒฝ์ฐ inset ์์ฑ ์ฌ์ฉ
๐ relative ํฌ์ง์
์์์ ์๋ ์์น๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฐฐ์นํจ. ์ด๋ ์์์ ์๋ ์๋ฆฌ๋ ๊ทธ๋๋ก ์ฐจ์งํ๊ณ ์์.
.blue {
background-color: blue;
width: 200px;
height: 50px;
position: relative;
top: 15px;
left: 10px;
}
๐ absolute ํฌ์ง์
๊ฐ์ฅ ๊ฐ๊น์ด ํฌ์ง์ ๋์ด ๋ ์กฐ์ ์์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฐฐ์น. ์ด๋ ํฌ์ง์ ๋์ด ๋์๋ค๋ ๊ฒ์ static์ด ์๋๋ผ๋ (position ์์ฑ์ ์ง์ ํ๋ค๋) ์๋ฏธ. absolute ํฌ์ง์ ์ ๊ธ์ ํ๋ฆ์์ ์์ ํ ๋น ์ ธ, ์์์ ์๋ ์๋ฆฌ๋ ์ฐจ์งํ์ง ์์.
.blue {
background-color: blue;
width: 200px;
height: 200px;
position: relative;
/* top: 15px; left: 10px; */
}
.green {
background-color: green;
width: 50px;
height: 50px;
position: absolute;
bottom: 10px;
left: 30px;
}
๐ fixed ํฌ์ง์
๋ธ๋ผ์ฐ์ ํ๋ฉด์ ๊ธฐ์ค์ผ๋ก ๊ณ ์ ๋ ๋ฐฐ์น. ๊ธ์ ํ๋ฆ์์ ์์ ํ ๋น ์ ธ์ ์์์ ์๋ ์๋ฆฌ๋ ์ฐจ์งํ์ง ์์.
๋ฐ๋ผ์ ๋ด๋น๊ฒ์ด์ ์ ๋ง๋ค ๋ ๊ฒน์น์ง ์๋๋ก ๋ง์ง์ ๋ฃ์ด์ค
.red {
background-color: red;
width: 100%;
height: 50px;
position: fixed;
top: 0;
left: 0;
z-index: 1
}
.blue {
margin: 50px;
background-color: blue;
width: 200px;
height: 200px;
position: relative;
/* top: 15px; left: 10px; */
}
๐ sticky ํฌ์ง์
static์ฒ๋ผ ์๋ ์์น์ ๋ฐฐ์น๋์ด ์๋ค๊ฐ, ์ ํด์ง ์์น์ ๋ธ๋ผ์ฐ์ ๊ฐ ์คํฌ๋กค๋๋ฉด ๊ทธ๋๋ถํฐ fixed์ฒ๋ผ ๊ณ ์ ๋์ด ๋ฐฐ์น
๊ธฐ๋ณธ์ ์ผ๋ก๋ static์ฒ๋ผ ๋ฐฐ์น๋๊ธฐ ๋๋ฌธ์ ์์์ ์๋ ์๋ฆฌ๋ฅผ ์ฐจ์งํจ
.red {
background-color: red;
width: 100%;
height: 50px;
position: sticky;
top: 0;
left: 0;
z-index: 1
}
.blue {
/* margin: 50px; */
background-color: blue;
width: 200px;
height: 200px;
position: relative;
/* top: 15px; left: 10px; */
}
๐ z-index๊ฐ
์ ๋ค ์์๋ฅผ ์ ํ ๋ ์ฐ๋ ๊ฐ์ผ๋ก ์์๊ธฐ ๋๋ฌธ์ ๋จ์ ์์ด ์ฌ์ฉ๋จ. ๊ฐ์ด ๋์์๋ก ํ๋ฉด์์ ์์ชฝ์ด๋ฉฐ, ๊ฐ์ด ๊ฐ์ผ๋ฉด ์ฝ๋์์ ์๋ ์ค์ ์๋ ์์๊ฐ ์์ชฝ์ ๋ณด์.
๐ Flexbox
๐ ํ๋ ์ค๋ฐ์ค ๋ง๋ค๊ธฐ
display: flex;
ํ๋ ์ค๋ฐ์ค๋ ๊ธฐ๋ณธ์ด row ์ ๋ ฌ (๊ฐ๋ก๋ก ์ ๋ ฌ)์ด๊ณ ์ธ๋ก๊ฐ ๊ต์ฐจ์ถ
๐ ๋ฐฐ์น๋ฐฉํฅ
๊ธฐ๋ณธ - ๊ฐ๋ก ์ ๋ ฌ
flex-direction: row;
์ธ๋ก ์ ๋ ฌ
flex-direction: column;
๐ ๊ธฐ๋ณธ ์ถ ์ ๋ ฌ
์ผ์ชฝ๋ฐฉํฅ ํน์ ์์ชฝ ๋ฐฉํฅ๋ถํฐ ์ ๋ ฌ
justify-content: flex-start
์ค๋ฅธ์ชฝ ํน์ ์๋์ชฝ๋ถํฐ ์ ๋ ฌ
justify-content: flex-end
์ค์ ์ ๋ ฌ
justify-content: center
์์ชฝ ์ ๋ ฌ
justify-content: space-between
๐ ๊ต์ฐจ ์ถ ์ ๋ ฌ
๋๋ ค์ ๋ฐฐ์นํ๊ธฐ (๊ธฐ๋ณธ)
align-items: stretch;
์ผ์ชฝ ํน์ ์๋ถํฐ ์ ๋ ฌ
align-items: flex-start;
์ค์ ์ ๋ ฌ
align-items: center;
์ค๋ฅธ์ชฝ ํน์ ์๋๋ถํฐ ์ ๋ ฌ
align-items: flex-end;
๐ ์์๊ฐ ๋์น ๋
flex-wrap: wrap์ ์ง์ ํด ์ฃผ๋ฉด ๊ต์ฐจ ์ถ ๋ฐฉํฅ์ผ๋ก ๋์ด๊ฐ์ ๋ฐฐ์น๋จ
flex-wrap: wrap;
๐ ๊ฐ๊ฒฉ
์ธ๋ก, ๊ฐ๋ก ์์๋๋ก ์ซ์ ๋๊ฐ๋ฅผ ์ฐ๋ฉด ์ธ๋ก ๊ฐ๊ฒฉ, ๊ฐ๋ก ๊ฐ๊ฒฉ์ ๊ฐ๊ฐ ์ง์ ํ ์ ์์
gap: 50px 30px;
๐ ์์ ๋๋ ค์ ์ฑ์ฐ๊ธฐ
๊ธฐ๋ณธ๊ฐ์ 0์ผ๋ก flex-grow ๊ฐ์ด ํด์๋ก ๋ง์ด ๋์ด๋จ
flex-grow: 1;
๐ ์์ ์ค์ฌ์ ์ฑ์ฐ๊ธฐ
๋ง์ฝ ์์๋ค์ ํฌ๊ธฐ๊ฐ ์ปค์ ๋์น๋ ๊ฒฝ์ฐ, ์์์ ํฌ๊ธฐ๋ฅผ ์ค์ฌ ํ๋ ์ค๋ฐ์ค ์์ ๊ฐ๋ ์ฑ์ฐ๊ฒ ๋จ. flex-shrink์ ๊ธฐ๋ณธ ๊ฐ์ด 1์ด๊ธฐ ๋๋ฌธ์ ๊ธฐ๋ณธ์ ์ผ๋ก ์์๋ฅผ ์ค์ฌ์ ๋ฐฐ์นํ๊ณ , 0์ผ๋ก ์ง์ ํ๋ฉด ํฌ๊ธฐ๊ฐ ์ค์ด๋ค์ง ์์. flex-shrink ๊ฐ์ด ํด์๋ก ๋ง์ด ์ค์ด๋ฆ
flex-shrink: 1;
'full stack > HTML, CSS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
HTML ํ๊ทธ : ๋ฆฌ์คํธ, ์ด๋ฏธ์ง, ์ต์ปค, ํ ์ด๋ธ, ์ธํ (2023.04.25) (0) | 2023.04.25 |
---|---|
WEB & HTML ์ ์์ ์ญ์ฌ / HTML ํ๊ทธ (2023.04.21) (1) | 2023.04.23 |
HTML ํต์ฌ ๊ฐ๋ (0) | 2023.03.06 |
CSS ํต์ฌ ๊ฐ๋ (1) | 2023.03.03 |
[์นํผ๋ธ๋ฆฌ์ฑ] CSS ์์ํ๊ธฐ / ํ์ด์ง๋ผ๋ฆฌ ์ฐ๊ฒฐํ๊ธฐ (0) | 2023.02.28 |