background-color : none은 유효한 CSS입니까?


431

다음 CSS가 유효한지 누구든지 말해 줄 수 있습니까?

.class {
    background-color:none;
}

10
검증은 종종 질문의이 종류에 응답 할 수 있습니다.
thirtydot

10
background:none;유효하고 배경색을 투명하게 설정 하는와 혼동 될 수 있습니다 .
Mr Lister

답변:


551

당신은 아마 원하는 transparent대로 none유효하지 않습니다 background-color값.

CSS 2.1 사양은 상태가 다음 background-color속성을 :

Value: <color> | transparent | inherit

<color>키워드 또는 색상의 숫자 표현 일 수 있습니다. 유효한 color키워드 는 다음과 같습니다.

아쿠아, 블랙, 블루, 퓨샤, 그레이, 그린, 라임, 적갈색, 네이비, 올리브, 오렌지, 퍼플, 레드, 실버, 틸, 화이트, 옐로우

transparent그리고 inherit자신의 권리를 유효 키워드는, 그러나 none아니다.


25
예. 초기 값 은 이므로 transparent배경색을 "끄기"로 설정하려는 경우 사용합니다.
Mr Lister

1
이들 중 어느 것도 이전 값으로 재설정되지 않습니다 (즉, 다른 CSS 규칙에 의해 설정된 경우 :(
pstanton

2
귀하의 경우 @ pstanton, 당신은 배경색을 주어야합니다 : 투명! 중요;
herr

이것은 코딩을 처음 시작할 때 글꼴 색을 사용하려고한다는 것을 상기시킵니다. 물론 color아닙니다 font-color. 다른 글꼴 속성이 항상 font앞에 올 때마다 너무 의미 가 있습니다 ...
serraosays

@herr 그러나 pstanton이 말했듯이 배경색을 투명하게 설정하면 이전 CSS 속성보다 우선합니다! 이 배경색 속성을 제거하여 이전 속성에서 CSS 속성을 가져 오는 방법이 있습니까?
SE_User

159

아니요, transparent대신 사용하십시오 none. 예를 들어 작업을 참조하십시오 여기에 변경할 경우이 예제 transparentnone그것을하지 않습니다 일

처럼 사용 .class { background-color:transparent; }


어디 의 .class는 당신이 당신의 투명 클래스의 이름을 지정합니다 것입니다.


내 예에서는 완전히 반대입니다. 아무것도 투명으로 변경하지 않으면 작동하지 않습니다. : 정말 아무도 사용하지 필요 jsfiddle.net/BkAad
흐르 보예 Golcic

예제에서 body * : not (.exception) {background-color : transparent}로 변경하십시오.! important를 제거하면 내부의 다른 모든 속성이 해당 속성을 갖도록해야합니다. 그리고 안쪽 li (s)에서는 배경색 만 배경색보다 background-color 속성을 사용하십시오.
yveslebeau

67

대답은 '아니오.

잘못된

.class {
    background-color: none; /* do not do this */
}

옳은

.class {
    background-color: transparent;
}

background-color: transparent당신이하고 싶었던 것과 같은 일을 background-color: none합니다.


7
.class {
    background-color:none;
}

유효한 속성이 아닙니다. W3C 유효성 검사기는 다음 오류를 표시합니다.

값 오류 : 배경색 없음이 배경색 값이 아님 : 없음

transparentCSS 사양을 개발하는 동안 0또는 none값 대신 더 나은 용어로 선택되었을 수 있습니다 .


2
그리고 이것은 2 년 반 전에 제임스가 말한 것을 반복하지만 잘라 내지 않고 붙여 넣을 수있는 형식으로 반복합니다. ; ^)
ruffin

6

CSS 레벨 3은 unset속성 값을 지정합니다 . 에서 MDN :

설정되지 않은 CSS 키워드는 초기 키워드와 상속 키워드의 조합입니다. 이 두 개의 CSS 전체 키워드와 마찬가지로 CSS 속기 모두를 포함한 모든 CSS 속성에 적용 할 수 있습니다. 이 키워드는 속성을 상위 속성에서 상속하는 경우 상속 된 값으로 재설정하거나 그렇지 않은 경우 초기 값으로 재설정합니다. 다시 말해, 첫 번째 경우 inherit 키워드처럼 작동하고 두 번째 경우에는 초기 키워드처럼 작동합니다.

불행히도이 값은 현재 IE, Safari 및 Opera를 포함한 모든 브라우저에서 지원되지 않습니다. 나는 transparent당분간 사용 하는 것이 좋습니다 .


3

이것을 쓰십시오 :

.class {
background-color:transparent;
}

2
코드와 문제 해결에 도움이되는 방법을 설명하십시오! - 리뷰에서
Luca Kiebel

확인. background-color는 CSS 속성이며 모든 CSS 속성과 마찬가지로 유효하고 유효하지 않은 값을 가질 수 있습니다. 배경색의 유효한 값은 다음 형식 중 하나 일 수 있습니다 : # 5f9 또는 # 56f293 또는 투명. 투명은 배경색이 null이거나 없음을 의미합니다.
Abolfazl Miadian

1
와우-질문과 답변 후 6 년이 지나면 중복해서 답하십니까?
NarfkX

어떤 사람들은 매일이 페이지 나 다른 오래된 페이지를 방문하여 답변을 받기 때문에 질문하는 시간은 중요하지 않습니다.
Abolfazl Miadian

1

따라서이 솔루션을 사용해야하는 시나리오를 설명하고 싶습니다. 기본적으로 다른 CSS에서 설정 한 배경색 특성을 실행 취소하려고했습니다. 예상되는 최종 결과는 원본 CSS가 background-color 속성을 적용하지 않은 것처럼 보이게 만드는 것입니다. background-color:transparent;효과적으로 설정 했습니다.


1
background : transparent가 다른 CSS에 의해 설정된 배경색을 재정의하는 데 효과적이지 않습니다. background : red를 선택하면; 예를 들어-작동합니다. 그러나 배경 : 투명; 다른 CSS 배경색을 그대로 유지합니다. 그것을 막는 방법에 대한 아이디어가 있습니까?
Auxiliary Joel
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.