标签仅支持垂直折叠,无法实现侧边抽屉式动画;可通过max-height+transition模拟平滑展开,但受限于高度估算和交互功能缺失。

但你可以用它快速实现语义清晰、无障碍友好、零 JS 的垂直方向内容抽拉效果,再通过 CSS 做视觉增强:
- 给
<summary></summary>加图标和悬停反馈 - 用
max-height+transition模拟平滑展开(需手动设固定高度上限) - 配合
overflow: hidden和opacity提升动效观感
例如:
<details class="drawer-vertical"><summary>用户信息</summary><div class="drawer-content">
<p>姓名:张三</p>
<p>邮箱:zhangsan@example.com</p><div class="aritcle_card flexRow artxards">
<div class="artcardd flexRow">
<a class="aritcle_card_img" rel="nofollow" href="/xiazai/skill9263" title="Html2md"><img
src="https://img.php.cn/upload/skill/000/000/081/179249945220127.jpg" alt="Html2md" onerror="this.onerror='';this.src='/static/lhimages/moren/morentu.png'" ></a>
<div class="aritcle_card_info flexColumn">
<a rel="nofollow" href="/xiazai/skill9263" title="Html2md" class="overflowclass">Html2md</a>
<p class="overflowclass">使用 Readability + Turndown 将 HTML 页面转换为干净的、Agent 友好的 Markdown。去除导航栏、广告、页脚、Cookie 横幅、社交按钮等干扰元素。支持 URL...</p>
</div>
<a rel="nofollow" href="/xiazai/skill9263" title="Html2md" class="aritcle_card_btn flexRow flexcenter"><b></b><span>下载</span>
</a>
</div>
</div>
</div>
</details>
对应 CSS:
.drawer-vertical {
border: 1px solid #ddd;
border-radius: 4px;
}
.drawer-vertical summary {
padding: 12px 16px;
cursor: pointer;
font-weight: 600;
position: relative;
}
.drawer-vertical summary::after {
content: "▼";
float: right;
transition: transform 0.2s;
}
.drawer-vertical[open] summary::after {
transform: rotate(180deg);
}
.drawer-content {
padding: 0 16px 12px;
max-height: 0;
overflow: hidden;
opacity: 0;
transition: max-height 0.3s ease-in-out, opacity 0.2s ease;
}
.drawer-vertical[open] .drawer-content {
max-height: 200px;
opacity: 1;
}
这种写法优点是轻量、可访问、兼容性好(Chrome/Firefox/Safari/Edge 均支持),缺点也很明确:
- 动画依赖
max-height估算值,内容超长会截断或突兀撑开 - 无法响应
Esc键关闭,也不能点击遮罩层收起 - 不支持手势拖拽、无滚动锚定、移动端体验较弱
如果项目需要真正的“侧边抽屉”(比如点击头像从左侧滑出用户菜单),就必须放弃 <details></details>,改用标准方案:
- HTML 定义结构(含
aria-label和role="dialog") - CSS 控制
position: fixed、right: -100%、transform和transition - JavaScript 管理
open状态、键盘事件(Esc)、遮罩点击、焦点捕获
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










