menuMDUIDocs
color_lens
Новый mdui 2 на базе Material Design 3 и Web Components уже здесь. Перейти к документации mdui 2.

Карточки

Карточки — это контейнеры, содержащие набор определенных данных. Они могут включать различную связанную информацию, например: фотографии, текст, ссылки и т. д.

Использование

Компонент карточки написан на чистом CSS, для его работы достаточно написать HTML-код.

Стиль

Полная HTML-структура

Ниже приведена полная HTML-структура карточки, включая элементы со всеми предопределенными стилями.

Пример
<div class="mdui-card">

  <!-- Заголовок карточки, содержит аватар, заголовок и подзаголовок -->
  <div class="mdui-card-header">
    <img class="mdui-card-header-avatar" src="avatar.jpg"/>
    <div class="mdui-card-header-title">Title</div>
    <div class="mdui-card-header-subtitle">Subtitle</div>
  </div>

  <!-- Медиа-контент карточки, может содержать изображения, видео и другой медиа-контент, а также заголовок и подзаголовок -->
  <div class="mdui-card-media">
    <img src="card.jpg"/>

    <!-- Карточка может содержать одну или несколько кнопок меню -->
    <div class="mdui-card-menu">
      <button class="mdui-btn mdui-btn-icon mdui-text-color-white">
        <i class="mdui-icon material-icons">share</i>
      </button>
    </div>
  </div>

  <!-- Заголовок и подзаголовок карточки -->
  <div class="mdui-card-primary">
    <div class="mdui-card-primary-title">Title</div>
    <div class="mdui-card-primary-subtitle">Subtitle</div>
  </div>

  <!-- Содержимое карточки -->
  <div class="mdui-card-content">Listen to your favorite artists and albums anytime, anywhere, online or offline.</div>

  <!-- Кнопки карточки -->
  <div class="mdui-card-actions">
    <button class="mdui-btn mdui-ripple">action 1</button>
    <button class="mdui-btn mdui-ripple">action 2</button>
    <button class="mdui-btn mdui-btn-icon mdui-float-right">
      <i class="mdui-icon material-icons">expand_more</i>
    </button>
  </div>

</div>

Наложение на медиа-элемент

Добавьте <div class="mdui-card-media-covered"></div> внутрь <div class="mdui-card-media"></div> и поместите контент, который должен перекрывать медиа-элемент, в этот элемент.

Пример
<div class="mdui-card">
  <div class="mdui-card-media">
    <img src="card.jpg"/>
    <div class="mdui-card-media-covered">
      <div class="mdui-card-primary">
        <div class="mdui-card-primary-title">Title</div>
        <div class="mdui-card-primary-subtitle">Subtitle</div>
      </div>
    </div>
  </div>
  <div class="mdui-card-actions">
    <button class="mdui-btn mdui-ripple">action 1</button>
    <button class="mdui-btn mdui-ripple">action 2</button>
  </div>
</div>
Пример
<div class="mdui-card">
  <div class="mdui-card-media">
    <img src="card.jpg"/>
    <div class="mdui-card-media-covered">
      <div class="mdui-card-primary">
        <div class="mdui-card-primary-title">Title</div>
        <div class="mdui-card-primary-subtitle">Subtitle</div>
      </div>
      <div class="mdui-card-actions">
        <button class="mdui-btn mdui-ripple mdui-ripple-white">action 1</button>
        <button class="mdui-btn mdui-ripple mdui-ripple-white">action 2</button>
      </div>
    </div>
  </div>
</div>

Добавьте класс .mdui-card-media-covered-top к .mdui-card-media-covered, чтобы слой перекрытия располагался в верхней части медиа-элемента.

Пример
<div class="mdui-card">
  <div class="mdui-card-media">
    <img src="card.jpg"/>
    <div class="mdui-card-media-covered mdui-card-media-covered-top">
      <div class="mdui-card-primary">
        <div class="mdui-card-primary-title">Title</div>
        <div class="mdui-card-primary-subtitle">Subtitle</div>
      </div>
    </div>
  </div>
  <div class="mdui-card-actions">
    <button class="mdui-btn mdui-ripple">action 1</button>
    <button class="mdui-btn mdui-ripple">action 2</button>
  </div>
</div>

Добавьте класс .mdui-card-media-covered-transparent к .mdui-card-media-covered, чтобы слой перекрытия имел прозрачный фон.

Пример
<div class="mdui-card">
  <div class="mdui-card-media">
    <img src="card.jpg"/>
    <div class="mdui-card-media-covered mdui-card-media-covered-transparent">
      <div class="mdui-card-primary">
        <div class="mdui-card-primary-title">Title</div>
        <div class="mdui-card-primary-subtitle">Subtitle</div>
      </div>
    </div>
  </div>
  <div class="mdui-card-actions">
    <button class="mdui-btn mdui-ripple">action 1</button>
    <button class="mdui-btn mdui-ripple">action 2</button>
  </div>
</div>

Добавьте класс .mdui-card-media-covered-gradient к .mdui-card-media-covered, чтобы слой перекрытия имел градиентный фон.

Пример
<div class="mdui-card">
  <div class="mdui-card-media">
    <img src="card.jpg"/>
    <div class="mdui-card-media-covered mdui-card-media-covered-gradient">
      <div class="mdui-card-primary">
        <div class="mdui-card-primary-title">Title</div>
        <div class="mdui-card-primary-subtitle">Subtitle</div>
      </div>
    </div>
  </div>
  <div class="mdui-card-actions">
    <button class="mdui-btn mdui-ripple">action 1</button>
    <button class="mdui-btn mdui-ripple">action 2</button>
  </div>
</div>

Вертикальное расположение кнопок

Добавление класса .mdui-card-actions-stacked к <div class="mdui-card-actions"></div> позволяет расположить кнопки вертикально.

Пример
<div class="mdui-card">
  <div class="mdui-card-media">
    <img src="card.jpg"/>
  </div>
  <div class="mdui-card-actions mdui-card-actions-stacked">
    <button class="mdui-btn mdui-ripple">action 1</button>
    <button class="mdui-btn mdui-ripple">action 2</button>
  </div>
</div>

Список CSS-классов

Имя классаОписание
.mdui-cardОпределяет компонент карточки.
.mdui-card-headerОпределяет заголовок карточки.
.mdui-card-header-avatarОпределяет аватар в заголовке карточки.
.mdui-card-header-titleОпределяет заголовок в верхней части карточки.
.mdui-card-header-subtitleОпределяет подзаголовок в верхней части карточки.
.mdui-card-mediaОпределяет медиа-элемент в карточке.
.mdui-card-media-coveredОпределяет содержимое, накладываемое на медиа-элемент.
.mdui-card-media-covered-topРасполагает слой перекрытия в верхней части медиа-элемента.
.mdui-card-media-covered-transparentДелает фон слоя перекрытия прозрачным.
.mdui-card-media-covered-gradientДелает фон слоя перекрытия градиентным.
.mdui-card-menuОпределяет меню в правом верхнем углу карточки.
.mdui-card-primaryОпределяет область заголовка и подзаголовка карточки.
.mdui-card-primary-titleОпределяет заголовок карточки.
.mdui-card-primary-subtitleОпределяет подзаголовок карточки.
.mdui-card-contentОпределяет содержимое карточки.
.mdui-card-actionsОпределяет панель действий карточки.
.mdui-card-actions-stackedРасполагает панель действий вертикально.