πŸ’‘BEM (Block Element Modifier)

HTML CLASSμ†μ„±μ˜ μž‘λͺ…을 ν•  λ•Œ ν†΅μš©μ μœΌλ‘œ μ‚¬μš©λ˜λŠ” ν‘œκΈ°λ²•μ— λŒ€ν•΄ μ•Œμ•„λ΄…μ‹œλ‹€.


πŸ’›__(dobble underscore) (class="name__name")

"μƒμœ„μš”μ†Œ__ν•˜μœ„μš”μ†Œ" 의 κ΅¬μ„±μœΌλ‘œ 클래슀λͺ…을 μž‘μ„±ν•˜μ—¬
μ€‘λ³΅λœ 클래슀λͺ…μ˜ μ‚¬μš©μ„ μ΅œμ†Œν™”ν•˜λ©° 클래슀λͺ…λ§Œ 읽어도 μš”μ†Œμ˜ μš©λ„λ₯Ό νŒŒμ•…ν•  수 μžˆλ„λ‘ 함

  • BEM을 μ‚¬μš©ν•˜μ§€ μ•Šμ€ Class Name
	<div class="container">
      <div class="title"></div>
      <div class="item">
      	<div class="title"></div>
      </div>
	</div>
  • BEM을 μ‚¬μš©ν•œ Class Name
	<div class="container">
      <div class="container__title"></div>
      <div class="item">
      	<div class="item__title"></div>
      </div>
	</div>

μœ„μ™€κ°™μ΄ 'title'μ΄λΌλŠ” 클래슀λͺ…이 반볡적으둜 μ‚¬μš© 될 λ•Œ __(underscore)둜 포함관계λ₯Ό ν‘œκΈ°ν•˜μ—¬ 직관적이고 가독성이 높은 μž‘λͺ…이 κ°€λŠ₯ν•˜κ²Œ 됨.


πŸ’›--(dobble dash) (class="name--name")

"μš”μ†Œ--μš”μ†Œμƒνƒœ" 의 κ΅¬μ„±μœΌλ‘œ 클래슀λͺ…을 μž‘μ„±ν•˜μ—¬
μ—°μ†λœ(κ΄€λ ¨λœ) 클래슀λͺ…듀이 λ³„κ°œμ˜ μƒνƒœλ‘œ 보이지 μ•Šλ„λ‘ 톡일성을 뢀여함

  • BEM을 μ‚¬μš©ν•˜μ§€ μ•Šμ€ Class Name
	<div class="btn play">Play</div>
	<div class="btn pause">Pause</div>
	<div class="btn stop">Stop</div>
  • BEM을 μ‚¬μš©ν•œ Class Name
	<div class="btn btn--play">Play</div>
	<div class="btn btn--pause">Pause</div>
	<div class="btn btn--stop">Stop</div>

μœ„μ™€κ°™μ΄ 'btn'κ³Ό 'play'λΌλŠ” μ—°μ†λœ 클래슀λͺ…이 μ„œλ‘œ 상관관계가 μžˆλŠ” 경우 --(dash)기호λ₯Ό 톡해 ν•΄λ‹Ήμš”μ†Œμ˜ μƒνƒœλ₯Ό κ°€λ¦¬ν‚€λŠ” 클래슀λͺ…μž„μ„ ν™•μ‹€ν•˜κ²Œ ν‘œκΈ°ν•  수 있음.


λ§ˆμΉ˜λ©°πŸ™Œ

κ΅¬κΈ€λ§μ΄λ‚˜ κ°•μ˜λ₯Ό 톡해 곡뢀λ₯Ό ν•˜λ©° BEMν‘œκΈ°λ²•μœΌλ‘œ μž‘μ„± 된 클래슀λͺ…을 λ§ˆμ£Όν•  λ•Œκ°€ λ§Žμ•˜μŒμ—λ„ λΆˆκ΅¬ν•˜κ³  깊게 생각해 λ³Έ 적이 μ—†λŠ” λΆ€λΆ„μ΄μ˜€λ‹€. λ‹¨μˆœνžˆ μ–΄λŠ 개발자만의 κ·œμΉ™μ΄κ² κ±°λ‹ˆ ν•˜κ³  λ„˜κ²ΌλŠ”λ° κ°œλ°œμžλ“€ μ‚¬μ΄μ—μ„œ ν†΅μš©λ˜λŠ” 클래슀λͺ… μž‘μ„±λ²•μ΄μ˜€λ‹€λŠ” 것!...

ν™•μ‹€νžˆ 가독성이 쑰금 더 생기고 μ „λ¬Έμ μœΌλ‘œ λ³΄μ—¬μ„œ 멋도 μžˆλŠ”λ“―..? πŸ€”

profile
ν”„λ‘ νŠΈμ—”λ“œ 개발자 μ„±μž₯일기 πŸ’­

0개의 λŒ“κΈ€