Skip to main content

Card

TkCard component description.

import { TkCard } from '@takeoff-ui/react'

Playground

Preview

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Inventore sed consequuntur error repudiandae numquam deserunt quisquam repellat libero asperiores earum nam nobis.

Generated Code

<TkCard
headerType="basic"
footerType="basic"
headerPosition="top"
header="Card Header"
subheader="Card Subheader"
>
<p>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Inventore sed consequuntur error repudiandae numquam deserunt quisquam repellat libero asperiores earum nam nobis.
</p>
<div slot="footer-actions">
<TkButton label="Cancel" variant="neutral" type="text" />
<TkButton label="Submit" variant="primary" />
</div>
</TkCard>
<TkCard
headerType="basic"
footerType="basic"
headerPosition="top"
header="Card Header"
subheader="Card Subheader"
>
<p>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Inventore sed consequuntur error repudiandae numquam deserunt quisquam repellat libero asperiores earum nam nobis.
</p>
<div slot="footer-actions">
<TkButton label="Cancel" variant="neutral" type="text" />
<TkButton label="Submit" variant="primary" />
</div>
</TkCard>
<tk-card
headerType="basic"
footerType="basic"
headerPosition="top"
header="Card Header"
subheader="Card Subheader"
>
<p>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Inventore sed consequuntur error repudiandae numquam deserunt quisquam repellat libero asperiores earum nam nobis.
</p>
<div slot="footer-actions">
<tk-button label="Cancel" variant="neutral" type="text" />
<tk-button label="Submit" variant="primary" />
</div>
</tk-card>

Controls

Basic

A simple TkCard is created using the header property along with content as children.

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Inventore sed consequuntur error repudiandae numquam deserunt quisquam repellat libero asperiores earum nam nobis, culpa ratione quam perferendis esse, cupiditate neque quas!

View Code
<TkCard header="Card Title">
<p>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Inventore sed consequuntur error repudiandae numquam deserunt quisquam repellat libero asperiores earum nam nobis, culpa ratione quam perferendis esse, cupiditate neque
quas!
</p>
</TkCard>

Card with Content

Customize the card's content using the content slot to place any desired elements inside the TkCard.

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Inventore sed consequuntur error repudiandae numquam deserunt quisquam repellat libero asperiores earum nam nobis, culpa ratione quam perferendis esse, cupiditate neque quas!

View Code
<TkCard header="Card Title">
<p>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Inventore sed consequuntur error repudiandae numquam deserunt quisquam repellat libero asperiores earum nam nobis, culpa ratione quam perferendis esse, cupiditate neque
quas!
</p>
</TkCard>

Header Variants

Demonstrates various header types basic, divided, light, dark, primary available via the headerType property.

Basic Header

This card demonstrates different header options.


Divided Header

This card demonstrates different header options.


Light Header

This card demonstrates different header options.


Dark Header

This card demonstrates different header options.


Primary Header

This card demonstrates different header options.

View Code
<TkCard header="Basic Header" headerType="basic">
<p>This card demonstrates different header options.</p>
</TkCard>

<TkCard header="Divided Header" headerType="divided">
<p>This card demonstrates different header options.</p>
</TkCard>

<TkCard header="Light Header" headerType="light">
<p>This card demonstrates different header options.</p>
</TkCard>

<TkCard header="Dark Header" headerType="dark">
<p>This card demonstrates different header options.</p>
</TkCard>

<TkCard header="Primary Header" headerType="primary">
<p>This card demonstrates different header options.</p>
</TkCard>

Card with Image

Shows how to include images using the image property and configure their display with imageOptions.

Card with top image in windowed mode.

View Code
<TkCard
header="Top Image"
image="path/to/image.jpg"
imageOptions={{ position: 'top', windowed: true }}
containerStyle={{ width: '312px' }}
showAvatar
showMenuButton
>
<p>Card with top image in windowed mode.</p>
<div slot="footer-actions">
<TkButton label="Cancel" variant="neutral" type="text"></TkButton>
<TkButton label="Submit" variant="primary"></TkButton>
</div>
</TkCard>

Illustrates how to add a footer using the footer-actions slot or customize it with the footerType property.

Basic Footer

This card demonstrates the use of a footer with action buttons.


Divided Footer

This card demonstrates the use of a footer with action buttons.


Light Footer

This card demonstrates the use of a footer with action buttons.

View Code
<TkCard header="Card with Footer" footerType="basic">
<p>This card demonstrates the use of a footer with action buttons.</p>
<div slot="footer-actions">
<TkButton label="Cancel" variant="neutral" type="text"></TkButton>
<TkButton label="Submit" variant="primary"></TkButton>
</div>
</TkCard>

<TkCard header="Card with Footer" footerType="divided">
<p>This card demonstrates the use of a footer with action buttons.</p>
<div slot="footer-actions">
<TkButton label="Cancel" variant="neutral" type="text"></TkButton>
<TkButton label="Submit" variant="primary"></TkButton>
</div>
</TkCard>

<TkCard header="Card with Footer" footerType="light">
<p>This card demonstrates the use of a footer with action buttons.</p>
<div slot="footer-actions">
<TkButton label="Cancel" variant="neutral" type="text"></TkButton>
<TkButton label="Submit" variant="primary"></TkButton>
</div>
</TkCard>

Header Action

Shows how to place a custom action on the right side of the card header using the header-action slot.

This card demonstrates the use of a custom action in the header.

View Code
<TkCard header="Card with Header Action" subheader="Subheader" headerType="divided">
<p>This card demonstrates the use of a custom action in the header.</p>
<div slot="header-action" style={{ display: 'flex', gap: '8px' }}>
<TkSelect options={[
{ value: 'week', label: 'This Week' },
{ value: 'month', label: 'This Month' },
{ value: 'year', label: 'This Year' },
]} placeholder="Select period"></TkSelect>
<TkButton icon="filter_alt" variant="info" label="Filter"></TkButton>
</div>
</TkCard>

API

Props

NameTypeDefaultDescription
any{ severity: 'light', background: 'solid', rounded: true, size: 'small', }TO DO State hata verdiği için buraya alındı, düzeltilecek TkAvatar component properties
CSSStylePropertiesnullThe style attribute of container element
CSSStylePropertiesnullThe style attribute of content element
booleanfalseControls whether the card shows a hover shadow effect
"basic", "divided", "light"'basic'The mode of the footer
stringnullThe header text
"bottom", "top"'top'The position of the header
"basic", "dark", "divided", "light", "primary"'basic'The type of the header
booleanfalseControls whether the header is hidden
booleanfalseControls whether the card is displayed horizontally
stringnullThe image source for the card
{ badge?: string; badgeIcon?: string; badgeIconPosition?: "left", "right"; windowed?: boolean; background?: boolean; backgroundUrl?: string; position?: "background", "left", "right", "top"; }{ position: 'top', background: false, windowed: true, }TO DO Options for the image display
booleanfalseControls whether the header avatar is shown
booleanfalseControls whether the menu button is shown
stringnullThe subheader text

Slots

NameDescription
avatarCustom avatar template of card header.
contentCustom content template.
defaultDefault slot to detect child to inner body.
footerCustom footer template.
footer-actionsCustom actions template to default footer.
headerCustom header template.
header-actionCustom action template on the right side of the card header.