취업정보 아이폰 어플

팁공유방

  • 홈관련팁
  • 윈도우
  • 리눅스
  • 드림위버
  • 제로보드(XE)
  • (x)html
  • javascript
  • CSS
  • 웹표준
  • 웹접근성
  • 포토샵
  • 플래쉬
  • 기타

웹미니 라이브
웹미니 텍스타일허브
믹시
Xpress engine
Textyle

CSS

CSS와 관련된 팁이 있는 곳입니다. 좋은 자료 공유해 주세요.

CSS 상속

조회 수 2997 추천 수 0 2009.04.03 22:18:07
출처 :  
흔히들 CSS 에서 상속시킨다는 말을 들어봤을겁니다.
그럼 상속시키는 몇가지 예제를 보겠습니다.

body {font:12px "굴림", Gulim;}

위와 같이 CSS에 코딩할시 body 안에 모든 글자는 폰트사이트 12px 굴림으로 보여지게 되는것입니다.
(table, tr, td, div, li, p 이런식으로 공통으로 빼도 상관없습니다.)

왜 상속을 해야하는것일까?

html 코딩을 할시 웹페이지에서 보여지는 부분은 <body>와 </body> 안에 코딩을 하게 됩니다.
A라는 사이트는 보여지는 모든 폰트가 굴림 12px로 보여져야하는데 일일이 스타일을 줘가면서 기술할필요가 없다는것입니다. 시간낭비일뿐아니라 노가다 작업이 되겠죠? 이런것들이 상속시키는 이유중에 포함됩니다.

그럼 다음예제를 보도록 하겠습니다.

ex.gif

위와 같은 레이아웃의 사이트가 있다고 가정을 했을때 모든 서체는 굴림이고 상단 (#header) 부분의 바탕색을 #e2e2e2 로 해보도록 하겠습니다.

CSS 소스

body {font:12px "굴림", Gulim;}
#header {position:relative; background:#e2e2e2;}
#header h4 {position:absolute; left:20px;}

html 소스

<div id="header">
<h4>웹미니</h4>
</div>

위와 같이 할경우 h4 안에 배경도 #e2e2e2 가 되는것입니다.
물론 h4 라는 제목이 header 라는 아이디값에 상속이 된셈입니다.

만약 #header 과 #Footer 에 ul 과 li 가 있다고 합시다. 두 아이디안에 상속되어있는 스타일이 다를땐 이렇게 정의를 해두어도 됩니다.

#header ul {margin:0;}
#header li {float:left; font:11px "돋움", Dotum; letter-spacing:-1px;}

#Footer ul {margin:0;}
#Footer li {float:left; font:12px "굴림", Gulim; letter-spacing:-1px;}

위처럼 할경우 #header 안에 상속되어있는 li 의 폰트는 11px의 돋움이 되며, #Footer 안에 li 의 폰트는 12px의 굴림이 되는것입니다.
여기서 두개의 공통점이 있습니다. float:left; 와 letter-spacing:-1px;
이럴경우 li 의 공통소스를 위단에서 뺄수 있습니다.

li {float:left; letter-spacing:-1px;}

이렇게 하면 #header 과 #Footer 안에 li의 소스가 줄어들겠죠?

#header ul {margin:0;}
#header li {font:11px "돋움", Dotum;}

#Footer ul {margin:0;}
#Footer li {font:12px "굴림", Gulim;}

간단히 설명을 하자면 이페이지의 모든 li는 {float:left; letter-spacing:-1px;} 스타일이 기본적으로 적용이 된다는 이야기입니다. 쓸때없이 소스가 길어질 필요가 없겠죠?
사이트의 디자인을 보고 어떻게 소스를 조정할지 결정하는 것을 'CSS를 설계한다'라고 표현합니다.

사이트 제작시 디자인가이드가 있는 반면 코딩가이드가 있습니다.
디자인으로 봤을때는 버튼이나 블릿 및 사이트의 색상등을 예로 들수 있으며, 코딩가이드로 봤을때는 공통되는 디자인을 공통CSS로 뺀후 하나의 class로 계속 사용할수가 있는것입니다. 
포털사이트의 경우 이런 가이드들이 기본적으로 있습니다.

디자인을 할때도 이런부분을 인지하고 디자인을 한다면 웹퍼블리셔와 관계가 좋아질 것입니다.
디자인 시안을 보고 웹퍼블리셔와 커뮤니케이션을 하면서 업무의 효율성을 높이는것을 협업이라고 말할수도 있겠습니다. 

어떻게 마크업을 하고 유지보수를 쉽게 할수 있는지는 웹퍼블리셔의 역량이라고 생각합니다.
Share
 "생생하게(vivid) 꿈꾸면(dream) 이루어진다.(realization)" R=VD
태그
첨부
엮인글 :
http://www.webmini.net/45391/a79/trackback

[레벨:2]민트향

2009.09.15 08:55:29
*.202.154.49

공부가 정말 많이되고..정말 괜찮은 강좌입니다. 감사합니다. 잘볼게요

[레벨:11]id: 롱코트롱코트

2009.09.22 13:42:55
*.127.228.97

감사합니다.

[레벨:3]로로스타

2009.11.01 19:14:42
*.186.93.168

좋은정보 감사합니다.
List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 css 팁에 관련해서... [레벨:30]id: 빽짱구빽짱구 2007-11-30 9027
62 IE6에서 레이어 위로 셀렉트박스가 뚫고 나오는문... imagefile [2] [레벨:30]id: 빽짱구빽짱구 2009-11-25 1283
61 CSS메뉴 만들어 주는 프로그램 file [12] [레벨:3]웹준 2009-11-01 1156
60 CSS메뉴를 손쉽게 만들 수 있는 사이트 [5] [레벨:1]bumphy 2009-10-29 814
59 IE에서 letter-spacing:-1px; 적용시 br 태그 버... imagefile [4] [레벨:30]id: 빽짱구빽짱구 2009-10-23 962
58 소형 대문자 small cap imagefile [1] [레벨:30]id: 빽짱구빽짱구 2009-10-17 982
57 자동줄바꿈 file [레벨:30]id: 빽짱구빽짱구 2009-09-18 1417
56 IE6에서 line-height 적용시 이미지가 들어갔을때 imagefile [2] [레벨:30]id: 빽짱구빽짱구 2009-09-16 1511
55 유니버설 디자인을 위한 실전 UI(HTML/CSS)개발 ... file [2] [레벨:30]id: 빽짱구빽짱구 2009-09-08 1165
54 개발자가 알아야할 10가지 css 팁 imagefile [5] [레벨:3]옹갈군 2009-08-21 1127
53 가장 간단한 팁. id 와 class [1] [레벨:3]옹갈군 2009-08-21 931
52 크로스브라우징 input 박스 imagefile [1] [레벨:30]id: 빽짱구빽짱구 2009-04-15 2585
51 CSS 상속(2) [레벨:30]id: 빽짱구빽짱구 2009-04-09 2396
» CSS 상속 imagefile [3] [레벨:30]id: 빽짱구빽짱구 2009-04-03 2997
49 ie6에서 영역을 잡자. [레벨:30]id: 빽짱구빽짱구 2009-03-06 2380
48 IE6 스타핵으로 png 배경으로 적용시 링크가 안... imagefile [레벨:30]id: 빽짱구빽짱구 2009-02-16 3356
47 input 박스 활성화시 테두리 색 넣기 [2] [레벨:30]id: 빽짱구빽짱구 2009-02-06 2236
46 익스 문자버그 (주석버그) imagefile [1] [레벨:30]id: 빽짱구빽짱구 2009-02-05 2255
45 IE6 스타핵에서 띄어쓰기 [레벨:30]id: 빽짱구빽짱구 2009-02-05 2468
44 png 투명이미지 css에서 배경 적용하기 [레벨:30]id: 빽짱구빽짱구 2009-02-01 3292
43 프린트 (인쇄) 할때 다음 페이지 넘기기 [레벨:30]id: 빽짱구빽짱구 2008-07-30 3115