CSS/Rounded Rect with images

Rounded Rect with images

Soul-Learner 2012. 12. 12. 22:00

이미지를 이용한 둥근 모서리 사각형 만들기

웹 페이지에서 글 박스로 자주 사용되는 둥근모서리 사각형은 CSS3를 이용하면 쉽게 표현할 수 있지만 모든 웹브라우저가 CSS3를 지원하는 것은 아니므로 문제가 될 수 있다. 그러므로 이미지를 이용한 둥근 모서리 사각형도 사용할 필요가 있다.

사용되는 CSS 속성 중에서 중요한 것은 float, clear 인데, div 태그에 float : left 를 적용하면 적용 태그는 왼편에 배치되고 동시에 적용태그의 오른쪽에 다른 div 태그를 둘 수가 있다.

div 태그에 float : right를 적용하면 해당 라인의 가장 오른쪽에 위치하게 된다.

clear속성은 div 태그 등의 좌우측에 다른 내용이 없도록 설정한다.

예를 들어, div하나는 왼쪽에, 다른 하나는 오른쪽에 배치할 경우, 그 다음에 이어지는 div 태그는 위에 있는 2개의 태그 사이로 삽입되려는 경향을 보인다. 이때 삽입되려는 경향을 보이는 div 태그에 clear : both 속성을 설정하면 양 태그 사이에 삽입되는 현상을 피할 수 있다. 또, 맨 왼쪽에 배치하려는 div 태그가 있다면 float : left; clear : left 라고 설정하면 위의 태그 다음에 이어서 오른쪽에 이어지려는 특성을 피할 수가 있다.


글박스를 구성하는 테두리 선의 이미지 (선의 두께는 1px , 둥근 모서리 4개, 수평선1개 수직선 1개)

      


CSS 코드

#content_div

float: right; height: 700px; width: 708px; position: absolute; top: 200px; left: 141px; margin-left: 60px; 

#content_inner1

 height: 300px; width: 400px; margin-top: 10px; margin-left: 5px; position: relative; float: left

#corner_top_left

 background-image: url(images/corner_top_left.png); background-repeat: no-repeat; background-position: left top; height: 10px; width: 10px; float: left

#border_top

 background-image: url(images/border_horizontal.png); background-repeat: no-repeat; background-position: left top; height: 10px; width: 380px; float: left; position: relative; 

#corner_top_right

 background-image: url(images/corner_top_rigt.png); background-repeat: no-repeat; background-position: right top; float: right; height: 10px; width: 10px; 

#border_left

 background-image: url(images/border_vertical.png); background-repeat: no-repeat; background-position: left top; float: left; height: 280px; width: 10px; position: relative; clear: left

#content_center

 opacity:0.20; filter:alpha(opacity=20); background-color: #FFF; float: left; height: 280px; width: 380px; position: relative; 

#border_right

 background-image: url(images/border_vertical.png); background-repeat: no-repeat; background-position: right top; height: 280px; width: 10px; float: right; position: relative; 

#corner_bottom_left

 background-image: url(images/corner_bottom_left.png); background-repeat: no-repeat; background-position: left bottom; height: 10px; width: 10px; float: left; position: relative; clear: left

#border_bottom

 background-image: url(images/border_horizontal.png); background-repeat: no-repeat; background-position: left bottom; float: left; height: 10px; width: 380px; position: relative; 

#corner_bottom_right

 background-image: url(images/corner_bottom_right.png); background-repeat: no-repeat; background-position: right bottom; height: 10px; width: 10px; float: right; position: relative; 

}


HTML 코드

<div id="content_div"> 

   <div id="content_inner1"> 

       <div id="corner_top_left"></div> 

       <div id="border_top"></div> 

       <div id="corner_top_right"></div> 

       <div id="border_left"></div> 

       <div id="content_center"></div> 

       <div id="border_right"></div> 

       <div id="corner_bottom_left"></div> 

       <div id="border_bottom"></div> 

       <div id="corner_bottom_right"></div> 

    </div> 

</div>