Chrome 요소 검사기에서 CSS 규칙이 회색으로 표시되면 무엇을 의미합니까?


249

나는 검사하고있어 h2적용을 한 것으로 나타났습니다 - - 회색으로 표시됩니다 구글 크롬의 요소 관리자와 CSS 규칙의 일부를 사용하여 웹 페이지의 요소를. 취소 선은 규칙이 재정의되었음을 나타내는 것으로 보이지만 스타일이 회색으로 표시되면 무엇을 의미합니까?

답변:


96

나에게 현재 답변이 문제를 충분히 설명하지 못했기 때문에 다른 사람들에게 유용 할 수있는이 답변을 추가하고 있습니다.

회색으로 흐리게 표시된 텍스트는 다음 중 하나 를 의미 할 수 있습니다.

  1. 브라우저가 적용되는 기본 규칙 / 속성이며 여기에는 기본 단축 속성이 포함됩니다.
  2. 좀 더 복잡한 상속이 필요합니다.

계승

참고 : 세트에서 하나 이상의 규칙이 현재 선택된 DOM 노드에 적용되므로 Chrome 개발 도구의 "스타일"패널에 규칙 세트가 표시됩니다. 완벽을 기하기 위해 개발 도구는 적용 여부에 관계없이 해당 세트의 모든 규칙을 보여줍니다.

상속으로 인해 현재 선택된 요소에 규칙이 적용되는 경우 (즉, 규칙이 조상에 적용되고 선택한 요소가 상속 한 경우) 크롬은 다시 전체 규칙 세트를 표시합니다.

현재 선택된 요소에 적용되는 규칙은 일반 텍스트로 나타납니다.

해당 집합에 규칙이 있지만 상속 할 수없는 속성 (예 : 배경색)이기 때문에 적용되지 않으면 회색 / 흐리게 표시되는 텍스트로 나타납니다.

여기에 좋은 설명을 제공하는 기사가 있습니다-(참고 : 관련 항목은 기사의 맨 아래에 있습니다-그림 21-불행히도 관련 섹션에는 제목이 없습니다) -http : //commandlinefanatic.com/cgi-bin /showarticle.cgi?article=art033

기사에서 발췌

기본 속성 인 속기 속성 때문에이 [상속 시나리오]는 때때로 약간의 혼란을 야기 할 수 있습니다. 그림 21은 상속되지 않은 속성과 함께 글꼴 속성의 기본 단축 속성을 보여줍니다. 요소를 검사 할 때보고있는 컨텍스트를 알고 있어야합니다.


10
"상속되었지만 적용되지 않은 규칙은 회색 / 흐리게 표시되는 텍스트"로 표시됩니다. 적용하지 않으면 취소 선이 생깁니다. 스크린 샷과 라이브 예제로 답변을 업데이트했습니다.
Rob Sobers

10
정답입니다 !!! 핵심 문장은 ... "규칙에 해당 규칙이 있지만 상속 할 수없는 속성 (예 : 배경색)이기 때문에 적용되지 않는 경우 회색 / 흐리게 표시되는 텍스트로 나타납니다."
Niko Bellic

이것이 정답입니다. "[selector]에서 상 속됨"섹션에 회색으로 표시된 속성이 나타나면 현재 요소에 적용되지 않는 상속 할 수없는 속성입니다. 교차 된 속성은보다 구체적인 스타일로 재정의되었습니다.
onlynone

1
상속 할 수없는 규칙이 회색으로 표시되면 왜 div 요소가 '너비'규칙을 회색으로 표시합니까? 너비는 상속 할 수 없습니까? 그건 그렇고, 나는 이것을 진지하게 묻고 있습니다.
moosefetcher

1
... Chrome에 CSS 규칙이 회색으로 흐리게 표시되어 매우 많이 적용됩니다. 선택을 취소하거나 값을 변경할 수 있고 페이지에서 해당 변경 사항을 볼 수있는 경우 규칙 이 요소에 영향 을 줄 수 있습니다 그러나 해당 요소 에는 적용 되지 않지만 부모 에게는 적용 됩니다.
벤 휠러

82

이는 규칙이 상속되었지만 선택한 요소에 적용 할 수 없음을 의미합니다.

http://code.google.com/chrome/devtools/docs/elements-styles.html#computed_style

창에는 선택한 요소에 직접 적용 할 수있는 규칙의 속성 만 포함됩니다. 상속 된 속성을 추가로 표시하려면 상속 된 속성 표시 확인란을 선택하십시오. 이러한 속성은 희미한 글꼴로 표시됩니다.

회색으로 표시된 규칙은 조상으로부터 상속됩니다.

실제 예 : "Hello, world!"라는 텍스트가 포함 된 요소를 검사하십시오.

div { 
  margin: 0;
}

div#foo { 
  margin-top: 10px; 
}
<div id="foo">Hello, world!</div>


13
@Rob 스타일이 회색으로 표시되면 스타일이 다른 포함 요소에서 상속되었지만 선택한 요소에는 적용되지 않는다는 의미 입니다. 문서에서 : "창에는 선택한 요소에 직접 적용 할 수있는 규칙의 속성 만 포함됩니다. 상속 된 속성을 추가로 표시하려면 상속 된 속성 표시 확인란을 선택하십시오. 이러한 속성은 흐리게 표시된 글꼴로 표시됩니다."
drkvogel

2
@RobSobers 불행히도, 당신의 예제가 상속을 보여주지 않는다고 생각합니다. div가 상속하는 조상 부모는 어디에 있습니까? Chrome의 스타일 창에서 아래로 스크롤하면 "...에서 상 속됨"섹션이 표시됩니다. 회색으로 표시된 규칙의 의미는 무엇입니까? 이것을 예에 포함시킬 수 있습니까?
Niko Bellic

8
이 답변이 왜인지 이해가되지 않습니다. 최상의 답변으로 표시 및 b. 공감이 너무 많습니다. 분명히 잘못되었습니다. 여백은 상속 가능한 속성이 아닙니다 ( stackoverflow.com/a/5612360/24267 ) Michael Coleman의 답변이 맞습니다. 아, 당신은 조상 요소에서 물려받은 것이 아닙니다. 당신은 ... 당신이 정확히 무엇을 의미하는지 잘 모르겠습니다. 어쨌든이 답변은 2015 년 Chrome 46에서는 정확하지 않습니다.
mhenry1384

3
분명히 투표는 화살표가있는 일부 MS Paint 마술과 거품 그림자 효과에 대한 것입니다. 다운 보트가 잘못되었습니다.
David

2
@ mhenry1384 "a"는 쉽게 설명 할 수 있습니다. 질문을 한 사람이 작성했기 때문입니다.
Andrew Grimm

27

마이클 콜먼이 정답입니다. 그냥 간단한 이미지를 추가하고 싶습니다. 그가 포함 한 링크에는 다음과 같은 간단한 예가 있습니다. http://commandlinefanatic.com/art033ex4.html

HTML / DOM은 다음과 같습니다.

HTML

p 요소를 선택할 때 Chrome의 스타일 창은 다음과 같습니다.

스타일 창

보시다시피 p 요소는 조상 (div)에서 상속됩니다. 그렇다면 왜 스타일이 background-color: blue회색으로 표시됩니까? 상속 가능한 스타일이 하나 이상있는 규칙 세트의 일부이기 때문입니다. 상속 가능한 스타일은text-indent: 1em

background-color:blue상속 할 수 없지만 상속 할 수없는 규칙 세트의 일부 text-indent: 1em이며 Chrome 개발자는 규칙 세트를 표시 할 때 완성되기를 원했습니다. 그러나 규칙 집합에서 상속 할 수없는 스타일과 상속 할 수있는 스타일을 구분하기 위해 상속 할 수없는 스타일은 회색으로 표시됩니다.


1
이것은 간단한 데모를 제공하기 때문에 가장 좋은 대답입니다. 새 탭에서 해당 URL을 열고 Chrome 개발자 도구를 사용하여 다양한 div및를 선택하십시오 p. 에 background-color대해 회색으로 표시되지 않은 것을 볼 수 div#two있습니다. 그러나 및에 background-color대해서는 회색으로 표시됩니다 . div#threep
wisbucky

위대한 설명
Dirk Boer

10

인스펙터를 통해 스타일을 추가했지만 선택한 요소에 새 스타일이 적용되지 않는 경우에도 마찬가지입니다. 일반적으로 표시된 스타일은 선택한 요소의 스타일 만이므로 회색은 방금 추가 한 스타일이 DOM 네비게이터에 포커스가있는 요소를 선택하지 않음을 나타냅니다.


이것은 내 문제였다. 감사!
Chuck Le Butt

5

규칙이 우선 순위가 높은 다른 규칙으로 바뀐 것을 의미합니다. 예를 들어 다음과 같은 스타일 시트가 있습니다.

h2 {
  color: red;
}
h2 {
  color: blue;
}

관리자는 규칙이 color:red;회색으로 표시되고 color:blue;정상적으로 표시 됩니다.

CSS 상속 에 대해 읽고 어떤 규칙이 상속 / 우선 순위가 높은지 알아 보십시오 .

편집하다:

믹스 업 : 회색으로 표시된 규칙은 설정되지 않은 규칙으로, 모든 요소 (모든 스타일에 값이 있어야하기 때문에 요소를 렌더링 가능하게 만드는 규칙 )에 적용되는 특수 기본 스타일 시트를 사용합니다 .


방금 이것을 테스트했는데 그것이 틀렸다고 생각합니다. 규칙이 재정의되는 경우 내 질문에 표시된 것처럼 취소 선이 있습니다. 참조 : yfrog.com/f/j3fooep
롭 Sobers

@Rob : devtools가 시작되지 않았으므로 믹스 업이있었습니다. 테스트를 실행하고 테스트 된 답변으로 답변을 편집했습니다 .
tcooc

나는 그것이 옳은지도 완전히 확신하지 못한다. 퇴색 규칙은 내가 내 자신의 스타일 시트에 설정 한 것 (예, 있습니다 font-size: 20px;)
롭 Sobers

1

웹팩을 사용할 때 소스 코드에서 변경된 CSS 규칙 또는 속성은 재 구축 후 페이지를 다시로드 할 때 회색으로 표시됩니다. 이것은 정말 성가 시며 매번 페이지를 다시로드해야했습니다.


0

여기에 이미지 설명을 입력하십시오

크롬 개발자의 새로운 버전은 그것이 어디에서 상속되었는지를 보여줍니다.


0

Chome DevTools에서 CSS 코드 블록이 회색으로 표시되고 편집 할 수없는 다른 경우가 발생했기 때문에 질문에 이미 많은 정답이있는 경우 오랫동안 대답하고 있습니다. 문제의 블록에 U + 200B ZERO WIDTH SPACE characters 포함되어 있습니다. 찾은 후 제거하면 Chrome DevTools에서 블록을 다시 편집 할 수 있습니다. 아마도 이것은 ASCII가 아닌 다른 문자에서도 발생할 수 있습니다. 나는 그것을 알아 내려고 시도하지 않았습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.