应选用布局,因其天然行列对齐、无需复杂css、兼容性好、语义清晰;表头用保障可访问性与默认样式;数量输入框必须设type="number"和min="1";删除按钮须用避免跳转。

零基础直接写购物车列表排版,重点不是学 HTML 全套,而是用最少、最稳的标签把商品名、价格、数量、删除按钮对齐好,不崩、不乱、能改。
用 <table> 还是 <code><div>?选 <code><table> 更省事<p>新手最容易卡在“怎么让四列内容横着对齐又换行不散架”。<code><div> + CSS 布局看着灵活,但 <code>display: flex 或 grid 一加 margin/padding 就错位,调试半天不如一行 <tr><td> 直观。购物车本质是数据表格,语义和结构都匹配。<ul><li><code><table> 自带行列对齐,不用算像素、不用清浮动、不用处理换行塌陷<li>所有浏览器默认渲染一致,连 IE8 都能跑(哪怕你不用兼容它,心里也踏实)</li>
<li>后续加“全选”“合计”行,直接插 <code><tr>,不用重写布局逻辑<h3><code><th> 和 <code><td> 别混用,表头用 <code><th>,数据用 <code><td><p>很多人复制代码时把所有单元格都写成 <code><td>,结果表头文字不加粗、居中失效、屏幕阅读器读不出来——这不是样式问题,是语义错了。<ul><li><code><th> 默认 <code>font-weight: bold + text-align: center,不用额外写 CSS
<thead><tr>
<th>商品</th>
<th>单价</th>
</tr></thead>,以后加固定表头滚动也方便<th> 改成 <code><td> 看似“统一”,实则破坏可访问性,iOS VoiceOver 会跳过识别<h3>数量输入框必须加 <code>type="number" 和 min="1"
手写 <input> 不加属性,用户能输负数、字母、小数,提交后后端校验报错,体验断层。
将调研报告、方案对比、数据分析、需求梳理、会议纪要、设计说明、代码评审、学习笔记等任务产物输出为可在浏览器直接打开的单文件 HTML,替代 Markdown 作为最终交付物。Markdown 在信息密度、视觉清晰度和可分享性上已跟不上 AI 产物的丰富度,HTML 能同时承载排版、表格、SVG 等。
-
<input type="number" min="1" value="1">浏览器自带上下箭头,禁输非法字符 - 别信
pattern或 JS 截断——移动端软键盘弹出数字盘,比正则友好十倍 - 注意:Chrome 对
type="number"的 spin button 样式难改,如需美化,优先用 JS 控制值而非覆盖原生 UI
删除按钮别只放个文字,用 <button type="button"></button>
写 @#@#@#@#@#@#@#@#@#@0 最常见,但点击会触发页面跳转(# 锚点滚动)、刷新,或被某些框架当路由处理。
-
<button type="button">删除</button>明确告诉浏览器“不提交、不跳转” - 配合 JS 时,
event.preventDefault()可省,减少冗余逻辑 - 如果用
<input type="button">,value 属性难改文案(比如多语言),<button></button>内容可自由嵌套图标或 span
真正卡住新手的,从来不是标签不会打,而是没想清楚“这个元素要完成什么动作、被谁操作、失败时怎么反馈”。购物车列表只要撑住四列对齐、输入合法、删除可靠,剩下的颜色、动画、响应式,都是锦上添花的事。










