Đến nội dung chính

Dòng danh sách

Để xếp những dòng mà 'ai' hoặc 'cái gì' phải hiện ra trước — người, công trường, công việc.

Hiển thị dữ liệu

Xem trước trực tiếp

Nguồn

<ul class="dc-lrow">
  <li class="dc-lrow__item">
    <a class="dc-lrow__link" href="#">
      <span class="dc-lrow__avatar" aria-hidden="true">김</span>
      <span class="dc-lrow__body">
        <span class="dc-lrow__title">김현수 반장</span>
        <span class="dc-lrow__sub">A현장 · 철근공 · 오늘 출근</span>
      </span>
      <span class="dc-lrow__arrow" aria-hidden="true">›</span>
    </a>
  </li>
  <li class="dc-lrow__item">
    <a class="dc-lrow__link" href="#">
      <span class="dc-lrow__avatar" aria-hidden="true">응</span>
      <span class="dc-lrow__body">
        <span class="dc-lrow__title">응우옌 반 안</span>
        <span class="dc-lrow__sub">A현장 · 형틀목공 · 오늘 출근</span>
      </span>
      <span class="dc-lrow__arrow" aria-hidden="true">›</span>
    </a>
  </li>
  <li class="dc-lrow__item">
    <a class="dc-lrow__link" href="#">
      <span class="dc-lrow__avatar" aria-hidden="true">박</span>
      <span class="dc-lrow__body">
        <span class="dc-lrow__title">박민정 팀장</span>
        <span class="dc-lrow__sub">B현장 · 안전관리 · 휴무</span>
      </span>
      <span class="dc-lrow__arrow" aria-hidden="true">›</span>
    </a>
  </li>
</ul>
.dc-lrow {
  margin: 0; padding: 0; list-style: none;
  background: var(--dc-surface);
  font-family: var(--dc-font);
}
.dc-lrow__item { position: relative; }
.dc-lrow__item + .dc-lrow__item { border-top: 1px solid var(--dc-line); }
.dc-lrow__item--unread { background: var(--dc-brand-soft); }
.dc-lrow__link {
  display: flex; align-items: center; gap: var(--dc-3);
  min-height: 64px; padding: var(--dc-3) var(--dc-4);
  color: inherit; text-decoration: none;
  transition: background var(--dc-fast);
}
.dc-lrow__link:active { background: var(--dc-sunken); }
.dc-lrow__avatar {
  flex: 0 0 auto; display: grid; place-items: center;
  width: 44px; height: 44px;
  border-radius: var(--dc-r-full);
  background: var(--dc-brand-soft); color: var(--dc-brand-text);
  font-size: 16px; font-weight: 700;
}
.dc-lrow__thumb {
  flex: 0 0 auto; width: 56px; height: 56px;
  border: 1px solid var(--dc-line); border-radius: var(--dc-r-sm);
  background: linear-gradient(135deg, var(--dc-brand-soft), var(--dc-sunken));
}
.dc-lrow__body {
  flex: 1 1 auto; min-width: 0;
  display: flex; flex-direction: column; gap: 2px;
}
.dc-lrow__title {
  font-size: 15px; font-weight: 700; color: var(--dc-text);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.dc-lrow__sub {
  font-size: 13px; line-height: 1.5; color: var(--dc-text-sub);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.dc-lrow__value {
  flex: 0 0 auto; font-size: 13px; font-weight: 700;
  color: var(--dc-text-sub); white-space: nowrap;
}
.dc-lrow__badge {
  flex: 0 0 auto; width: 8px; height: 8px;
  border-radius: var(--dc-r-full); background: var(--dc-danger);
}
.dc-lrow__arrow {
  flex: 0 0 auto; font-size: 20px; line-height: 1;
  color: var(--dc-text-mute);
}

Cách dùng

  • Chỉ một dòng tiêu đề và một dòng phụ — cần dòng thứ ba thì chuyển sang thẻ
  • Chỉ thêm mũi tên ở dòng mở sang màn hình khác
  • Có ảnh thì dùng ảnh; không có thì lấy chữ đầu của tên đặt trong vòng tròn

Điểm cần lưu ý

  • Không để dòng bấm được thấp hơn 56px — người ta bấm khi đang ngồi trên xe
  • Bọc cả dòng trong một liên kết, đừng lồng thêm nút bên trong

Tiếp theo