본문으로 건너뛰기

Edge.Surface

DOM 요소에 조명 효과를 적용합니다.

Edge.Surface

가장 가까운 Edge.Provider에 연결된 HTML 요소 하나를 렌더링합니다. as로 태그를 선택하면 해당 요소의 HTML 속성, 이벤트, ref를 사용할 수 있습니다.

Edge.Surface 시그니처
<Edge.Surface as="article" edgeStyle="raised">
Your content
</Edge.Surface>
Edge.Surface props
Prop / 옵션타입기본값설명
pseudoElement'after' | 'before''after'하이라이트를 그릴 가상 요소입니다. 기존 ::after를 유지하려면 before를 선택하세요. 두 가상 요소를 모두 사용 중이거나 input 요소라면 바깥에 래퍼를 두세요. 잘못된 값은 RangeError를 발생시킵니다.
edgeStyle'raised' | 'recessed' | 'matte''raised'테두리가 조명에 반응하는 방식입니다. 어떤 값을 선택해도 컴포넌트의 기존 스타일은 유지됩니다.
colorstringcurrentColor하이라이트 색상입니다. 기본값은 연결된 DOM 요소의 글자색입니다. CSS 변수를 포함한 모든 CSS 색상 문자열을 사용할 수 있습니다.
shadowColorstring#0008조명 반대쪽 테두리의 색상입니다. CSS 색상 문자열을 사용할 수 있습니다. 밝은 서피스에서 이 그림자를 없애려면 transparent를 지정하세요.
borderWidthnumber1하이라이트의 두께를 픽셀 단위로 지정합니다. 실제 DOM 요소의 테두리는 바꾸지 않습니다. 음수는 0으로 제한하고, 유한하지 않은 값에는 기본값을 사용합니다.
intensitynumber1공유 조명의 강도에 곱할 값입니다. 유한한 값은 0~1로 제한하고, 유한하지 않은 값에는 기본값을 사용합니다.
asHTML tag name'div'렌더링할 HTML 태그입니다. 해당 요소의 HTML 속성과 ref를 사용할 수 있습니다. 커스텀 React 컴포넌트는 지정할 수 없습니다.
childrenReactNodeUnset렌더링하는 요소 안에 표시할 콘텐츠입니다. input처럼 가상 요소를 직접 표시할 수 없는 요소에는 래퍼를 사용하세요.
refRef<HTMLElement for the chosen tag>UnsetEdge의 등록용 ref와 함께 렌더링된 DOM 요소에 전달됩니다. React 19의 콜백 ref 클린업도 유지됩니다.
classNamestringUnsetEdge의 하이라이트 클래스와 함께 적용할 클래스입니다.
styleCSSPropertiesUnsetEdge의 스타일 뒤에 병합할 인라인 스타일입니다. 의도적으로 덮어쓰는 경우가 아니라면 Edge가 관리하는 CSS 변수는 유지하세요.

Edge.Surface는 반드시 Edge.Provider 안에서 사용하세요. 밖에서 렌더링하면 오류가 발생합니다. input 요소에 적용하거나 기존 가상 요소와 충돌하는 경우에는 적용 시 고려사항을 참고하세요.

하이라이트는 DOM 요소의 테두리 바깥쪽에 맞춰 표시됩니다. 기존 컴포넌트가 렌더링하는 DOM 요소에 연결하려면 useSurface를 사용하세요.

bolerish/edge · React