CSS
12. Flex 레이아웃(flex-direction)
HJ76
2023. 4. 1. 13:35
flex-direction
- 플렉스 요소들이 배치되는 축의 방향을 결정하는 속성
- row : 기본값, 가로로 배치
- row-reverce : 가로로 배치(반대로)
- colum: 세로로 배치
- column-reverce : 세로로 배치(반대로)
row
선택자 {
display: flex;
flex-direction: row;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>플렉스 레이아웃</title>
<style>
#container {
width: 1000px;
height: 500px;
margin: 0 auto;
border: 3px solid red;
display: flex;
flex-wrap: wrap;
flex-direction: row; /* 기본값 */
}
#container > div{
width: 400px;
border: 1px solid black;
background-color: gold;
}
span{
font-size: 50px;
font-weight: bold;
padding: 20px;
}
</style>
</head>
<body>
<h2>플렉스 레이아웃</h2>
<div id="container">
<div id="box1"><span>1</span></div>
<div id="box2"><span>2</span></div>
<div id="box3"><span>3</span></div>
</div>
</body>
</html>
row-reverce
선택자 {
display: flex;
flex-direction: row-reverce;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>플렉스 레이아웃</title>
<style>
#container {
width: 1000px;
height: 500px;
margin: 0 auto;
border: 3px solid red;
display: flex;
flex-wrap: wrap;
flex-direction: row-reverse; /* row-reverse */
}
#container > div{
width: 400px;
border: 1px solid black;
background-color: gold;
}
span{
font-size: 50px;
font-weight: bold;
padding: 20px;
}
</style>
</head>
<body>
<h2>플렉스 레이아웃</h2>
<div id="container">
<div id="box1"><span>1</span></div>
<div id="box2"><span>2</span></div>
<div id="box3"><span>3</span></div>
</div>
</body>
</html>
colum
선택자 {
display: flex;
flex-direction: column;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>플렉스 레이아웃</title>
<style>
#container {
width: 1000px;
height: 500px;
margin: 0 auto;
border: 3px solid red;
display: flex;
flex-wrap: wrap;
flex-direction: column; /* column */
}
#container > div{
width: 400px;
border: 1px solid black;
background-color: gold;
}
span{
font-size: 50px;
font-weight: bold;
padding: 20px;
}
</style>
</head>
<body>
<h2>플렉스 레이아웃</h2>
<div id="container">
<div id="box1"><span>1</span></div>
<div id="box2"><span>2</span></div>
<div id="box3"><span>3</span></div>
</div>
</body>
</html>
column-reverse
선택자 {
display: flex;
flex-direction: column-reverse;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>플렉스 레이아웃</title>
<style>
#container {
width: 1000px;
height: 500px;
margin: 0 auto;
border: 3px solid red;
display: flex;
flex-wrap: wrap;
flex-direction: column-reverse; /* column-reverse */
}
#container > div{
width: 400px;
border: 1px solid black;
background-color: gold;
}
span{
font-size: 50px;
font-weight: bold;
padding: 20px;
}
</style>
</head>
<body>
<h2>플렉스 레이아웃</h2>
<div id="container">
<div id="box1"><span>1</span></div>
<div id="box2"><span>2</span></div>
<div id="box3"><span>3</span></div>
</div>
</body>
</html>
flex-flow
- flex-wrap과 flex-direction을 한꺼번에 지정할 수 있는 속성
/* 예시 */
선택자 {flex-flow: row nowrap;}