答案:通过HTML的details与summary标签或checkbox配合CSS可实现文章摘要折叠。使用details标签语义清晰,原生支持展开收起;也可用隐藏checkbox结合:checked和max-height过渡实现动画效果,兼顾可访问性与样式控制,推荐根据场景选择方案。
实现文章摘要的折叠效果,可以通过 CSS 结合 HTML 的结构来完成,无需 JavaScript 也能做到简洁实用。核心思路是利用 :checked 伪类和 或
示例代码:
点击展开文章摘要
这里是文章的详细摘要内容,可以包含多段文字、链接等。默认状态下被折叠,用户点击后展开。
CSS 可以美化样式:
.article-summary {
border: 1px solid #ddd;
border-radius: 6px;
padding: 10px;
margin-bottom: 20px;
}
.article-summary summary {
cursor: pointer;
font-weight: bold;
color: #005a9c;
}
.article-summary p {
margin-top: 10px;
line-height: 1.5;
}
HTML 结构:
这里是被折叠的文章摘要内容。点击标签即可展开或收起。
CSS 控制显隐:
.toggle-summary .content {
max-height
: 0;
overflow: hidden;
transition: max-height 0.3s ease;
}
.toggle-summary input:checked ~ .content {
max-height: 200px; / 根据内容调整 /
}
.toggle-summary .toggle-label {
display: block;
cursor: pointer;
color: #005a9c;
font-size: 14px;
user-select: none;
}
.toggle-summary input:checked ~ .toggle-label::before {
content: "▲ ";
}
.toggle-summary:not(:has(input:checked)) .toggle-label::before {
content: "▼ ";
}
基本上就这些。用