레이어 스타일

레이어 스타일 (Layer Styles)

레이어 스타일을 사용해서 시각적 속성을 정의하는 방법을 알려드려요. 반복되는 스타일을 묶어서 재사용하기 좋아요.

출처: 문서

본문

개요

레이어 스타일을 사용하면 시각적 속성을 정의할 수 있어요. 일반적인 속성은 다음과 같아요.

  • 색상 또는 텍스트 색상
  • 배경색
  • 테두리 너비와 테두리 색상
  • 박스 그림자
  • 투명도

레이어 스타일 정의

레이어 스타일은 defineLayerStyles 함수를 사용해서 정의해요.

import { defineLayerStyles } from "@chakra-ui/react"

const layerStyles = defineLayerStyles({
  container: {
    description: "container styles",
    value: {
      background: "gray.50",
      border: "2px solid",
      borderColor: "gray.500",
    },
  },
})

내장 레이어 스타일

Chakra UI는 내장 레이어 스타일 세트를 제공해요.

테마 업데이트

레이어 스타일을 사용하려면 theme 객체에 layerStyles 속성을 업데이트하세요.

import { createSystem, defineConfig } from "@chakra-ui/react"
import { layerStyles } from "./layer-styles"

const config = defineConfig({
  theme: {
    layerStyles,
  },
})

export default createSystem(defaultConfig, config)

테마를 업데이트한 후 typegen 명령을 실행해서 타입을 생성하세요. postinstall, CI, monorepo에서 typegen을 실행하는 방법은 CLI 문서를 참고하세요.

npx @chakra-ui/cli typegen

레이어 스타일 사용

이제 컴포넌트에서 layerStyle 속성을 사용할 수 있어요.

<Box layerStyle="container">This is inside a container style</Box>

더 알아보기 (Learn more)