Notice
Recent Posts
Recent Comments
Link
Β«   2026/05   Β»
일 μ›” ν™” 수 λͺ© 금 ν† 
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Tags
more
Archives
Today
Total
관리 메뉴

η„‘μ œ

Attribute Selectors λ³Έλ¬Έ

<style>

Attribute Selectors

yo-u-loo 2026. 3. 25. 14:09

 

🟒 Attribute Selectors

HTML μš”μ†Œμ˜ 속성(attribute)μ΄λ‚˜ 속성 값에 따라 νŠΉμ • μš”μ†Œλ₯Ό μ„ νƒν•˜λŠ” 방법.

 

β—Ό κΈ°λ³Έ 속성 μ„ νƒμž

  • [속성]: ν•΄λ‹Ή 속성을 κ°€μ§€κ³  μžˆλŠ” λͺ¨λ“  μš”μ†Œ 선택.
/* type 속성을 κ°€μ§„ λͺ¨λ“  input μš”μ†Œ 선택 */
input[type] {
    border: 1px solid black;
}

 

  • [속성="κ°’"]: 속성값이 μ§€μ •ν•œ κ°’κ³Ό μ •ν™•νžˆ μΌμΉ˜ν•˜λŠ” μš”μ†Œ 선택.
/* type="text"인 μš”μ†Œλ§Œ 선택 */
input[type="text"] {
    background: yellow;
}

 

 

β—Ό λ¬Έμžμ—΄ λ§€μΉ­ μ„ νƒμž (νŒ¨ν„΄ λ§€μΉ­)

  • [속성^="κ°’"]: 값이 νŠΉμ • 문자둜 μ‹œμž‘ν•˜λŠ” μš”μ†Œ 선택. (Start with)
/* https둜 μ‹œμž‘ν•˜λŠ” 링크 선택 */
a[href^="https"] {
    color: blue;
}

 

  • [속성$="κ°’"]: 값이 νŠΉμ • 문자둜 λλ‚˜λŠ” μš”μ†Œ 선택. (End with)
/* .pdf둜 λλ‚˜λŠ” 링크 선택 */
a[href$=".pdf"] {
    color: green;
}
 
  • [속성*="κ°’"]: 값이 νŠΉμ • 문자λ₯Ό ν¬ν•¨ν•˜κ³  μžˆλŠ” μš”μ†Œ 선택. (Contains)
/* href에 "google"이 ν¬ν•¨λœ λͺ¨λ“  링크 선택 */
a[href*="google"] {
    color: red;
}

 

 

β—Ό 단어 및 μ–Έμ–΄ μ„ νƒμž

  • [속성~="κ°’"]: 곡백으둜 κ΅¬λΆ„λœ κ°’ 쀑 ν•˜λ‚˜κ°€ μΌμΉ˜ν•˜λŠ” μš”μ†Œ 선택.
/* 클래슀 λͺ©λ‘ 쀑 activeκ°€ ν¬ν•¨λœ μš”μ†Œ 선택 */
[class~="active"] {
    font-weight: bold;
}

 

  • [속성|="κ°’"]: 값이 μ •ν™•νžˆ μΌμΉ˜ν•˜κ±°λ‚˜, ν•΄λ‹Ή κ°’ 뒀에 ν•˜μ΄ν”ˆ(-)으둜 μ—°κ²°λœ λ‹¨μ–΄λ‘œ μ‹œμž‘ν•˜λŠ” μš”μ†Œ 선택.
/* btn λ˜λŠ” btn-* ν˜•νƒœ 선택 */
[class|="btn"] {
    color: white;
}

 

 

πŸ“β€Š POINT πŸ“β€Š

βœ”οΈ 속성 μ„ νƒμžλŠ” HTML에 클래슀λ₯Ό 일일이 μΆ”κ°€ν•˜μ§€ μ•Šκ³ λ„ κΈ°μ‘΄ μ†μ„±λ§ŒμœΌλ‘œ μŠ€νƒ€μΌμ„ μ œμ–΄ν•  수 있게 ν•œλ‹€. βœ”οΈ

βœ”οΈ input νƒœκ·Έμ˜ 각 νƒ€μž…μ„ κ΅¬λΆ„ν•˜κ±°λ‚˜, 파일 ν™•μž₯μžμ— 따라 μ•„μ΄μ½˜μ„ 뢙일 λ•Œ μœ μš©ν•˜λ‹€. βœ”οΈ

βœ”οΈ λŒ€μ†Œλ¬Έμžλ₯Ό κ΅¬λΆ„ν•˜μ§€ μ•Šκ³  μ‹Άλ‹€λ©΄ λ‹«λŠ” λŒ€κ΄„ν˜Έ μ•žμ— iλ₯Ό 뢙일 수 μžˆλ‹€. (예: [href$=".jpg" i]) βœ”οΈ

 

 

πŸ“‹ 속성 μ„ νƒμž 기호 μš”μ•½ν‘œ πŸ“‹

μ„ νƒμž 기호 의미 ν™œμš© μ˜ˆμ‹œ
[attr] 속성 쑴재 μ—¬λΆ€ [required] (ν•„μˆ˜ μž…λ ₯ ν•­λͺ©)
[attr="val"] 값이 μ •ν™•νžˆ 일치 [type="submit"] (제좜 λ²„νŠΌ)
[attr^="val"] κ°’μ˜ μ‹œμž‘ λΆ€λΆ„ 일치 [href^="mailto:"] (이메일 링크)
[attr$="val"] κ°’μ˜ 끝 λΆ€λΆ„ 일치 [src$=".png"] (PNG 이미지)
[attr*="val"] κ°’μ˜ 일뢀뢄 포함 [class*="nav-"] (λ‚΄λΉ„κ²Œμ΄μ…˜ μš”μ†Œ)

 


 

βš™οΈ μ‹€μ „ 예제 μ½”λ“œ: μž…λ ₯μ°½ μœ ν˜•λ³„ μŠ€νƒ€μΌλ§ βš™οΈ

<style>
  /* λͺ¨λ“  input 쀑 ν•„μˆ˜ μž…λ ₯(required) 속성이 μžˆλŠ” 것 */
  input[required] { border: 2px solid red; }

  /* type이 "text"인 μž…λ ₯창만 선택 */
  input[type="text"] { width: 300px; }

  /* type이 "password"인 μž…λ ₯창만 선택 */
  input[type="password"] { background-color: #f0f0f0; }

  /* name 속성에 'user'κ°€ ν¬ν•¨λœ λͺ¨λ“  μš”μ†Œ */
  input[name*="user"] { color: blue; }
</style>

<form>
  <input type="text" name="user-id" placeholder="아이디" required>
  <input type="password" name="user-pw" placeholder="λΉ„λ°€λ²ˆν˜Έ">
  <input type="tel" name="phone" placeholder="μ „ν™”λ²ˆν˜Έ">
</form>