🏃 이번시간에는
background: none
과background: transparent
의 차이에 대해 알아보자
1. 배경색을 없애는 방법
- 배경색이 지정된 요소에 대해 특정 경우에 배경을 없애야 할 때가 있다.
- 예를 들어 버튼의 배경색이 빨강이었다가 hover시 배경색을 없애거나, 라이브러리 사용시 해당 라이브러리에서 지정한 배경색이 필요치 않는 경우일 것이다.
- 이처럼
background
의 색상을 없앨 때 우리는none
(없애기),transparent
(투명)을 사용할 수 있다.
🤔 그런데 background에 none을 지정하는 것과 transparent을 지정하는 것과의 차이는 뭘까?
2. none과 transparent의 차이
none
과transparent
의 차이를 알기 위해서는 우리는background
에 들어가는 값을 알아야 한다.- 사실
background
은 아래 속성을 한 번에 쓰는 방법이다.
background-color
background-image
background-repeat
background-attachment
background-position
background-size
- 한 줄로 쓰면 아래와 같으며, 이 중 position, size는 배경이미지(img)를 지정했을 때 사용된다.
background: color image repeat attachment position / size;
❓ 그런데
background
의 속성 순서로background: none
이랑 무슨 관계가 있는걸까?
none
이라는 값은background-image
에 들어가는 값이다.- 그러니까
background: none
이라고 지정한 값을 풀면 아래와 같다는 말이다.
background-color: initial;
background-image: none; /* this */
background-repeat: initial;
background-attachment: initial;
background-position: initial;
See the Pen Untitled by KumJungMin (@kumjungmin) on CodePen.
transparent
는 background-color에 쓰이는 값이다.background: transparent
을 풀어쓰면 아래와 같다.
background-color: transparent; /* this */
background-image: initial;
background-repeat: initial;
background-attachment: initial;
background-position: initial;
See the Pen Untitled by KumJungMin (@kumjungmin) on CodePen.
☝ 이렇게 두 값을 풀어보면,
background-color
이냐background-image
냐의 차이이지, 기능상의 큰 차이는 없다!
- 추가적으로 (IE에서는 제공하지 않지만)
background: initial
을 사용해서 배경색을 없앨 수도 있다. 🙂
background-color: initial;
background-image: initial;
background-repeat: initial;
background-attachment: initial;
background-position: initial;
See the Pen Untitled by KumJungMin (@kumjungmin) on CodePen.
반응형
'개발 기술 > 사소하지만 놓치기 쉬운 개발 지식' 카테고리의 다른 글
canvas blur 문제를 해결하는 법 (0) | 2022.01.26 |
---|---|
Array에서 NaN, undefined, null 제거하기 (0) | 2022.01.21 |
매개변수 재할당을 지양하자(no-param-reassign) (0) | 2022.01.04 |
[JS] 최대 스크롤값 구하는 법(scrollTop, scrollLeft) (1) | 2021.12.13 |
[CSS] max-width, 줄바꿈 같이 쓰는 법 (0) | 2021.12.12 |
댓글