使用details和summary标签可创建原生可折叠内容,提升信息组织与用户体验。

在HTML中设置细节内容,我们主要依赖
details
summary
summary
details
details
要实现可折叠的细节内容,你只需要将需要隐藏的内容包裹在
<details>
<summary>
<details>
一个基本的结构会是这样:
<details>
<summary>点击这里查看更多详情</summary>
<p>这是被隐藏的详细内容。当用户点击上面的摘要时,这段内容就会显示出来。</p>
<ul>
<li>项目一</li>
<li>项目二</li>
</ul>
<p>你可以放任何HTML元素在这里面,比如图片、表格甚至其他嵌套的details。</p>
</details>
<details open>
<summary>这个详情默认是展开的</summary>
<p>通过添加`open`属性,你可以让details元素在页面加载时就处于展开状态。</p>
</details>默认情况下,
details
summary
summary
details
<details>
open
立即学习“前端免费学习笔记(深入)”;
details
summary
从我个人的经验来看,
details
summary
details
这种按需加载信息的模式,不仅减少了用户的认知负担,也让页面加载初期显得更轻巧。用户可以主动选择是否深入了解某个细节,这种控制感本身就是一种很好的体验。而且,由于它是原生HTML特性,无需JavaScript就能实现基础功能,这意味着更好的可访问性和更快的渲染速度。对于那些对性能和无障碍设计有严格要求的项目,这几乎是首选。它提供了一种语义化的方式来表示“这是可选的详细信息”,而不是简单地通过CSS
display: none
details
summary
虽然
details
summary
最常见的需求之一就是自定义那个默认的展开/折叠箭头。你可以通过设置
summary
list-style: none;
::before
::after
/* 移除默认箭头 */
summary {
list-style: none; /* 针对WebKit/Blink浏览器 */
/* Firefox的默认箭头可能需要-moz-list-bullet或类似的属性,但list-style通常足够 */
cursor: pointer; /* 提示用户这是一个可点击的元素 */
padding: 10px;
background-color: #f0f0f0;
border-bottom: 1px solid #ddd;
font-weight: bold;
display: block; /* 确保它独占一行 */
}
/* 针对Firefox,可能需要额外处理伪元素 */
summary::-webkit-details-marker {
display: none; /* 针对Chrome/Safari等 */
}
summary::marker { /* 针对Firefox */
display: none;
}
/* 自定义展开/折叠图标 */
summary::after {
content: '▶'; /* 默认是向右的箭头 */
float: right;
transition: transform 0.2s ease-in-out;
}
details[open] summary::after {
content: '▼'; /* 展开时向下 */
transform: rotate(90deg); /* 也可以是旋转90度 */
}
/* 样式化details内部内容 */
details p {
padding: 15px;
background-color: #f9f9f9;
border: 1px solid #eee;
border-top: none;
}你可以自由地为
summary
details
open
details[open]
summary
details
summary
在实际开发中,
details
summary
summary
details
details
details
details
至于注意事项,有几点是值得留意的:
details
summary
details
details
details
details
toggle
details
summary
details
details
以上就是HTML如何设置细节内容?details和summary标签的作用是什么?的详细内容,更多请关注php中文网其它相关文章!
HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号