使用HTML5的details和summary标签可实现内容折叠与展开,无需JavaScript或CSS;2. details定义可切换的详细信息,默认收起,summary为其标题;3. 添加open属性可使内容默认展开;4. 可通过CSS自定义样式,如去除默认箭头、设置背景色和添加动画,提升外观与体验;5. 语义清晰且兼容主流浏览器,适用于FAQ、帮助提示等场景。

使用HTML5的details和summary标签可以轻松实现内容的折叠与展开效果,无需JavaScript或CSS即可完成基本交互。
details 和 summary 标签的作用
details 标签用于定义用户可查看或隐藏的详细信息。默认状态下内容是收起的。
summary 标签作为 details 的标题或摘要,点击它可展开或收起其中的内容。
点击展开说明
这里是被隐藏的详细内容,比如一段说明文字、配置信息或帮助文档。
默认展开设置
如果希望页面加载时内容默认是展开状态,可以在 details 标签中添加 open 属性。
示例代码:
样式自定义(可选)
虽然原生功能已可用,但你可以通过CSS调整外观,让其更符合页面风格。
- 去除 summary 默认的小箭头:使用
list-style: none - 改变字体、边距、背景色等提升可读性
- 添加过渡动画增强用户体验
summary {
cursor: pointer;
padding: 8px;
background-color: #f0f0f0;
list-style: none;
}
details[open] summary {
border-bottom: 1px solid #ccc;
}
基本上就这些。原生支持、语义清晰、兼容主流浏览器,适合做帮助提示、FAQ、配置面板这类需要折叠的功能。











