예전에 수평정렬을 위해 많이 사용했지만, 현재는 flex의 등장으로 사용이 많이 줄어듬
<aside> 💡 float 속성은 따로 처리를 하지 않으면 상위요소(container)가 감싸지 못하는 현상 생김 → 마지막요소에서 float을 해제 해주는 작업 필요(clear)
</aside>
해결방법
1번
→ 권장되지 않음
overflow: hidden
속성 주기2번
→ 권장되지 않음
clear: left
속성 주기3번
→ 권장
상요소 선택자 ::after
를 이용해 html 요소를 추가하기.clearfix::after { content:””; display:block; clear:both;}
주의사항
float 속성을 사용하는 Item들만이 container를 구성하고 있어야만 한다.
하나의 container안에 float과 float이 아닌 속성의 요소들이 섞이면, 위치가 제어할 수 없게됨
float들만 하위요소로 가지는 container를 따로 만들어주고, 해당 container에 clearfix class를 걸어주어 해결
Tobe
주의사항
1번
float:right
속성의 경우, 오른쪽에서 부터 차례대로 요소들이 쌓이게 됨
float:right
속성을 주고, 그 안에서 내부 요소를 float:left
속성을 주어 원하는 레이아웃을 만들수 있다.2번
항상 clearfix를 통해 float container에 clear 옵션을 설정
해주도록 한다.어떤경우
inline, table 관련일 경우
flex, grid인 경우는 적용 안됨
즉 float을 사용하는 경우, inline 요소를 사용할 수 없게
되고,
해당 요소에 diplay:block; 을 명시해주지 않아도 된다
참고
<aside> 💡 position은 element의 위치를 적용하는 속성
</aside>