1. position 프로퍼티를 이용한 layout
position은 위치값을 조정하는데에 사용하는 속성이다.
.wrap > div:nth-child(3) {
position:fixed;
top:0px;
left:0px;
}
- static : 기본값. 위치가 지정되었다고 표현하지 않는다.
- relative : 별도의 프로퍼티를 지정하지 않는 한 static과 동일하게 동작한다. 원래 위치에서 위치가 조정된다
- absolute : 가장 가까운 곳에 위치하고, position이 static이 아닌 조상 엘리먼트에 상대적으로 위치가 지정된다. (tip:기준값이 되길 원하는 조상 엘리먼트의 position값을 relative로 설정해두면 좋다!)
- fixed : 스크롤에 영향을 받지 않는 고정된 배너
2.float 기반 layout 1편
아래 엘리먼트의 글자는 그냥두고 레이어가 겹침!
float 붕 뜬 상태. 마진을 이용해야 한다.
글, 그림을 자연스럽게 배치할 때 사용한다.
블로그에서 글 쓸 때 오른정렬 왼정렬 이런거!
.wrap > div {
border:1px solid grey;
width:100px;
height:100px;
margin:10px;
float:left;
}
3. float 기반 layout 2편
자식중에 float를 가진 자식을 자기 자식으로 생각하지 못한다; -> overflow: 설정을 해주면 float 자식 컨텐츠를 자기 자식으로 인정해준다..!
다른 엘리먼트가 float 엘리먼트를 인지하게 하려면 clear 프로퍼티 설정(단, float와 같은 속성으로 clear 설정해야 함)
.wrap {
background-color:slategray;
padding:0.5rem;
width:300px;
box-sizing: border-box;
overflow:hidden;
}
.wrap > div {
background-color:#333;
width:50px;
height:50px;
margin:0.5rem;
color:#fff;
float:left;
}
footer {
width:300px;
height:100px;
background-color:#bb3;
margin-top:0.5rem;
clear:both;
}
4. FLEX 기반 layout
반응형 웹에서 손쉽게 배치를 한다.
.wrap {
background-color:slategray;
height:500px;
display:flex;
flex-direction:row;
justify-content:flex-end;
align-items:cente/* r; */
}
.wrap > div {
width:50px;
height:30px;
padding:0.5rem;
margin:0.25rem;
background-color:skyblue;
color:white;
}
5. z-index 속성의 이해 : stacking context
포지션이 static이 아닌 element끼리 겹칠 수 있는데 누가 위로 올라갈지가 issue
z-index: 기본값 0
자식 z-index 가 아무리 커도 상위 엘리먼트끼리는 부모 인덱스를 따른다!
.wrap {
width:100px;
height:100px;
margin:0.5rem;
color:#fff;
position:absolute;
z-index:2
}
.wrap>div:nth-child(1) {
top:10px;
left:10px;
background-color:red;
}
.wrap > div:nth-child(2) {
top:30px;
left:30px;
background-color:green;
z-index:722;
}
.wrap > div:nth-child(3) {
top:50px;
left:50px;
background-color:blue;
}
.hi {
width:100px;
height:100px;
position:absolute;
top:10px;
left:10px;
background-color:#dd1;
z-index:4
}
'오늘의 코딩 > 웹프로그래밍' 카테고리의 다른 글
[PHP] 생활코딩(7.5~) (0) | 2020.07.05 |
---|---|
6. (0) | 2020.07.02 |
2. CSS 스타일 시트 언어 (0) | 2020.07.01 |
1 (0) | 2020.07.01 |