Card

Cards are versatile content containers that contain content and actions to convey information about a single subject.

Overview

There are three types of cards: default (filled), raised, and stroked. Cards can contain anything from images, blocks of text, lists, accordions, and other components.

Basic Card

The example below is a default, filled card that includes all of a card's pre-styled elements and a fixed width. Cards naturally do not have a fixed width, so they'll be 100% wide by default. The width is changeable with custom CSS

Usage

Within a standalone component

To use card in a standalone component, import it directly into your custom component:

@Component({
  selector: 'custom-component',
  templateUrl: './custom-component.component.html',
  standalone: true,
  imports: [
    DAFF_CARD_COMPONENTS,
  ],
})
export class CustomComponent {}

Within a module (deprecated)

To use card in a module, import DaffCardModule into your custom module:

import { NgModule } from '@angular/core';

import { DaffCardModule } from '@daffodil/design/card';

@NgModule({
    declarations: [
    CustomComponent,
  ],
  exports: [
    CustomComponent,
  ],
  imports: [
    DaffCardModule,
  ],
})
export class CustomComponentModule { }

This method is deprecated. It's recommended to update all custom components to standalone.

Supported Content Types

A card supports a wide variety of content and includes minimally pre-styled image, icon, tagline, title, content, and actions content containers.

Image

Image can be added to a card by using the daffCardImage attribute. It stretches the image to a card's defined width and ensures that its border radius is flush with a card.

Icon

Icon can be added to a card by using the daffCardIcon attribute. It's intended for visual or branding reinforcement and should not be used for actionable icons.

Tagline

Tagline can be added to a card by using the daffCardTagline attribute. It's intended to supplement the title by providing a short, memorable description.

Title

Title can be added to a card by using the daffCardTitle attribute.

Content

Content can be added to a card by using the daffCardContent attribute and should only be used once. It's a wrapper container that can be used to place all additional components and text content within a card. The content container allows for a ton of control and customization because it's not affected by any of card's properties and only serves as a wrapping and spacing container.

Actions

Buttons can be added to a card by using the daffCardActions attribute. This container will always be positioned at the bottom of a card.

Properties

Orientation

Orientation dictates how a card's content is stacked — vertical or horizontal. Cards are oriented vertically by default. The orientation of a card can be defined or updated by using the orientation property. Horizontal cards will stack vertically on smaller screens due to size constraints.

Linkable Card

Cards can be linkable by adding the component selector to the <a> tag. All card types are linkable.

Raised Card

A raised card adds elevation to the default card.

Stroked Card

A stroked card adds a border to the default card.

Theming

Cards will use the base color of your application to display the default background and/or border color. A card's colors can be defined by using the color property.

Supported colors: primary | secondary | tertiary | white | black | theme | theme-contrast

Graycore, LLC © 2018 - 2024. Code licensed under an MIT-style License. Documentation licensed under CC BY 4.0.