BEM
BEM은 CSS 방법론이다.
말이 어렵지만 풀어 말하면 'CSS 클래스네임을 어떻게 지으면 좋을지' 개발자들이 머릴 맞대고 고민한 결과이다.
html 요소들을 각각 Block, Element, Modifier이렇게 세 가지로 분류해 작명한다.
Block
독립적으로 존재하고 재사용 가능한 요소를 block으로 명명
- 태그 값, id 사용 X 클래스로 정의
- position, margin 등의 위치값을 지정하지 않음 (어디든지 재사용하기 위해!)
- 색상이나 크기 등을 묘사하는 이름 X 구조적으로 의미 있는 이름으로 짓기
- ex) .btn{}
Element
블록 내부에 종속되어 실제 기능을 담당하는 것
종속의 의미를 "block-name__element-name"로 나타낸다.
- 독립적으로 존재x 블록 내부에서 기능을 담당하는 요소
- ex) .btn__price{}
Modifier
(간단하게 말하자면) block이나 element의 속성
block-name--modifier-name, block-name__element-name--modifier-name의 형태
- ex) .btn--big{}
'WEB > HTML,CSS' 카테고리의 다른 글
[HTML] <!DOCTYPE> (0) | 2021.06.08 |
---|---|
[CSS] Box model - inline과 Block의 차이점 (0) | 2021.03.18 |
[HTML]Semantic HTML가 뭐길래 중요한데? (0) | 2021.03.18 |
[HTML] HTML 개념 정의 및 문법 정리 (1) | 2020.05.25 |