Before. 2021

CSS Selector

빙고ꡬ맛탕 2012. 10. 9. 10:45

ν˜„μž¬κΉŒμ§€(κΈ€ μž‘μ„±μΌ ν˜„μž¬) Completed Work둜 규격의 μ •μ˜κ°€ λλ‚˜ λͺ¨λ“  λͺ¨λ˜ λΈŒλΌμš°μ €μ—μ„œ μ‹€ μ‚¬μš©μ΄ κ°€λŠ₯ν•œ Selectors Level 3 κΉŒμ§€μ˜ Selector듀에 λŒ€ν•΄ 정리해 λ³΄μ•˜μŠ΅λ‹ˆλ‹€.

이전 http://biew.co.kr/10 ν¬μŠ€νŠΈμ—μ„œμ™€ 같이 selectivizrλ₯Ό μ΄μš©ν•˜λ©΄ μ‚¬μš© κ°€λŠ₯ν•œ Selector듀이 있고, 이λ₯Ό μ‚¬μš©ν•˜λ©΄ λΆˆν•„μš”ν•œ 클래슀(특히 class="last" λ˜λŠ” class="first" λ“±) 없이 μ‚¬μš© κ°€λŠ₯ν•˜λ―€λ‘œ Front-end 단 Mark up μž‘μ„±μžλ„ νŽΈν•˜κ³ , Server 단 κ°œλ°œμžμ™€μ˜ ν˜‘μ—…λ„ 쑰금 더 μˆ˜μ›”ν•΄ 질 것 μž…λ‹ˆλ‹€.
SelectorλŠ” 많이 μ΄ν•΄ν•˜κ³  μ‘μš©λ ₯이 풍뢀할 수둝 상상 μ΄μƒμ˜ λ””μžμΈλ“€μ„ μ‹¬ν”Œν•˜κ³  μ‹œλ©˜ν‹±ν•œ λ§ˆν¬μ—…μ— 이미지 없이 μž…ν˜€μ€„ μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. (λ¬Όλ‘  λ‹€λ₯Έ CSS3λ“€κ³Όμ˜ μ•„λ¦„λ‹€μš΄ μ‘°ν™”κ°€ ν•„μš”ν•©λ‹ˆλ‹€.)

ν˜„μž¬ 예제둜 μž…λ ₯된 λ‚΄μš©λ“€μ΄ 썩 μ’‹λ‹€κ³  이야기 λ“œλ¦΄ 수 μ—†μ–΄μ„œ 죄솑할 λ”°λ¦„μž…λ‹ˆλ‹€λ§Œ, 더 μ ν•©ν•˜κ³  μ΄ν•΄ν•˜κΈ° μ‰¬μš΄ μ˜ˆμ œλ“€μ„ κ±΄μ˜ν•΄μ£Όμ‹ λ‹€λ©΄ μ—…λ°μ΄νŠΈ ν•˜λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€.

(β€» CSS3 μ˜ˆμ œλ“€ 같은 κ²½μš°μ—” IEλ₯Ό μ œμ™Έν•œ λΈŒλΌμš°μ €μ—μ„œ 보셔야 정상적인 화면을 보싀 수 μžˆμŠ΅λ‹ˆλ‹€. IE9도 지원은 ν•˜λ˜ μ˜ˆμ œκ°€ 잘 μ•ˆλ‚˜μ˜€λŠ” ν˜„μƒμ΄ μžˆμŠ΅λ‹ˆλ‹€.)

CSS3μ—μ„œ μƒˆλ‘œ μΆ”κ°€λœ Seletor

Selector지원 Browserμ„€λͺ…
E[attr^=val]ie7 ie8 ie9 firefox chrome safari opera'attr' μ†μ„±μ˜ 값이 'val'으둜 μ‹œμž‘ν•˜λŠ” μš”μ†Œλ₯Ό 선택 
E[attr$=val]ie7 ie8 ie9 firefox chrome safari opera'attr' μ†μ„±μ˜ 값이 'val'으둜 λλ‚˜λŠ” μš”μ†Œλ₯Ό 선택 
E[attr*=val]ie7 ie8 ie9 firefox chrome safari opera'attr' μ†μ„±μ˜ 값에 'val'이 ν¬ν•¨λœ μš”μ†Œλ₯Ό 선택 
E:rootie9 firefox chrome safari operaλ¬Έμ„œμ˜ μ΅œμƒμœ„ μš”μ†Œ(html, xml) 선택 
E:nth-child(n)ie9 firefox chrome safari operaμ•žμœΌλ‘œλΆ€ν„° μ§€μ •λœ μˆœμ„œμ™€ μΌμΉ˜ν•˜λŠ” μš”μ†Œκ°€ E라면 선택 (Eμ•„λ‹Œ μš”μ†Œμ˜ μˆœμ„œκ°€ 계산에 포함됨) 
E:nth-last-child(n)ie9 firefox chrome safari operaλ’€λ‘œλΆ€ν„° μ§€μ •λœ μˆœμ„œμ™€ μΌμΉ˜ν•˜λŠ” μš”μ†Œκ°€ E라면 선택 (Eμ•„λ‹Œ μš”μ†Œμ˜ μˆœμ„œκ°€ 계산에 포함됨) 
E:nth-of-type(n)ie9 firefox chrome safari operaE μš”μ†Œ 쀑 μ•žμœΌλ‘œλΆ€ν„° μˆœμ„œκ°€ μΌμΉ˜ν•˜λŠ” μš”μ†Œ 선택 (E μš”μ†Œμ˜ μˆœμ„œλ§Œ 계산에 포함됨) 
E:nth-last-of-type(n)ie9 firefox chrome safari operaE μš”μ†Œ 쀑 λμœΌλ‘œλΆ€ν„° μˆœμ„œκ°€ μΌμΉ˜ν•˜λŠ” μš”μ†Œ 선택 (E μš”μ†Œμ˜ μˆœμ„œλ§Œ 계산에 포함됨) 
E:last-childie9 firefox chrome safari operaλ§ˆμ§€λ§‰μ— λ“±μž₯ν•˜λŠ” μš”μ†Œκ°€ E라면 선택 (E μ•„λ‹Œ μš”μ†Œμ˜ μˆœμ„œκ°€ 계산에 포함됨) 
E:first-of-typeie9 firefox chrome safari operaE μš”μ†Œ 쀑 첫 번째 Eλ₯Ό 선택 (E μš”μ†Œμ˜ μˆœμ„œλ§Œ 계산에 포함됨) 
E:last-of-typeie9 firefox chrome safari operaE μš”μ†Œ 쀑 λ§ˆμ§€λ§‰ Eλ₯Ό 선택 (E μš”μ†Œμ˜ μˆœμ„œλ§Œ 계산에 포함됨) 
E:only-childie9 firefox chrome safari operaE μš”μ†Œκ°€ μœ μΌν•œ μžμ‹μ΄λ©΄ 선택 (E μ•„λ‹Œ μš”μ†Œκ°€ ν¬ν•¨λ˜λ©΄ μ„ νƒμ•ˆν•¨) 
E:only-of-typeie9 firefox chrome safari operaE μš”μ†Œκ°€ μœ μΌν•œ νƒ€μž…μ΄λ©΄ 선택 (E μ•„λ‹Œ μš”μ†Œκ°€ ν¬ν•¨λ˜μ–΄λ„ 선택) 
E:emptyie9 firefox chrome safari operaν…μŠ€νŠΈ 및 곡백을 ν¬ν•¨ν•˜μ—¬ μžμ‹ μš”μ†Œκ°€ μ—†λŠ” Eλ₯Ό 선택 
E:targetie9 firefox chrome safari operaE의 URIκ°€ μš”μ²­λ˜λ©΄ 선택 (λ”°λΌμ„œ EλŠ” IDκ°€ μ§€μ •λ˜μ–΄μ•Ό 함) 
E:enabledie9 firefox chrome safari operaμ‚¬μš© κ°€λŠ₯ν•œ 폼 컨트둀(input, textarea, select, button) Eλ₯Ό 선택 
E:disabledie9 firefox chrome safari operaμ‚¬μš© λΆˆκ°€λŠ₯ν•œ 폼 컨트둀(input, textarea, select, button) Eλ₯Ό 선택 
E:checkedie9 firefox chrome safari operaμ„ νƒλœ 폼 컨트둀(input check="checked") Eλ₯Ό 선택 
E:not(S)ie9 firefox chrome safari operaSκ°€ μ•„λ‹Œ E μš”μ†Œλ₯Ό 선택 
E~Fie9 firefox chrome safari operaE μš”μ†Œκ°€ μ•žμ— μ‘΄μž¬ν•˜λ©΄ Fλ₯Ό 선택 

CSS1 Seletor

Selector지원 Browserμ„€λͺ…
Eie6 ie7 ie8 ie9 firefox chrome safari operaE μš”μ†Œλ₯Ό 선택 
E:linkie6 ie7 ie8 ie9 firefox chrome safari opera아직 λ°©λ¬Έν•œ 적이 μ—†λŠ” hypertext의 액컀 Eλ₯Ό 선택 
E:visitedie6 ie7 ie8 ie9 firefox chrome safari opera이미 λ°©λ¬Έν•œ hypertext의 액컀 Eλ₯Ό 선택 
E:activeie6 ie7 ie8 ie9 firefox chrome safari operaE μš”μ†Œμ— λ§ˆμš°μŠ€κ°€ ν΄λ¦­λ˜μ–΄ μžˆκ±°λ‚˜ μ—”ν„°κ°€ λˆŒλ €μžˆλŠ” λ™μ•ˆ Eλ₯Ό 선택 
E:hoverie6 ie7 ie8 ie9 firefox chrome safari operaE μš”μ†Œμ— λ§ˆμš°μŠ€κ°€ μ˜¬λΌκ°€ μžˆλŠ” λ™μ•ˆ Eλ₯Ό 선택 
E:focusie6 ie7 ie8 ie9 firefox chrome safari operaE μš”μ†Œμ— ν¬μ»€μŠ€κ°€ 머물러 μžˆλŠ” λ™μ•ˆ Eλ₯Ό 선택 
E::first-lineie7 ie8 ie9 firefox chrome safari operaE μš”μ†Œμ˜ 첫 번째 라인을 선택 
E::first-letterie7 ie8 ie9 firefox chrome safari operaE μš”μ†Œμ˜ 첫 번째 문자λ₯Ό 선택 
E.warningie6 ie7 ie8 ie9 firefox chrome safari opera클래슀의 μ΄λ¦„μ˜ warning으둜 μ§€μ •λœ E μš”μ†Œ 선택 
E#myidie6 ie7 ie8 ie9 firefox chrome safari operaμ•„μ΄λ””μ˜ 이름이 myid둜 μ§€μ •λœ E μš”μ†Œ 선택 
E Fie6 ie7 ie8 ie9 firefox chrome safari operaE μš”μ†Œμ˜ μžμ†μΈ F μš”μ†Œλ₯Ό 선택 

CSS2 Seletor

Selector지원 Browserμ„€λͺ…
*ie6 ie7 ie8 ie9 firefox chrome safari operaλͺ¨λ“  μš”μ†Œλ₯Ό 선택 
E[attr]ie7 ie8 ie9 firefox chrome safari opera'attr' 속성이 ν¬ν•¨λœ μš”μ†Œ Eλ₯Ό 선택 
E[attr=var]ie7 ie8 ie9 firefox chrome safari opera'attr' μ†μ„±μ˜ 값이 μ •ν™•ν•˜κ²Œ μΌμΉ˜ν•˜λŠ” 'var'이 ν¬ν•¨λ˜λŠ” μš”μ†Œλ₯Ό 선택 
E[attr~=var]ie7 ie8 ie9 firefox chrome safari opera'attr' μ†μ„±μ˜ 값에 곡백으둜 λΆ„λ¦¬λœ 값이 μΌμΉ˜ν•˜λŠ” 'var'이 ν¬ν•¨λ˜λŠ” μš”μ†Œλ₯Ό 선택 
E[attr|=var]ie7 ie8 ie9 firefox chrome safari opera'attr' μ†μ„±μ˜ 값이 'val' λ˜λŠ” 'val-'으둜 μ‹œμž‘λ˜λŠ” μš”μ†Œ Eλ₯Ό 선택 
E:first-childie7 ie8 ie9 firefox chrome safari operaμ²˜μŒμ— λ“±μž₯ν•˜λŠ” μš”μ†Œκ°€ E라면 선택 (E μ•„λ‹Œ μš”μ†Œμ˜ μˆœμ„œκ°€ 계산에 포함됨) 
E:lang(en)ie8 ie9 firefox chrome safari operaHTML lang μ†μ„±μ˜ 값이 'en'으둜 μ§€μ •λœ μš”μ†Œλ₯Ό 선택 
E::beforeie8 ie9 firefox chrome safari operaE μš”μ†Œμ˜ μ‹œμž‘ 지점에 μƒμ„±λœ μš”μ†Œλ₯Ό 선택 
E::afterie8 ie9 firefox chrome safari operaE μš”μ†Œμ˜ 끝 지점에 μƒμ„±λœ μš”μ†Œλ₯Ό 선택 
E>Fie7 ie8 ie9 firefox chrome safari operaE μš”μ†Œμ˜ μžμ‹μΈ F μš”μ†Œλ₯Ό 선택 
E+Fie7 ie8 ie9 firefox chrome safari operaE μš”μ†Œ λ°”λ‘œ λ‹€μŒμ— μ˜€λŠ” F ν˜•μ œ μš”μ†Œλ₯Ό 선택