5. CSS 속성2
1. 위치속성
- 절대적 위치 좌표
- 요소의 x좌표와 y좌표를 설정해 절대적 위치 지정
- 상대적 위치 좌표
- 요소를 입력한 순서대로 상대적 위치 지정
- CSS의 positioning
- 일반흐름
- normal flow
- 기본값
- 절대위치
- absolute positioning
- 키워드 absolute, relative
- float 방식
- 일반흐름
<head>
<style type="text/css">
*{margin:0;}
div{width:150px;height:120px;text-align:center;position:absolute;}
.box1{background:pink;top:30px; }
.box2{background:skyblue;left:40px;bottom:20px; }
.box3{background:yellow;right:0px;top:50%;}
</style>
</HEAD>
<BODY>
<div class="box1">
top:30px
</div>
<div class="box2">
left:40px;bottom:20px
</div>
<div class="box3">
right:0px top:50%
</div>
</body>
static
- position의 기본값
- 요소가 본래 가지고 있는 흐름을 가진다
relative
- static 속성값과 기본적으로 같은 흐름을 가진다
- 위치 조절을 위한 좌표값을 가질 수 있다
- 위치의 기준점을 상대적으로 잡는다
- 기본값인 static일 때의 위치를 기준으로 위치값을 가진다
absolute
- 요소의 순서에 따른 흐름을 무시하고 절대적인 위치를 가진다
- 다른 요소들은 절대위치를 가진 엘리먼트를 인식하지 않는다
- 겹쳐서 표현
- 자식요소가 absolute일 경우 부모요소는 영역을 차지하지 않는다
- 부모요소에 크기설정을 하여 영역을 차지하게 만들 수 있다
- 부모 요소를 relative로 설정하여 자식이 부모의 위치를 기준으로 좌표를 설정하게 할 수 있다
z-index
- 요소의 z 좌표값을 처리
- position 값이 absolute, relative인 경우 적용
- 정수 및 음수값을 가지며, 숫자가 클 수록 위에 위치
overflow
- 내부 요소가 부모의 범위를 벗어날 때 처리할 속성
- hidden
- 영역을 벗어나는 부분을 보이지 않게 한다
- scroll
- 영역을 벗어나는 부분을 스크롤로 만든다
- 특정한 방향으로만 스크롤을 생성할 때
- overflow-x, overflow-y
- hidden
float
개요
- left : 태그를 왼쪽에 붙인다
- right : 태그를 오른쪽에 붙인다
- 부유하는 대상을 만들 때 사용하는 속성
<head>
<title>Float Style Property</title>
<style>
</style>
</head>
<body>
<img src="sun.jpg"/>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
<p>In hac habitasse platea dictumst. Donec lobortis augue a metus.</p>
</body>
- img태그는 inline, p태그는 block 속성으로 그림과 글자가 분리되어 출력
<style>
img {
float: left;
/*이미지를 왼쪽에 떠 있게 함*/
}
</style>
- img 태그에 float 속성 적용 시 글자위에 부유하게 된다
float을 이용한 수평 정렬
- 첫번째 위치한 태그가 먼저 붙고, 두번째 위치한 태그가 이어붙는다
<head>
<title>Float Style Property</title>
<style>
.box {
width: 100px; height: 100px;
background-color: red;
margin: 10px; padding: 10px;
/* 태그를 왼쪽으로 붙입니다. */
float: left;
}
</style>
</head>
<body>
<div class="box">1</div>
<div class="box">2</div>
</body>
clear 속성
- float 속성 이용 시, 다음에 넣는 요소들에도 똑같은 속성이 전달된다
clear : 속성값;
- float 속성을 무효로 만든다
- clear:left, clear:right, clear:both, clear:none
float의 예
box1이 float:right
box1이 float:left
box 3개 모두 float:left
clear 적용 시
div#wrap{width:500px;}
*{margin:0;}
div{width:150px;height:50px;font-weight:bold;}
.box1{background:pink;float:left;}
.box2{background:skyblue;float:left;}
.box3{background:yellow;clear:both;}
.box4{background:green;float:right;}
.box5{background:silver;float:right;}