模板:收缩大标题/styles.css:修订间差异
来自ANACHRONISM
更多操作
< 模板:收缩大标题
无编辑摘要 |
无编辑摘要 |
||
| 第1行: | 第1行: | ||
/* ============================================ | /* ============================================ | ||
收缩大标题 | 收缩大标题 | ||
checkbox hack 实现零 JS 折叠 | |||
============================================ */ | ============================================ */ | ||
| 第13行: | 第12行: | ||
background: #fff; | background: #fff; | ||
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); | box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); | ||
} | |||
/* ---- 隐藏的 checkbox ---- */ | |||
.fold__toggle { | |||
display: none; | |||
} | } | ||
| 第23行: | 第27行: | ||
color: #fff; | color: #fff; | ||
cursor: pointer; | cursor: pointer; | ||
transition: background 0.3s ease; | transition: background 0.3s ease; | ||
} | } | ||
.fold__main:hover { | .fold__main:hover { | ||
| 第107行: | 第107行: | ||
transform: translate(-50%, -50%); | transform: translate(-50%, -50%); | ||
} | } | ||
. | .fold__toggle:checked ~ .fold__main .fold__button::after { | ||
transform: translate(-50%, -50%) rotate(90deg); | transform: translate(-50%, -50%) rotate(90deg); | ||
opacity: 0; | opacity: 0; | ||
| 第118行: | 第118行: | ||
transition: grid-template-rows 0.4s ease; | transition: grid-template-rows 0.4s ease; | ||
} | } | ||
. | .fold__toggle:checked ~ .fold__content { | ||
grid-template-rows: 1fr; | grid-template-rows: 1fr; | ||
} | } | ||
| 第129行: | 第129行: | ||
transition: padding 0.4s ease; | transition: padding 0.4s ease; | ||
} | } | ||
. | .fold__toggle:checked ~ .fold__content .fold__content-inner { | ||
padding: 1em 1.5em; | padding: 1em 1.5em; | ||
} | } | ||
2026年10月6日 (二) 13:20的版本
/* ============================================
收缩大标题
checkbox hack 实现零 JS 折叠
============================================ */
.fold {
display: block;
position: relative;
margin: 1em 0;
border-radius: 6px;
overflow: hidden;
background: #fff;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
/* ---- 隐藏的 checkbox ---- */
.fold__toggle {
display: none;
}
/* ---- 头部 ---- */
.fold__main {
display: block;
position: relative;
padding: 1.2em 3.5em 1.2em 1.5em;
background: #57000d;
color: #fff;
cursor: pointer;
transition: background 0.3s ease;
}
.fold__main:hover {
background: #6b0011;
}
/* ---- 背景水印 ---- */
.fold__watermark {
display: block;
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
font-size: 5em;
font-weight: 900;
line-height: 1;
opacity: 0.15;
pointer-events: none;
z-index: 0;
}
/* ---- 标题组 ---- */
.fold__titles {
display: flex;
flex-direction: column;
justify-content: center;
align-items: flex-start;
line-height: 1.2;
position: relative;
z-index: 1;
}
.fold__title-cn {
display: block;
font-size: 2.5em;
font-weight: 900;
letter-spacing: 0.02em;
}
.fold__title-en {
display: block;
font-size: 1em;
font-weight: bold;
letter-spacing: 0.35em;
}
.fold__title-deco {
display: block;
font-size: 0.8em;
font-weight: bold;
letter-spacing: 0.25em;
}
/* ---- 折叠按钮 ---- */
.fold__button {
display: block;
position: absolute;
right: 1.2em;
top: 50%;
transform: translateY(-50%);
width: 1.5em;
height: 1.5em;
z-index: 2;
}
.fold__button::before,
.fold__button::after {
content: "";
position: absolute;
left: 50%;
top: 50%;
background: #fff;
transition: transform 0.3s ease, opacity 0.3s ease;
}
.fold__button::before {
width: 1em;
height: 2px;
transform: translate(-50%, -50%);
}
.fold__button::after {
width: 2px;
height: 1em;
transform: translate(-50%, -50%);
}
.fold__toggle:checked ~ .fold__main .fold__button::after {
transform: translate(-50%, -50%) rotate(90deg);
opacity: 0;
}
/* ---- 内容区 ---- */
.fold__content {
display: grid;
grid-template-rows: 0fr;
transition: grid-template-rows 0.4s ease;
}
.fold__toggle:checked ~ .fold__content {
grid-template-rows: 1fr;
}
.fold__content-inner {
display: block;
overflow: hidden;
padding: 0 1.5em;
color: #333;
line-height: 1.6;
transition: padding 0.4s ease;
}
.fold__toggle:checked ~ .fold__content .fold__content-inner {
padding: 1em 1.5em;
}