수색…
통사론
- @supports [조건] {/ * 적용 할 CSS 규칙 * /}
매개 변수
매개 변수 | 세부 |
---|---|
(property: value) | 브라우저가 CSS 규칙을 처리 할 수 있으면 true를 평가합니다. 규칙 주변의 괄호가 필요합니다. |
and | 이전 조건과 다음 조건이 모두 true 인 경우에만 true를 반환합니다. |
not | 다음 조건을 무시합니다. |
or | 이전 또는 다음 조건이 true 인 경우 true를 반환합니다. |
(...) | 그룹 상태 |
비고
@supports
사용한 기능 감지는 Edge, Chrome, Firefox, Opera 및 Safari 9 이상에서 지원됩니다.
기본 @ 지원 사용
@supports (display: flex) {
/* Flexbox is available, so use it */
.my-container {
display: flex;
}
}
구문에 관해서 @supports
는 @media
와 매우 유사하지만 화면 크기와 방향을 감지하는 대신 @supports
가 브라우저가 주어진 CSS 규칙을 처리 할 수 있는지 여부를 감지합니다.
@supports (flex)
와 같은 일을하는 대신 규칙이 @supports (display: flex)
.
체인 감지 기능 탐지
한 번에 여러 기능을 감지하려면 and
연산자를 사용하십시오.
@supports (transform: translateZ(1px)) and (transform-style: preserve-3d) and (perspective: 1px) {
/* Probably do some fancy 3d stuff here */
}
또한 or
연산자와 not
연산자가 있습니다.
@supports (display: flex) or (display: table-cell) {
/* Will be used if the browser supports flexbox or display: table-cell */
}
@supports not (-webkit-transform: translate(0, 0, 0)) {
/* Will *not* be used if the browser supports -webkit-transform: translate(...) */
}
궁극적 인 @supports
환경을 얻으려면 괄호로 논리 표현식을 그룹화하십시오.
@supports ((display: block) and (zoom: 1)) or ((display: flex) and (not (display: table-cell))) or (transform: translateX(1px)) {
/* ... */
}
브라우저가 작동하는 경우 작동합니다.
-
display: block
지원display: block
및zoom: 1
, 또는 -
display: flex
지원display: flex
AND NOTdisplay: table-cell
또는 -
transform: translateX(1px)
지원transform: translateX(1px)
.
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow