css 속성 값의! default는 무엇을 의미합니까?


83

트위터 부트 스트랩 코드에는 !default끝에 가있는 많은 CSS 속성이 있습니다.

p {
  color: white !default;
}

무엇을 !default합니까?

최신 정보

명확하지 않은 것이 나쁘다. Bootstrap의 SASS 부분을 사용하고 있습니다.



1
전에 본 적이 없습니다. 부트 스트랩에만 적용되는 것이 될 수 있습니다. 아마도 그들은 그것을 찾는 일종의 구문 분석을 가지고있을 것입니다
Huangism

답변:


53

Twitter Bootstrap은 내가 본 것보다 적게 사용합니다. 반면에는 !default실제로 Sass의 일부이며 Sass 변수 ( $var) 기본값 을 제공하는 데 사용됩니다 .이 경우 Sass에서도 해당 컨텍스트에서 유효하지 않게됩니다 .

게다가 나는 LESS 문서!default 에서 어떤 참조도 찾을 수 없었으며 내 지식으로는 Sass에만 국한됩니다. 이것을 다른 곳이 아닌 Bootstrap의 소스에서 찾았습니까? 솔직히 부트 스트랩의 스타일 시트에서 Sass / SCSS 코드를 본 기억이 없기 때문입니다.

가치가있는 경우 !CSS에서로 시작하는 유일한 유효한 토큰 은이며 !important, 이미 알고있을 수 있습니다 .


1
좋아요, 방금 Bootstrap의 새 복사본을 다운로드하고 grepped했습니다. 실제로 이것은 Bootstrap의 소스에서 가져온 것이 아닙니다 ...
BoltClock

1
그는 착각하거나 BootstrapSass 포트를 사용하고있을 수 있습니다 . 어느 쪽이든 그는 분명하지 않은 질문을했습니다.
thirtydot

@thirtydot : 흥미 롭습니다. 그런 포트는 몰랐습니다. 위의 코드는 여전히 유효하지 않은 Sass이며 알기 위해 Sass 포트를 grep 할 필요조차 없습니다.
BoltClock

@BoltClock 붉은 청어에 대해 죄송합니다. 나는 실제로 Bootstrap의 SASS 포트에서 작업하고있었습니다. 다음은 코드 샘플입니다.$yellow: #ffc40d !default;
Coffee Bite

@Robert Pounder : 답변자가 수락 된 답변을 변경할 수 없거나이 질문에 대해 잊었거나 (답변은 거의 5 년 차이가 있음) 또는 단순히 신경 쓰지 않습니다.
BoltClock

81

! default는 Bootstrap Sass에서 자주 사용됩니다. 역! 중요 함과 유사합니다. 모든 부트 스트랩 변수는 개발자가 부트 스트랩을 추가로 사용자 정의 할 수 있도록! default를 사용하여 설정됩니다. ! default를 사용하면 sass는 아직 설정되지 않은 경우에만 변수를 정의합니다.

이것은 더 많은 유연성을 허용합니다.

//Example1 Dress color = red
$auroras-dress-color: blue;
$auroras-dress-color: red;

//Example2 Dress color = red
$auroras-dress-color: blue !default;
$auroras-dress-color: red;

//Example3 Dress color = blue
$auroras-dress-color: blue;
$auroras-dress-color: red !default;

그렇다면 이것이 왜 중요할까요? 부트 스트랩은 패키지입니다. 대부분의 사람들은 부트 스트랩 소스를 편집하지 않습니다. BOOTSTRAP 소스를 업데이트하지 마십시오. 부트 스트랩을 사용자 지정하려면 고유 한 변수 파일을 추가하고 부트 스트랩 코드로 컴파일하지만 기본 부트 스트랩 패키지를 건드리지 마십시오. Bootstrap sass의 페이지에는 문서에서 사용자 정의하고 컴파일하는 방법에 대한 완전한 스키니가 있습니다.

왜 덜하지 않는지 모르겠습니다. 나는 적은 비용으로 많이 일하지 않았으며 자체 내장 변수 관리가 있는지 여부를 모릅니다.

예제 바이올린 https://jsfiddle.net/siggysid/344dnnwz/


1
" 부트 스트랩을 사용자 정의하려면 사용자 고유의 변수 파일을 추가하고 부트 스트랩 코드로 컴파일하지만 기본 부트 스트랩 패키지를 건드리지 마십시오. 부트 스트랩 sass의 페이지에는 문서에서이를 사용자 정의하고 컴파일하는 방법에 대한 완전한 스키니가 있습니다. " 이거 조금. 관심있는 사람 을 위해 Sarah가 언급 한 페이지에 대한 링크 (v4.3) 가 있습니다.
John E

1

sass-lang 웹 사이트의 문서 섹션 (변수)-기본값 에서 다음과 같은 정확한 정의와 적절한 설명을 찾을 수 있습니다 .

일반적으로 변수에 값을 할당 할 때 해당 변수에 이미 값이있는 경우 이전 값을 덮어 씁니다. 그러나 Sass 라이브러리를 작성하는 경우 CSS를 생성하는 데 사용하기 전에 사용자가 라이브러리의 변수를 구성하도록 허용 할 수 있습니다. 이를 가능하게하기 위해 Sass는! default 플래그를 제공합니다. 이것은 변수가 정의되지 않았거나 그 값이 null 인 경우에만 변수에 값을 할당합니다. 그렇지 않으면 기존 값이 사용됩니다.

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