@supports (속성: 값) {
  /* 지원되는 경우 선언할 스타일 */
}
/* 브라우저가 'display: grid'를 지원하는지 확인 */
@supports (display: grid) {
    /* 'display: grid'를 지원하면 해당 스타일의 선언은 유효 */
    .container { /* 원하는 스타일 선언 */
        display: grid;
        gap: 15px;
        ...
    }
}
/* 단축 속성과 그 값 */
@supports (border: 1px solid red) {
}

/* 속성과 띄어쓰기로 구분하는 값 */
@supports (background-size: 100px 25px) {
}

/* 속성과 함수형 표기 값 */
@supports (padding: calc(100% - 10px)) {
}
@supports (display: grid;) { /* 문법 오류 발생 */ }
@supports (display: grid) { /* 정상 동작 */ }
@supports selector(선택자) {
  /* 지원되는 경우 선언할 스타일 */
}
/* 브라우저가 'h1 > p' 선택자를 지원하는지 확인 */
@supports selector(h1 > p) {
    /* 'h1 > p' 선택자를 지원하면 해당 스타일의 선언은 유효 */
    h1 > p {
        /* 원하는 스타일 선언 */
    }
}
@supports selector(*) {
}
@supports selector([title]) {
}
@supports selector(h1 p) {
}
@supports selector(::before) {
}
@supports selector(button:hover) {
}
@supports selector(:nth-child(2n)) {
}
/* 브라우저가 'display: grid'를 지원하지 않는 경우 */
@supports not (display: grid) {
    /* 'display: grid'를 지원하지 않으면 해당 스타일의 선언이 적용됨 */
    .container { /* 대체 스타일 선언 */
        display: flex;  /* flexbox를 대체 사용 */
        gap: 10px;
        flex-wrap: wrap;
        ...
    }
}
/* 브라우저가 'display: grid'와 'gap' 속성을 모두 지원하는 경우 */
@supports (display: grid) and (gap: 15px) {
    /* 두 속성을 모두 지원할 때 적용할 스타일 */
    .container {
        display: grid;
        gap: 15px;
        ...
    }
}
/* 브라우저가 'display: grid' 또는 'display: flex' 중 하나라도 지원하는지 확인 */
@supports (display: grid) or (display: flex) {
    .container {
        display: grid; /* grid를 우선 적용 */
        gap: 15px;
    }
}
/* 만약 'display: grid'를 지원하지 않으면서 'display: flex'는 지원하는 경우 */
@supports not (display: grid) and (display: flex) {
    .container {
        display: flex; /* grid를 지원하지 않으면 flex 사용 */
        gap: 15px;
    }
}
/* 만약 grid와 gap을 지원하지 않고, flex를 지원하는 경우 */
@supports not ((display: grid) and (gap: 15px)) and (display: flex) {
    .container {
        display: flex; /* grid를 지원하지 않으면 flex 사용 */
        justify-content: space-between; /* 적절한 대체 스타일 적용 */
    }
}
@supports (touch-action: none) {
    .modal {
        touch-action: none; /* 터치스크린에서 모달 밖으로 스크롤이나 확대/축소 방지 */
    }
    .modal-content {
        /* 모달 내부의 콘텐츠는 여전히 스크롤 가능 */
        overflow-y: auto;
    }    
}

caniuse.com에서 더 자세한 정보를 확인해 보세요.