smallBird 영역은 top과 left 속성, bigBird 영역은 margin 속성으로 좌표를 조정합니다. 지금처럼 부모가 relative 속성값인 상태이고 자식에게 absolute 속성값을 적용하면 좌표 기준점이 항상 부모를 기준으로 설정됩니다. 즉, 이 코드에서는 자식에게 top과 margin-top 속성 중 어느 것을 사용하더라도 같은 결과가 출력됩니다. 이 설명이 잘 이해되지 않는다면 position 속성을 다시 한 번 살펴보세요.
예제 소스 Exercise/13장/KidsGao/css/style.css
/******************** *** forest3 *** ********************/ #forest3 { width: 100%; height: 600px; background-image: url(../img/forest/forest3/forest3_bg.png); /* forest3 공간의 배경 이미지를 삽입합니다. */ } #forest3 .forest3Wrap { position: relative; /* forest3Wrap 서랍장을 2차원, 3차원 특징으로 변경합니다. */ width: 354px; height: 440px; top: 100px; /* 상단에서 100px 떨어진 지점에 배치합니다. */ float: right; /* 오른쪽 끝에 배치합니다. */ } /* forest3Tree, smallBird, bigBird 영역 모두 relative 속성값을 적용한 forest3Wrap을 기준으로 좌표가 형성됩니다. */ #forest3 .forest3Wrap .forest3Tree { position: absolute; /* 나무를 3차원 특징으로 변경합니다. */ width: 354px; height: 440px; background-image: url(../img/forest/forest3/forest3tree.png); } #forest3 .forest3Wrap .smallBird { position: absolute; /* 작은 새를 3차원 특징으로 변경합니다. */ width: 40px; height: 35px; background-image: url(../img/forest/forest3/bird_sm.png); top: 120px; /* forest3Wrap 서랍장을 기준으로 상단에서 120px 떨어진 지점에 배치합니다. */ left: 125px; /* forest3Wrap 서랍장을 기준으로 왼쪽에서 125px 떨어진 지점에 배치합니다. */ } #forest3 .forest3Wrap .bigBird { position: absolute; /* 큰 새를 3차원 특징으로 변경합니다. */ width: 83px; height: 80px; background-image: url(../img/forest/forest3/bird_big.png); margin: 280px 0 0 94px; /* 상단에서 280px, 왼쪽에서 94px 떨어진 지점에 배치합니다. */ }