Skip to content

Card

Card content

Cards are containers with a defined but flexible layout and are often used in groups to showcase collections of similar content, with each card conveying a single idea. Cards come with the option of being interactive, thus allowing users to perform an action or explore the card's topic in depth.

Implementations

The component Card is available in the following technologies:

CSS Components
cssreactvue
Web Components
webreactvueangular

Parameters

Parameters

Parameters are the attributes that can be used to customize the component when using it in a project. They apply to the WebComponents implementation and wrappers and to the Vue and React CSS implementations. Some parameters names change between the implementations, in order to follow the conventions of each technology and framework.

For example, the param model is named ngModel in Angular, modelValue in Vue, but stays as model in React.

By default, all the parameters are optional or can be set in different, except for the ones marked as required

The parametrization of the component can be done with the following custom params or properties:

NameTypeSlottableDescription
configstring

The main parameter has two components following the pattern: <?:slim><display>

  • slim: (optional) Removes the padding of the card
  • display: Possible values are: grid or flex
clickablebooleanWhether the card is clickable or not.
customobject

A record of key-value pairs to set the CSS custom tokens. It's a complex attribute set as an JS object in stringified JSON format.

Example:

html
<z-card custom='{"fill":"#06e7a3"}' />
custom-strstring

The stringified version of the custom property. It follows the pattern key:value;key:value;, with the possibility of setting multiple values and spaces between the punctuation characters.

Example:

html
<z-card custom-str="fill:#06e7a3" />
z-themestring

Sets the theme of the component. The possible values are light and dark.

html
<z-card z-theme="dark" />

From Figma to code

...

Customization

INFO

Check everything about the customization mechanics in the "How it works" documentation.

CSS VariableTypeDescription
--z-card--bgcolorBackground color of the card
--z-card--colorcolorText color of the card
--z-card--radiusdistanceBorder radius of the card
--z-card--paddingdistancePadding of the card
--z-card--gapdistanceGap between the card and its children
--z-card--shadowshadowShadow of the card
--z-card--borderdistanceBorder of the card
--z-card--fontfontFont of the card

Both the background and text color can be customized using the --z-card--bg and --z-card--color CSS custom properties. Also you can customize the font using the --z-card--font custom property.

Card content

And finally you can customize the border, border radius, gap between content and shadow using the --z-card--border, --z-card--radius, --z-card--gap and --z-card--shadow custom properties.

Card content 1 Card content 2

Accessibility

...