πŸ’» Programming/CSS

[CSS] 2. Syntax ( 문법, μ‚¬μš©λ²• )

 

CSS λ₯Ό μ‚¬μš©ν•˜λ €λ©΄ 문법에 따라야겠죠?? 이번 ν¬μŠ€νŒ…μ—μ„œλŠ” κ·Έ 문법에 λŒ€ν•΄μ„œ μ•Œμ•„λ³΄λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€.  

CSSλŠ” μŠ€νƒ€μΌ κ·œμΉ™μ„ λ”°λ₯΄λŠ”데 이 μŠ€νƒ€μΌ κ·œμΉ™μ—λŠ” 세가지 μš”μ†Œκ°€ μžˆμŠ΅λ‹ˆλ‹€. 

  • μ…€λ ‰ν„° : μ…€λ ‰ν„°λŠ” HTML νƒœκ·Έμ˜ 이름을 λ§ν•©λ‹ˆλ‹€. 예λ₯Όλ“€λ©΄ <h1> νƒœκ·Έμ˜ h1μ΄λ‚˜ <table> νƒœκ·Έμ˜ table이 셀렉터인거죠.

  • 속성 : 속성은 htmlνƒœκ·Έ λ‚΄μ—μ„œ μ‚¬μš©λ˜λŠ” 그런 속성듀을 λ§ν•©λ‹ˆλ‹€. colorλ‚˜ border같은 것듀을 λ§ν•˜λŠ”κ±°μ£ .

  • κ°’ : 이 값은 속성에 ν• λ‹Ήλ˜λŠ” 값을 λ§ν•©λ‹ˆλ‹€. color속성이 red값을 κ°–λŠ”λ‹€ 뭐 이런거죠.

이 세가지 μš”μ†Œλ₯Ό ν•©ν•˜λ©΄ κ·Έκ²Œλ°”λ‘œ μ•„λž˜μ™€ 같은 μŠ€νƒ€μΌ κ·œμΉ™μž…λ‹ˆλ‹€.

μ…€λ ‰ν„° { 속성 : κ°’ }

예제 : ν…Œμ΄λΈ” μ…€λ ‰ν„°μ˜ 속성 μ§€μ •ν•˜κΈ°

table{ border :1px solid #C00; }

μœ„ μ˜ˆμ œκ°€ λ­ν•˜λŠ”κ±΄μ§€ 이해가 λ˜λ‚˜μš”? tableνƒœκ·Έμ˜ 속성 쀑에 border 속성 값을 1px solid #C00 둜 섀정을 ν•œκ²λ‹ˆλ‹€.

 

자, 이제 μ–΄λŠμ •λ„ 감이 μ˜€λ‚˜μš”???  

 

그럼 이제 셀렉터듀이 μ–΄λ–€ 것듀이 μžˆλŠ”μ§€λ„ ν•œλ²ˆ λ΄λ³ΌκΉŒμš”? 

The Type Selectors ( νƒ€μž… μ…€λ ‰ν„° )

h1νƒœκ·Έκ°€ λ­”μ§€λŠ” 이미 μ•„μ‹œκ² μ£ ? 레벨1 헀더 νƒœκ·Έμ£ . κ·Έ νƒœκ·Έμ˜ 색깔 속성을 μ§€μ •ν•΄μ£ΌλŠ” μ˜ˆμ œκ°€ 밑에 μžˆκ΅°μš”.

h1 { 
   color: #36CFFF; 
}

The Universal Selectors ( μœ λ‹ˆλ²„μ„€ μ…€λ ‰ν„° )

ν•˜λ‚˜μ˜ νŠΉμ •ν•œ μ…€λ ‰ν„°λ₯Ό μ„ νƒν•˜λŠ” 것이 μ•„λ‹ˆλΌ λͺ¨λ“  셀렉터에 λŒ€ν•΄μ„œ 속성을 지정해주고 μ‹Άμ„λ•Œ μ‚¬μš©ν•˜λŠ” μœ λ‹ˆλ²„μ„€ μ…€λ ‰ν„°μž…λ‹ˆλ‹€. * κΈ°ν˜ΈλŠ” "λͺ¨λ“ "μ΄λΌλŠ” 의미λ₯Ό κ°–κ³ μžˆμ£ .

* { 
  color: #000000; 
}

λͺ¨λ“  μ…€λ ‰ν„°(νƒœκ·Έ)에 λŒ€ν•΄μ„œ μƒ‰κΉŒ 속성값을 κ²€μ •μœΌλ‘œ μ„€μ •ν•œ 예제죠? μ•„λ‹Œκ°€μš”? 

The Descendant Selectors ( 후손 μ…€λ ‰ν„° )

νƒœκ·Έμ•ˆμ— 또 λ‹€λ₯Έ νƒœκ·Έκ°€ λ“€μ–΄κ°ˆ μˆ˜κ°€ μžˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ΄λ•Œ 후손 셀렉터에 λŒ€ν•΄μ„œλ§Œ μ μš©μ„ ν•˜κ³  싢은 속성값이 μžˆμ„ν…λ° κ·ΈλŸ΄λ•ŒλŠ” μ•„λž˜μ™€ 같이 μ‚¬μš©ν•˜μ‹œλ©΄ λ©λ‹ˆλ‹€. μ•„λž˜ μ˜ˆμ œλŠ” ulνƒœκ·Έ μ•ˆμ— μ‚¬μš©λœ emνƒœκ·Έμ˜ 속성을 μ§€μ •ν•΄μ£ΌλŠ” μ˜ˆμ œμž…λ‹ˆλ‹€.

ul em {
  color: #000000; 
}

The Class Selectors ( 클래슀 μ…€λ ‰ν„° )

λ§Œμ•½ 클래슀 λ‹¨μœ„λ‘œ 속성값을 지정해주고 μ‹Άλ‹€λ©΄ 클래슀 μ…€λ ‰ν„°λ₯Ό μ‚¬μš©ν•˜μ‹œλ©΄ λ©λ‹ˆλ‹€.  

μ‚¬μš©λ²•μ€ μ•„λž˜μ™€ κ°™μŠ΅λ‹ˆλ‹€. 점(.)을 찍고 λΆ™μ—¬μ„œ 클래슀λͺ…을 μ¨μ£Όμ‹œλ©΄ λ©λ‹ˆλ‹€. 

.black {
  color: #000000; 
}

μœ„ μ˜ˆμ œλŠ” blackν΄λž˜μŠ€μ— μ†ν•œ λͺ¨λ“  νƒœκ·Έμ˜ 색을 검정색(#000000)으둜 μ§€μ •ν•΄μ£ΌλŠ” μ˜ˆμ œλ„€μš” . μ’€ 더 λ²”μœ„λ₯Ό μ’ν˜€μ„œ μ•„λž˜μ²˜λŸΌ μ‚¬μš©ν•˜μ‹€ μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.  

h1.black {
  color: #000000; 
}

 <h1> νƒœκ·Έμ΄λ©΄μ„œ blackν΄λž˜μŠ€μ— μ†ν•œ νƒœκ·Έλ“€μ˜ 색깔을 λͺ¨λ‘ #000000으둜 μ§€μ •ν•΄μ£ΌλŠ” μ˜ˆμ œκ΅°μš”.

 

# 참고둜 μ•„λž˜μ²˜λŸΌ ν•˜λ‚˜μ˜ νƒœκ·Έμ— μ—¬λŸ¬κ°œμ˜ 클래슀λ₯Ό λΆ€μ—¬ν•  수 μžˆλ‹€λŠ” 점도 μ•Œκ³ κ³„μ‹œλ©΄ μ’‹κ² λ„€μš”:

<p class="center bold">
This para will be styled by the classes center and bold.
</p>

The ID Selectors ( 아이디 μ…€λ ‰ν„° )

μ΄λ²ˆμ—λŠ” 아이디 셀렉터에 λŒ€ν•΄μ„œ 보도둝 ν•˜κ² μŠ΅λ‹ˆλ‹€. λͺ¨λ“  νƒœκ·Έμ—λŠ” 아이디λ₯Ό λΆ€μ—¬ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 그리고 κ·Έλ ‡κ²Œ λΆ€μ—¬λœ 아이디λ₯Ό μ…€λ ‰νŠΈν•˜κΈ°μœ„ν•΄μ„œλŠ” # 기호λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. 

#black {
  color: #000000; 
}

μœ„ μ˜ˆμ œλŠ” idκ°€ black인 μš”μ†Œμ˜ 색깔을 κ²€μ •μœΌλ‘œ μ§€μ •ν•˜λŠ” μ˜ˆμ œμž…λ‹ˆλ‹€.

h1#black {
  color: #000000; 
}

μœ„ μ˜ˆμ œλŠ” <h1> μš”μ†Œλ‚΄μ˜ λͺ¨λ“  μš”μ†Œλ“€ μ€‘μ—μ„œ idκ°€ black인 λ…€μ„μ—κ²Œλ§Œ 검정색 속성을 μ£Όμ—ˆλ„€μš”

이 idμ…€λ ‰ν„°κ°€ κ°€μž₯ μœ μš©ν•˜κ²Œ μ“°μ΄λŠ” κ²½μš°λŠ” μ•„λž˜μ²˜λŸΌ 후손 μ…€λ ‰ν„°λ“€μ—κ²Œ 속성을 λΆ€μ—¬ν•  λ•Œμž…λ‹ˆλ‹€.

#black h2 {
  color: #000000; 
}

μœ„ μ˜ˆμ œλŠ” νƒœκ·Έidκ°€ black인 νƒœκ·Έλ‚΄μ˜ h2νƒœκ·Έμ˜ 색깔 속성값을 μ§€μ •ν•΄μ£ΌλŠ” 예제죠? μ•„λ‹Œκ°€μš”? λ§žμŠ΅λ‹ˆλ‹€. 

The Child Selectors ( μžμ‹ μ…€λ ‰ν„° )

μœ„μ—μ„œ λ§ν•œ 후손 μ…€λ ‰ν„°λŠ” descendant λΌκ³ ν•˜μ—¬ λͺ¨λ“  후손듀에 λŒ€ν•΄ 적용이 λ©λ‹ˆλ‹€. ν•˜μ§€λ§Œ 이 μžμ‹ μ…€λ ‰ν„°λŠ” 직계 μžμ‹λ§Œ 해당이 λ©λ‹ˆλ‹€. 예제λ₯Ό ν•œλ²ˆ λ³΄μ‹€κΉŒμš”.

body > p {
  color: #000000; 
}

<body> νƒœκ·Έ λ°”λ‘œ 밑에 μžˆλŠ” <p> 에 λŒ€ν•΄μ„œλ§Œ μ μš©λ˜λŠ” μŠ€νƒ€μΌμ„ μ •μ˜ν–ˆκ΅°μš”. bodyμ•ˆμ˜ divμ•ˆμ—μ„œ μ‚¬μš©λœ pνƒœκ·ΈλŠ” μœ„ μŠ€νƒ€μΌμ˜ μ μš©μ„ 받지 μ•ŠμŠ΅λ‹ˆλ‹€.

The Attribute Selectors ( 속성 μ…€λ ‰ν„° )

μ•„λž˜ μ˜ˆμ œλŠ” inputνƒœκ·Έμ˜ type속성이 text인 λ…€μ„λ“€μ˜ 색을 μ§€μ •ν•΄μ£ΌλŠ” μ˜ˆμ œμž…λ‹ˆλ‹€.

input[type="text"]{
  color: #000000; 
}

μœ„μ— μ •μ˜λœ μŠ€νƒ€μΌμ€ <input type="submit" /> μš”μ†Œμ—λŠ” 적용이 λ˜μ§€ μ•ŠλŠ”λ‹€λŠ” 것이죠.

μ•„λž˜λŠ” 속성 μ…€λ ‰ν„°μ˜ μ‚¬μš©λ²•μž…λ‹ˆλ‹€.

  • p[lang]lang 속성을 κ°–λŠ” λͺ¨λ“  λ¬Έλ‹¨μš”μ†Œλ₯Ό 선택.

  • p[lang="fr"] - lang attribute이 "fr"인 λͺ¨λ“  문단 μš”μ†Œλ₯Ό 선택.

  • p[lang~="fr"] - lang 속성이 "fr"을 ν¬ν•¨ν•˜λŠ” λͺ¨λ“  문단 μš”μ†Œλ₯Ό 선택.

  • p[lang|="en"] - lang 속성이 "en"μ΄κ±°λ‚˜ λ˜λŠ” "en"으둜 μ‹œμž‘ν•˜λŠ” 문단 μš”μ†Œλ₯Ό 선택.

Multiple Style Rules ( 닀쀑 μŠ€νƒ€μΌ κ·œμΉ™ )

μ§€κΈˆκΉŒμ§€λŠ” ν•˜λ‚˜μ˜ μš”μ†Œμ— ν•˜λ‚˜μ˜ μŠ€νƒ€μΌλ§Œ μ μš©μ„ ν–ˆμŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ μš”μ†Œλ§ˆλ‹€ μ—¬λŸ¬κ°œμ˜ 속성을 κ°€μ§ˆ 수 μžˆμœΌλ‹ˆ μ—¬λŸ¬κ°œμ˜ μŠ€νƒ€μΌμ„ 지정할 μˆ˜λ„ μžˆμ–΄μ•Όκ² μ£ ?  

h1 {
color: #36C;
font-weight: normal;
letter-spacing: .4em;
margin-bottom: 1em;
text-transform: lowercase;
}

μœ„ 예제처럼 μ„Έλ―Έμ½œλ‘  (;) 으둜 μŠ€νƒ€μΌμ„ κ΅¬λΆ„ν•˜μ—¬ μ •μ˜ν•΄μ£Όλ©΄ λ©λ‹ˆλ‹€. κ°„λ‹¨ν•˜μ£ ?

각 속성에 μ§€μ •λœ 속성값듀에 λŒ€ν•΄μ„œλŠ” 이게 λ­”κ°€ ν•˜μ‹€ μˆ˜λ„ μžˆλŠ”λ° μ‹ κ²½μ“°μ§€λ§ˆμ‹œκ³  일단 λ„˜μ–΄κ°€μ„Έμš”. μ°¨κ·Όμ°¨κ·Ό 배우면 λ©λ‹ˆλ‹€ ^___^ 

Grouping Selectors ( μ…€λ ‰ν„° κ·Έλ£Ήν™” )

λ‚΄κ°€ μ§€μ •ν•œ μŠ€νƒ€μΌμ„ μ—¬λŸ¬κ°œμ˜ μš”μ†Œμ— ν•œκΊΌλ²ˆμ—!!!!  μ μš©ν•˜κ³  μ‹ΆμœΌμ‹œλ‹€λ©΄!!!!

h1, h2, h3 {
color: #36C;
font-weight: normal;
letter-spacing: .4em;
margin-bottom: 1em;
text-transform: lowercase;
}

μœ„ μ˜ˆμ œλŠ” h1, h2 and h3 μš”μ†Œμ— ν•œκΊΌλ²ˆμ— μŠ€νƒ€μΌμ„ μ μš©μ‹œν‚€λŠ” μ˜ˆμ œμž…λ‹ˆλ‹€. μˆœμ„œλŠ” μ „ν˜€ 상관이 μ—†κ΅¬μš” 콀마λ₯Ό μ΄μš©ν•΄μ„œ 셀렉터듀을 κ΅¬λΆ„μ§€μ–΄μ£Όμ‹œλ©΄ λ˜κ² μŠ΅λ‹ˆλ‹€. μ•„λž˜μ²˜λŸΌ 아이디 μ…€λ ‰ν„°λ₯Ό μ΄μš©ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.

#content, #footer, #supplement {
position: absolute;
left: 510px;
width: 200px;
}

클래슀 μ…€λ ‰ν„°λ‚˜ λ‹€λ₯Έ 셀렉터듀을 ν•¨κ»˜ μ‚¬μš©ν•΄λ³΄λŠ” μ—°μŠ΅λ„ ν•΄λ³΄μ„Έμš” ^____^

 

 

 

 

Reference : http://www.tutorialspoint.com/css/css_syntax.htm

 

 

 

 

 

 

'πŸ’» Programming > CSS' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

[CSS] 6. Background ( λ°°κ²½ μ„€μ • )  (0) 2016.06.12
[CSS] 5. Colors ( 색깔 )  (0) 2016.06.12
[CSS] 4. Units ( λ‹¨μœ„ )  (0) 2016.06.12
[CSS] 3. HTML에 CSS링크 - Associating Styles with HTML  (0) 2016.06.12
[CSS] 1. CSSλž€ ?  (0) 2016.06.11