레고처럼 여러가지 모듈을 만들어서 조합하도록 하는 방법론
구조와 스킨을 구별하여 클래스 네이밍 하기!
콘텐츠의 스타일이 컨테이너에 종속되지 않도록함 (분리!)
구조 : width, height, padding, margi 등 레이아웃에 영향을 미치는 속성
스킨 : font관련속성, color, background, border 등 레이아웃에 영향을 미치지는 않지만, 시각적 영향을 주는 속성 포함됨
<button type="button" class="btn">버튼</button>
<button type="button" class="btn btn-close">버튼2</button>
.btn {
width: 200px;
height: 80px;
font-size: 30px;
}
.btn-close {
background-color: pink;
color: #fff;
border: 3px solid palevioletred;
}
css 코드를 역할에 따라 분리한다.
ID 선택자와 요소선택자 X -> 클래스 선택자만 사용! (왜? 가중치 계산을 원활히 하기위해)
.box-green{
width:100px;
height:100px;
}
error__link
, opacity-half__btn
)<p class="txt-grey">더 많은 정보가 필요하시면
<button class="txt-grey__btn">
<!-- <strong class="txt-grey__btn__bold">여기</strong> 이렇게 네이밍 하지 않습니다. -->
<strong class="txt-grey__bold">여기</strong>
</button>
를 클릭하세요!
</p>
btn-move btn-move—**size-small**
(o)나의 작업 방식
강사님 작업 방식
모듈화
레이아웃
버튼모듈, 인풋모듈 등 형태가 비슷하거나, 여러번 반복하여 사용할 수 있는 것들을 모듈화 하여 따로 작업을하고, 레이아웃에 필요한 부분에 갖다 붙힐 수 있게 한다.
html css도 객체화, 모듈화 하여 작업하는 것이 효율적으로 작업할 수 있다고 느꼈다!