Get startedFoundationsComponentsPatternsRules

Tile

타일은 에셋을 모서리가 둥근 정사각형 안에 담아 하나의 대상을 나타내요.

설치

pnpm dlx shadcn@latest add https://rebar.conmarket-landing.workers.dev/r/steel/tile.json

Examples

Size

size 로 16px(xxsmall) 부터 48px(xlarge) 까지 여섯 단계를 골라요. 기본값은 medium(32px) 이에요.

Size타일inset 에셋
xxsmall16px10px
xsmall20px12px
small24px14px
medium32px16px
large40px20px
xlarge48px24px

Background color

backgroundColor 에 배경 토큰 이름을 넘겨요. 기본값은 color.background.neutral 이에요. white·black 은 색 모드가 바뀌어도 그대로인 정적 색이라 로고처럼 색이 고정된 에셋에 써요.

Border

hasBorder 는 1px 테두리(color.border)를 그려요. 흰 배경 타일이 흰 화면 위에 놓일 때 경계를 잡아줘요. 기본값은 false 예요.

Inset

isInset(기본 true) 은 안쪽 여백을 두고 에셋을 작게 가운데 배치해요. 자체 배경이 있는 서드파티 로고처럼 꽉 채워야 하는 에셋은 isInset={false} 로 끝까지 채워요.

Label

의미가 있는 타일은 label 로 이름을 알려줘요. 옆 텍스트가 이미 같은 내용을 말하는 장식용 타일은 label="" 로 비워요.

Skeleton

TileSkeleton 은 에셋을 불러오는 동안 같은 크기의 자리를 잡아 레이아웃이 밀리지 않게 해요.

Usage guidelines

타일은 크기와 모서리가 정해진 기초 컨테이너예요. 이모지, 서드파티 로고처럼 어떤 에셋이든 담을 수 있어요. 이슈 유형 아이콘이나 정사각형 아바타처럼 이미 맞는 컴포넌트가 있으면 그것을 먼저 쓰고, 맞는 것이 없을 때 타일을 써요.

타일은 배경과 그 위의 전경 에셋 두 부분으로 이뤄져요. 에셋은 슬롯 영역 안에 들어가야 해요.

Do· 내용에 맞는 변형
꽉 채워야 하는 에셋은 non-inset, 그 밖의 에셋은 inset 을 써요.
Don't· 변형 섞기
한 목록이나 그룹 안에서 inset 과 non-inset 타일을 섞지 않아요.
Do· 옆 콘텐츠 높이에 맞추기
타일 높이를 옆에 놓인 텍스트·요소의 높이와 비슷하게 맞춰 균형을 잡아요.
Don't· 옆 콘텐츠보다 작게
옆 콘텐츠보다 작은 타일은 눈에 잘 띄지 않고 정렬이 어긋나 보여요.

Accessibility

  • label 이 있으면 role="img" 와 aria-label 로 노출되어 스크린 리더가 타일을 하나의 이미지로 읽어요.
  • label="" 이면 role 과 이름을 붙이지 않아 보조 기술이 장식으로 보고 건너뛰어요. 이때 안의 아이콘·이미지도 aria-hidden 이나 빈 alt 로 숨겨요.
  • 타일 자체는 포커스되지 않아요. 클릭이 필요하면 버튼이나 링크로 감싸고 그 요소에 이름을 붙여요.
  • 다크 모드에서도 보이도록 currentColor 를 쓰는 SVG 나 토큰 색 아이콘을 넣어요.

Props

Tile

Prop

Type

TileSkeleton

Prop

Type

On this page