'공부/Cascading Style Sheets'에 해당되는 글 12건

  1. 2010.04.18 padding, border, margin 1
  2. 2010.04.09 텍스트 속성
  3. 2010.04.04 폰트
  4. 2010.04.03 값과 단위
  5. 2010.04.03 상속
  6. 2010.04.03 구체성
  7. 2010.04.02 가상클래스와 가상요소 선택자 4
  8. 2010.04.02 문서 구조 선택자
  9. 2010.04.02 선택자
  10. 2010.04.02 대체 스타일시트
2010. 4. 18. 06:20
margin
top right bottom left

margin-top
margin-right
margin-bottom
margin-left

border-style
top right bottom left

border-top-style
border-right-style
border-bottom-style
border-left-style

border-width
top right bottom left

border-top-width
border-right-width
border-bottom-width
border-left-width

border-color
top right bottom left

border-top-color
border-right-color
border-bottom-color
border-lift-color

border
width style color

border-top
border-right
border-bottom
border-left

padding
top right bottom left

padding-top
padding-right
padding-bottom
padding-left

'공부 > Cascading Style Sheets' 카테고리의 다른 글

텍스트 속성  (0) 2010.04.09
폰트  (0) 2010.04.04
값과 단위  (0) 2010.04.03
상속  (0) 2010.04.03
구체성  (0) 2010.04.03
Posted by terebyte
2010. 4. 9. 11:23
들여쓰기와 수평정렬

텍스트 들여쓰기

text-indent
인라인요소에는 사용할수없으며, 블록요소에만 사용 가능하다

p { text-indent : 4em;}
h1 { text-indent :- 4em;}
음수값을 사용할때 주의할점은 첫단어들이 브라우저 창의 좌측경계에 의해 잘릴수도 있다는것이다.
이럴경우 음수 마진을 받아들이도록 마진이나 약간의 패딩을 함께 사용하면된다.
h1 { text-indent : -4em; padding-left : 4em;}
퍼센트 값을 포함해 모든 길이단위를 text-indent에 사용할 수 있다.

text-align
마찬가지로 블록 레벨 요소에만 사용 가능하다
left : 왼쪽정렬
right : 오른쪽 정렬
center : 중앙 정렬

text-align : center;가 <center>태그와 똑같다고 생각하는 사람이있는데
<center>태그는 텍스트뿐만 아니라 테이블같은 요소도 중앙정렬시키고,
text-align은 오직 텍스트만 조정가능하며 특히 인라인요소에만 적용 가능하다.

justify : 수평정렬
텍스트의 각 행의 양쪽끝이 부모요소의 경계선에 위치하게되어 단어와 문자 사이 공간이 조절되어 각 행들의 길이가 같아진다.
하지만 브라우저에 따라 문자사이에 여백을 추가하기도하고 단어사이에만 별도의 여백을 추가하는등 표현방법이 다르기 때문에 주의해야한다.

어간 (단어 사이의 간격)
word-spacing

자간 (글자 사이의 간격)
letter-spacing

text-transform
uppercase : 대문자로 변경
lowercase : 소문자로 변경
capitalize : 각 단어의 첫 번째 문자만 대문자로 변환

text-decoration
underline : 밑줄을 추가한다
overline : 윗줄을 추가한다
line-through : 중간선을 추가한다
blink : 깜빡거리는 텍스트를 표현한다

text-decoration은 상속이 되지 않는다.

텍스트 그림자 설정
text-shadow
default : 그림자 효과 없음
길이를 두개또는 세개를 삽입하는데 처음 두 개의 길이 값은 텍스트와 그림자 사이의 결정하고,
옵션 값인 세번 째 길이 값은 그림자의 블러 반지름을 정의한다.

text-shadow : blue 5px 0.5em;

길이를 음수 값으로 설정하면, 그림자는 텍스트의 좌측과 상단 방향으로 나타나게 된다.

화이트스페이스 다루기

white-space
pre : whitespace를 무시하지 않고, 줄을 바꿀수있지만 자동으로 바뀌지 않는다.
nowrap : whitespace를 무시하고, 줄을 바꿀수 없으며 자동으로 바뀌지도 않는다.
pre-wrap : whitespace를 무시하지 않고, 줄을 바꿀수있으며 자동으로 바뀌기도 한다.
pre-line : whitespace를 무시하고, 줄을 바꿀수있으며, 자동으로 바뀌기까지한다.

'공부 > Cascading Style Sheets' 카테고리의 다른 글

padding, border, margin  (1) 2010.04.18
폰트  (0) 2010.04.04
값과 단위  (0) 2010.04.03
상속  (0) 2010.04.03
구체성  (0) 2010.04.03
Posted by terebyte
2010. 4. 4. 05:09
폰트패밀리

Serif 폰트
폭이 가변적이다. (폰트의 모든 문자가 너비가 다르게 되어있다)
serif는 소문자l의 위아래나 대문자 A하단의 작은 돌기처럼 각 문자의 끝에있는 장식을 말한다.
예) Times, Georgia, New Century Schoolbook 등

Sans-serif 폰트
폭이 가변적이다.
하지만 serif가 없다.
예) Helvetica, Geneva, Verdana, Arial, Univers 등

고정폭 폰트
고정폭 폰트는 폭이 일정하다.
보통 프린터의 출력문이나 오래된 컴퓨터화면, 타자기의 효과를 나타낼때 사용된다.
고정폭 폰트는 모든 문자가 같은 너비를 가지고 있다.
이 폰트는 serif가 있을 수도 있고 없을 수도 있다.
특정 폰트가 같은 너비를 가지게 되면 serif의 유무와 상관없이 고정폭 폰트로 분류된다.
예) Courier, Courier New, Andale Mono 등

Cursive 폰트
손으로 직접 쓴 효과를 주기 위해 사용된다.
대부분 곡선으로 이루어져 있고 serif보다 과장된 장식을 갖고있다.
예) Zapf Chancery, Author, Comic Sans 등

Fantasy 폰트
특정한 기준으로 정의내리기 어렵다.
예) Western, Woodblock, Klingon 등

예) h1 { font-family : serif;}
      h1태그의 글씨폰트를 serif 폰트패밀리에 해당하는 폰트들중 하나로 표시한다.

폰트패밀리 지정하기

예) h1 { font-family : Georgia;}
      h1태그의 글씨폰트를 Georgia폰트로 바꾼다.

하지만 사용자 에이전트가 'Georgia'라는 폰트를 찾을수 없다면, 기본 폰트로 표현된다.
하지만 폰트 패밀리와 결합해서 사용한다면 정확하진 않지만 비슷하게는 표시할수있다.

예) h1 { font-family : Georgia, serif;}
      h1태그의 글씨폰트를 Georgia폰트로 바꾸고, 만약 Georgia폰트가 존재하지 않는다면 다른 serif폰트를 이용해 표시한다.

왼쪽부터 차례대로 우선순위에 따라 적용된다.
폰트 패밀리 선언에서 폰트의 이름에 공백이 들어가있거나, #이나 $등의 특수기호가 들어가 있는경우는 인용부호 ' 로 묶어줘야 한다.

예) h1 { font-family : 'New Century Schoolbook', 'Karrank%';}

만약 인용부호로 붂어주지 않는다면, 사용자 에이전트가 나머지 부분은 처리하지만 특정 폰트부분은 완전히 무시하게 될 가능성이 있다.
만약 폰트패밀리의 이름과 동일한 특정한 폰트를 사용하고자할때도 인용부호로 묶어줘야한다.

예) h1 { font-family : 'serif', serif;}
      h1태그의 글씨폰트를 'serif'라는 이름의 특정한 폰트로 바꾸고, 만약 'serif'라는 이름의 특정한 폰트가 없다면 serif패밀리의 다른 폰트를 이용해서 표시한다.


폰트 웨이트

절대크기 : normal, bold
상대크기 : bolder, lighter
예) h1 { font-weight : bold;}
      h1태그의 글씨를 Bold체로 바꾼다.

폰트 사이즈

절대크기 : xx-small, x-small, small, medium, large, x-large, xx-large
상대크기 : larger, small

폰트 스타일

italic, oblique, normal, inherit
oblique는 폰트자체를 기울이며, italic은 기울임꼴의 폰트를 사용한다.
italic이 없을경우 oblique를 대체사용가능하지만 oblique가 없을경우 italic을사용할수는 없다. 
폰트변형

font-variant : small-caps;
소형 대문자를 사용한다.

이모든것을 <font>에 넣어서 사용할수있다.
font에는 font-style, font-variant, font-weight, font-size, font-family 등등이 들어가며
앞의 세가지는 순서가 바뀌거나 생략해도 돼지만 뒤의 두가지는 생략도 불가능하며 순서도 뒤바뀌면 안된다.

시스템 폰트의 사용
운영체제와 잘어울리는 폰트
caption : 버튼처럼 글자가 있는 컨트롤에 사용되는 폰트 스타일
icon : 아이콘에 이름을 지정할 때 사용되는 폰트 스타일
ment : 드롭다운 메뉴나 메뉴 리스트에 사용되는 폰트스타일
message-box : 대화 상자에 사용되는 폰트 스타일
small-caption : 작은 컨트롤에 이름을 지정할 때 사용되는 폰트 스타일
status-bar : 윈도우의 상태 바에 사용되는 폰트 스타일

폰트 다운로드
@font-face {font-family : "폰트명";
src : url(경로명);}

'공부 > Cascading Style Sheets' 카테고리의 다른 글

padding, border, margin  (1) 2010.04.18
텍스트 속성  (0) 2010.04.09
값과 단위  (0) 2010.04.03
상속  (0) 2010.04.03
구체성  (0) 2010.04.03
Posted by terebyte
2010. 4. 3. 04:24
색상

브라우저에서 인식할수있는 이름있는 색상
rgb(0~100%, 0~100%, 0~100%)
rgb(0~255, 0~255, 0~255)
#000000~#FFFFFF

길이

절대길이단위

인치(in)
일반적으로 미국에서 사용되는 인치
센티미터(cm)
일반적으로 세계적으로 사용되는 센티미터로 1인치는 2.54센티미터이고, 1센티미터는 0.394인치이다.
밀리미터(mm)
일반적으로 세계적으로 사용되는 밀리미터로 1인치는 25.4밀리미터이고, 1밀리미터는 0.0394인치이다.
포인트(pt)
인쇄술의 표준 길이로 1인치는 72포인트이다. 12포인트로 지정된 텍스트의 대문자 높이는 1/6인치이다.
파이카(pc)
인쇄에서 사용하는 용어로, 1파이카는 12포인트이다. 1인치는 6파이카이다.

상대길이단위

em (em-height)
em은 font-size의 값과 동일한 값으로 설정된다. 만약 폰트 크기에 em 단위가 사용될경우 부모요소의 폰트 크기를 기준으로 em이 계산된다.
ex (x-height)
사용하는 폰트의 소문자 x의 높이를 기준으로 한다.
px (pixel)
픽셀을 기준으로 한다.

URL
절대경로
url(프로토콜://서버/경로명)

상대경로
url(경로명)

url과 괄호 사이에 공백이 있어서는 안됀다.
예) url (경로명)

키워드
어떤 값을 특정한 단어로 설명할때 사용한다.
예) none, underline, normal 등

inherit
속성의 값을 부모 요소의 값과 동일하게 만든다.

각도 값
음수값이 허용되며 각각의 단위는 0~360사이의 도로 변환된다.
도(deg)
그레이드(grad)
라디안(rad)

시간값
음수값이 허용되지 않으며, 100ms는 0.1s와 동일하다.
밀리초(ms)
초(s)

주파수 값
음수값이 허용되지않으며, 값의 단위는 대소문자를 구분하지 않는다.
헤르츠(Hz)
메가헤르츠(MHz)

'공부 > Cascading Style Sheets' 카테고리의 다른 글

텍스트 속성  (0) 2010.04.09
폰트  (0) 2010.04.04
상속  (0) 2010.04.03
구체성  (0) 2010.04.03
가상클래스와 가상요소 선택자  (4) 2010.04.02
Posted by terebyte
2010. 4. 3. 03:50
조상 element에 특정 속성이 선언되면 더이상 상속받을 element가 없을때까지 모든 자손 element에 상속이 된다.


하지만 몇 가지 속성은 상속되지 않는다.
예) margin, padding, background, border 등

상속이 될경우 구체성이 아예없어서 0조차 가지지 않는다. (구체성 0,0,0,0보다 아래)

캐스케이드

모든 선언을 중요도에 따라 분류한다.
선언에는 author, reader, user agent 세가지의 출처가 있다.
일반적인상황에서는 author 가 reader보다 우선한다. 하지만 !important로 선언된 reader 의경우는 author를 포함한 다른 스타일보다 우선한다. user agent는 기본적으로 author와 reader보다 우선순위가 낮다.
구체성에 따라 우선순위를 분류한다.
선언이 뒤에위치할수록 우선순위가 높다.

'공부 > Cascading Style Sheets' 카테고리의 다른 글

폰트  (0) 2010.04.04
값과 단위  (0) 2010.04.03
구체성  (0) 2010.04.03
가상클래스와 가상요소 선택자  (4) 2010.04.02
문서 구조 선택자  (0) 2010.04.02
Posted by terebyte
2010. 4. 3. 03:35
선택자의 구체성은 0,0,0,0처럼 4개의 부분 값으로 표현된다.

선택자에 있는 모든 id 속성값에 0,1,0,0 값이 추가된다.
선택자에 있는 모든 class 속성값과 기타 속성, 가상 클래스에 0,0,1,0 값이 추가된다.
선택자에 있는 모든 요소와 가상 요소에 0,0,0,1 값이 추가 된다.
조합자나 전체 선택자는 구체성에 아무런 영향을 주지 못한다.

구체성의 값은 좌측에서 우측으로 선별된다.

inline style은 1,0,0,0 이 적용된다.


important 선언

important선언은 일반적인 선언과 비교할때 항상 우위에 있으며, important선언 끼리의 비교는 구체성에따라 결정된다.
예) p.death { color : black !important; background : red;}
 

'공부 > Cascading Style Sheets' 카테고리의 다른 글

값과 단위  (0) 2010.04.03
상속  (0) 2010.04.03
가상클래스와 가상요소 선택자  (4) 2010.04.02
문서 구조 선택자  (0) 2010.04.02
선택자  (0) 2010.04.02
Posted by terebyte
2010. 4. 2. 18:13
정적인 가상 class

링크에 대한 가상 class

:link
아직 방문하지않은 앵커
:visited
이미 방문한 앵커

예) a:visited { color : red;}
      방문한 앵커의 색깔을 red로 바꾼다.

첫번째 자식 요소에 대한 가상 class

:first-child
아무 element나 첫 번재 자식관계에 해당하는 element를 선택한다

예) <div>
      <a href="#">click</a>
      </div>
      
      a:first-child { font-weight : bold;}
      아무 element(여기선 div element)의 첫번째 자식 관계인 element가 a 이므로 해당하는 a의 글씨에 bold효과를 준다.

언어를 이용한 가상 class

:lang
사용된 언어를 기반으로 선택한다. 특정속성 선택자인 |= 와 같은방식으로 동작한다.

예) *:lang(en) { font-style : italic;}
      영어로 작성된 모든 elemenet에 italic효과를 준다.


동적인 가상 class

:focus
현재 focus를 갖고있는 element
:hover
마우스 포인터가 위치해 있는 element
:active
입력에 의해 active된 element

예) a:link { color : navy;}
      방문하지않은 앵커의 색깔을 navy로 한다.
      a:visited { color : gray;}
      방문한 앵커의 색깔을 gray로 한다.
      a:hover { color : red;}
      현재 마우스포인터가 올라와있는 앵커의 색깔을 red로 바꾼다.
      a:active { color : yellow;}
      입력에 의해 앵커가 활성화된경우 앵커의 색깔을 yellow로 바꾼다.

      처음 두개는 정적인 가상 class를 이용했고, 아래 두가지는 동적인 가상 class를 이용한다.
      요즘의 추세는 [link-visited-focus-hover-active] 순으로 바뀌고 있지만,
      일반적으로는 [link-visited-hover-active]순서로 사용하는것을 권장한다.

동적인 가상 class는 element의 종류에 상관없이 적용된다.

가상 class는 조합해서 사용이 가능하다

예) a:link:hover { color : maroon;}
      방문하지 않은 링크 위에 마우스가 위치할때 색깔을 maroon으로 변경한다.

가상요소 선택자

첫 번째 글자에 스타일 지정

:first-letter

예) p:first-letter { color : white;}
      p태그의 첫 번째 글자색을 white로 바꾼다.

첫 번째 줄에 스타일 적용하기

:first-line

예) p:first-line { color : red;}
      p태그의 첫 번째 줄 글자색을 red로 바꾼다.

:first-letter와 :first-line은 inline elemement에선 사용이 불가능하고 block element에만 사용할수 있다.

또한 모든 가상요소는 선택자의 끝에서만 사용될 수 있다.

예) p:first-line strong
      가상요소가 끝에오지않고 앞에왔으므로 유효하지 않다.

요소의 앞,뒤에 스타일 적용하기

:before
element앞에 효과를 적용한다.
:after
element뒤에 효과를 적용한다.

예) h1:before { content : "*"}
      h1앞에 *을 덧붙인다.
      h1:after { content : "!"}
      h1뒤에 !을 덧붙인다.

'공부 > Cascading Style Sheets' 카테고리의 다른 글

상속  (0) 2010.04.03
구체성  (0) 2010.04.03
문서 구조 선택자  (0) 2010.04.02
선택자  (0) 2010.04.02
대체 스타일시트  (0) 2010.04.02
Posted by terebyte
2010. 4. 2. 17:37



부모-자식 관계
element가 한 단계로 관계되어있는경우를 부모-자식관계라고 한다.
예) head-title, body-p, p-strong, ol-li

조상-자손 관계
element가 두 단계 이상으로 관계되어있는경우를 조상-자손관계라고 하며, 그때부터 부모-자식관계는 이루어질수 없다.
예) html-li, body-a, ul-ol

자식선택자 -> >
p > strong {color : red;}
p태그 아래의 strong태그의 색깔을 red로 바꾼다.

자손선택자 -> 공백
p a {font-weight : bold;}
p태그아래의 a태그의 글씨에 bold효과를 준다.

인접형제선택자 -> +
p + h1 {color : blue;}
p태그와 그에 인접한 형제관계인 h1태그의 색깔을 blue로 바꾼다.


'공부 > Cascading Style Sheets' 카테고리의 다른 글

구체성  (0) 2010.04.03
가상클래스와 가상요소 선택자  (4) 2010.04.02
선택자  (0) 2010.04.02
대체 스타일시트  (0) 2010.04.02
link 태그  (1) 2010.04.02
Posted by terebyte
2010. 4. 2. 11:37
class 선택자
<p class="important">terebyte</p>
p.important { font-weight : bold;}

class가 important인 p태그의 글씨에 bold효과를 준다.

다중class ->  .
<p class = "important wintercrew kwu">terebyte</p>
<p class = "important wintercrew ssu">winterclue</p>

p.wintercrew { font-weight : bold;}
class가 wintercrew인 p태그의 글씨에 bold효과를 준다.

p.wintercrew.important { font-style : italic;}
class가 wintercrew와 important모두 포함된 p태그의 글씨에 italic효과를 준다.

p.kwu.important { background : blue;}
class가 kwu와 important모두 포함된 p 태그의 글씨의 배경색을 blue로 준다.

이와 같이 다중 class를 사용할경우 class 선택자를 연결할때 순서는 전혀 상관이 없다.

id 선택자  -> #
<p id="terebyte">terebyte</p>

p#terebyte { font-weight : bold;}
id가 terebyte인 p태그의 글씨에 bold 효과를 준다.


class와 id의 차이점
HTML문서에서 class는 중복해서 사용이 가능하지만 id는 중복사용이 불가능하다.

유효
<p class="wintercrew">terebyte</p>
<p class="wintercrew">winterclue</p>

유효하지않음
<p id="wintercrew">terebyte</p>
<p id="wintercrew">winterclue</p>


속성 선택자
img[alt] { border : 2px solid blue;}
alt속성이 있는 img태그에 테두리효과를 준다.

마찬가지로 속성여러개를 동시에 사용할수도있으며 정확하게 속성값을 지정할수도 있다.

a[class][href] { font-style : italic;}
class속성과 href속성이있는 a태그의 글씨에 italic효과를 준다.

a[href="wintercrew-official.com"] { font-weight : bold;}
href속성이 wintercrew-official.com인 a태그의 글씨에 bold효과를 준다.

하지만 이방식은 정확한 속성값을 요구해서 공백으로 분리된 목록을 값으로 가지는 속성들과 사용할때는 문제가 생긴다.

<p class="wintercrew kwu">terebyte</p>

p[class="wintercrew kwu"] {font-style : italic;}
class속성이 wintercrew kwu인 p태그의 글씨에 italic효과를 준다.

p[class="wintercrew"] {font-weight : bold;}
class속성에 wintercrew가 포함된 p태그의 글씨에 bold효과를준다.

라는 의미로 썼지만 이경우는 해당이 되지않는다.
위와 같은 의미로 사용할경우

p[class~="wintercrew"] {font-weight : bold;}
다음과 같이 ~ (틸데기호)를 사용해야한다.

이러한 부분 속성값으로 선택할때 사용하는기호가 몇가지 있다.

attribute ^= "value" 속성이 value로 시작하는 요소
attribute $= "value" 속성이 value로 끝나는 요소
attribute *= "value "속성에 value가 포함되는 요소


특정 속성 선택자

<p class="wintercrew">wintercrew</p>
<p class="winterclue">winterclue</p>

p[class |= "winter"] {font-weight : bold;}
이 선택자는 class속성이 winter이거나 winter로 시작되는 요소를 선택해준다.
따라서 위의 두 p태그모두의 글씨에 bold효과를 준다.





'공부 > Cascading Style Sheets' 카테고리의 다른 글

가상클래스와 가상요소 선택자  (4) 2010.04.02
문서 구조 선택자  (0) 2010.04.02
대체 스타일시트  (0) 2010.04.02
link 태그  (1) 2010.04.02
element  (1) 2010.04.02
Posted by terebyte
2010. 4. 2. 10:56
대체 스타일시트(alternate stylesheet)

link태그에서 rel속성을 alternate stylesheet로 지정하면 대체 스타일시트가 정의된다.
스타일목록은 link태그의 title값을 이용해서 만들어진다.

<link rel="stylesheet" tpye="text/css" href="default.css" title="default" />
<link rel="alternate stylesheet" type="text/css" href="terebyte.css" title="terebyte" />
<link rel="alternate stylesheet" type="text/css" href="winterclue.css" title="winterclue" />

이렇게 마크업을 작성할 경우 사용자가 자신이 원하는 스타일을 고를 수 있게된다.
가장 먼저 선언되었으므로 기본적으로 default.css의 스타일로 표시되며 변경이 가능하다.

'공부 > Cascading Style Sheets' 카테고리의 다른 글

가상클래스와 가상요소 선택자  (4) 2010.04.02
문서 구조 선택자  (0) 2010.04.02
선택자  (0) 2010.04.02
link 태그  (1) 2010.04.02
element  (1) 2010.04.02
Posted by terebyte