프런트 엔드 프로 직전! CSS 여백 설정의 삼원칙(+선을 그리는 방법)
전치
CSS에서 여백을 잡는 방법에 대해 후배에게 "margin-top과 margin-bottom 어느 쪽 파입니까?"라고 물었으므로,
답변 내용을 기사로 남깁니다.
옛날, 회사의 OJT에서 배운 것의 공유가 됩니다.
원칙
1. 기본적으로 margin-top 사용
이유는 그쪽이 나중에 조절하기 쉽기 때문입니다.
또, 후술의 우선도로 설정해 가면, margin-bottom의 차례는 거의 없어집니다.
2. 아무래도 무리한 경우에 bottom을 사용한다
margin-bottom은 다른 방법으로는 아무래도 설정이 무리인 경우만 사용합시다.
3. 인접 셀렉터를 잘 사용하면 투르트메하기 쉽다
특정 요소끼리 나란히 있을 때만 마진을 취한다 = 여백의 상쇄 설정이 불필요하게 됩니다.
설정 우선순위
요소가 아무리 중첩되어도 아래의 우선 순위는 변경되지 않습니다.
이 우선도로 여백을 설정해 가면, margin-bottom의 차례는 거의 없어집니다.
1. 기본적으로 margin-top 사용
이유는 그쪽이 나중에 조절하기 쉽기 때문입니다.
또, 후술의 우선도로 설정해 가면, margin-bottom의 차례는 거의 없어집니다.
2. 아무래도 무리한 경우에 bottom을 사용한다
margin-bottom은 다른 방법으로는 아무래도 설정이 무리인 경우만 사용합시다.
3. 인접 셀렉터를 잘 사용하면 투르트메하기 쉽다
특정 요소끼리 나란히 있을 때만 마진을 취한다 = 여백의 상쇄 설정이 불필요하게 됩니다.
설정 우선순위
요소가 아무리 중첩되어도 아래의 우선 순위는 변경되지 않습니다.
이 우선도로 여백을 설정해 가면, margin-bottom의 차례는 거의 없어집니다.
인접 셀렉터 사용
주로 <li>
이나 <section>
의 반복으로 열거하는 경우에 사용합니다.
투르투메를 고려하는 경우에 차례가 많아집니다.
나쁜
특정 클래스에 일률적으로 margin-top을 설정한 후에 무시하고 있다
.item {
margin-top: 10px
}
.item:first-child {
margin-top: 0;
}
좋은
같은 요소간의 여백을 취하고 싶은 경우는 인접 셀렉터를 사용하는 것이 적절.
.item + .item {
margin-top: 10px;
}
※동일한 요소가 아닌 경우에도 사용할 수 있습니다.
.section + .special-section {
margin-top: 30px;
}
개략도
Chrome의 dev 툴상에서는 아래와 같은 여백의 방법이 됩니다.
(dev 도구의 색 구성표와 같은 색으로 표시)
.item {
margin-top: 10px
}
.item:first-child {
margin-top: 0;
}
.item + .item {
margin-top: 10px;
}
.section + .special-section {
margin-top: 30px;
}
Chrome의 dev 툴상에서는 아래와 같은 여백의 방법이 됩니다.
(dev 도구의 색 구성표와 같은 색으로 표시)
#bdc87f
: padding #f8c696
: margin 비고
Reference
이 문제에 관하여(프런트 엔드 프로 직전! CSS 여백 설정의 삼원칙(+선을 그리는 방법)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yama-t/items/da7740769cfc0f8446a0텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)