2013-12-18 4 views
0

내가 읽은 바로는 css 스타일은 포함 순서에 따라 서로 겹칩니다. 하지만 그림에 표시, 이상한 문제가 발생 해요 :CSS가 올바르게 속성을 덮어 쓰지 않습니다.

enter image description here

default.cssdefault.css에서 스타일 base.css에서 스타일을 덮어 쓰게됩니다한다고 가정 할 base.css 이후에 포함되어 있는지 명확하게 볼 수 있습니다. 그러나 이것은 그렇지 않습니다. 알다시피, base.css의 스타일이 지속되고 default.css의 스타일이 취소되고 있습니다. 왜 그런가요?

답변

2

CSS 클래스 선택기 (예 : .marginblock)가 CSS 유형 선택기 (예 : body)보다 우선 순위가 높기 때문입니다.

다음과 같이 CSS가 있다면, 당신은 당신이 기대하는 행동을 할 것이다 :

base.css에서 :

.marginblock { 
    margin: 0 auto; 
} 

default.css에서 :

.marginblock { 
    margin: 25px; 
} 

여기에 CSS 순서에 대한 자세한 사항은의를 우선 순위 :

  1. ID 선택기
  2. 속성 선택기
  3. 클래스 선택기
  4. 아이 선택기
  5. 인접 형제 선택자
  6. 후손 선택기
  7. 유형 선택기

자세한 내용은 here를 찾을 수 있습니다.

+0

8 분 안에 답변을 수락 할 수 있습니다. –

1

default.css의 스타일에 더 구체적인 선택기가 있으므로 base.css 스타일을 덮어 씁니다. css가 어떻게 적용되는지를 결정하는 데있어서 특이점이 작동하는 방식을 Google에 알릴 수 있습니다.

관련 문제