对话布局 海报
№ 281

对话布局

定义 Definition

通过左右交替的对话结构,模拟真实交流顺序,增强互动感与阅读节奏。

要目 Key Points
角色明确左右区分发言者身份,建立清晰的对话关系。
交替排列左右交替的排列方式,引导自然的阅读动线。
信息分组按话题成对呈现,每轮包含提问与回应。
节奏控制控制气泡长度与间距,保持视觉呼吸感。
用法 Application

适用于问答、客服、教学、访谈、协作工具等交互场景,提升参与感与可读性。

关键词 Keywords
对话布局角色明确交替排列信息分组节奏控制
参见 Related
易混 Confusable
回忆评估 Review
看完海报,凭回忆作答——评分后排入复习队列
一级分类网页与 UI
本主题共22 个概念
高清原图 CDN 打开 ↗
学习路径 图鉴 · 研习两用

实况演示

Live Demo · 真实 HTML/CSS
关键 CSS fold / unfold
/* ═══ 本 demo 自定义样式 ═══ */

.chat { display: flex; flex-direction: column; gap: 12px; max-width: 26em; margin: 0 auto; }
  .msg { display: flex; gap: 10px; align-items: flex-end; }
  .msg .bub {
    max-width: 75%; padding: 9px 13px; font-size: 12.5px;
    border: 1px solid var(--line); background: var(--paper-2); border-radius: 10px 10px 10px 2px;
  }
  .msg.me { flex-direction: row-reverse; }
  .msg.me .bub { background: var(--ink); color: var(--paper); border-color: var(--ink); border-radius: 10px 10px 2px 10px; }
  .msg .tm { font-family: var(--mono); font-size: 9px; color: var(--ink-3); flex: none; }

/* ═══ 共享令牌类 · demo 外壳已内置 ═══ */

.blk {
  background: color-mix(in srgb, var(--ink) 4%, transparent);
  border: 1px solid var(--line); border-radius: 2px;
  display: grid; place-items: center;
  font-family: var(--mono); font-size: 10.5px; letter-spacing: .08em; color: var(--ink-2);
  padding: 10px; min-height: 34px;
}
.blk.acc {
  background: color-mix(in srgb, var(--accent) 12%, transparent);
  border-color: color-mix(in srgb, var(--accent) 45%, transparent); color: var(--accent);
}
.blk.ink { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.tag {
  display: inline-block; font-family: var(--mono); font-size: 10px; letter-spacing: .08em;
  border: 1px solid var(--line); color: var(--ink-2); padding: 2px 8px;
  border-radius: 2px; background: var(--paper-2);
}
.card { background: var(--paper-2); border: 1px solid var(--line); border-radius: 3px; overflow: hidden; }
.card .cv { aspect-ratio: 16/10; background: color-mix(in srgb, var(--accent) 10%, var(--paper-2)); border-bottom: 1px solid var(--line); }
.card .bd { padding: 9px 10px; }
.card .bd .t { font-weight: 600; font-size: 12.5px; }
.card .bd .m { font-family: var(--mono); font-size: 10px; color: var(--ink-3); margin-top: 2px; }
.avatar {
  width: 34px; height: 34px; border-radius: 50%; flex: none;
  background: color-mix(in srgb, var(--accent) 22%, var(--paper-2)); border: 1px solid var(--line);
}
.fake-text { height: 8px; background: color-mix(in srgb, var(--ink) 10%, transparent); border-radius: 1px; }
.fake-text.w60 { width: 60%; } .fake-text.w80 { width: 80%; } .fake-text.w40 { width: 40%; }
.fake-text + .fake-text { margin-top: 6px; }

同主题

查看全部 →
[Demo]
270 卡片网格布局
270 卡片网格布局
[Demo]
274 数据表格布局
274 数据表格布局