enhance
This commit is contained in:
1 parent
a81579d4fc
commit
de3fb1052c
2 files changed
+42
-2
No files matched your search
+4
-2
@@ -193,8 +193,10 @@ export function renderExamPage(root: HTMLElement, examId: number, nav: ExamNav):
|
|||||||
+ (w.value ? `<span class="word-sep"> — </span><span class="word-value">${escapeHtml(w.value)}</span>` : '')
|
+ (w.value ? `<span class="word-sep"> — </span><span class="word-value">${escapeHtml(w.value)}</span>` : '')
|
||||||
+ `</div></div>`;
|
+ `</div></div>`;
|
||||||
}).join('');
|
}).join('');
|
||||||
return `<h3 class="deck-sub">${title} (${list.length})</h3>`
|
return `<details class="exam-group" open>`
|
||||||
+ `<div class="words-list">${rows}</div>`;
|
+ `<summary class="deck-sub">${title} (${list.length})</summary>`
|
||||||
|
+ `<div class="words-list">${rows}</div>`
|
||||||
|
+ `</details>`;
|
||||||
};
|
};
|
||||||
|
|
||||||
bodyEl.innerHTML = `
|
bodyEl.innerHTML = `
|
||||||
|
|||||||
@@ -374,6 +374,12 @@ body.drawer-open {
|
|||||||
gap: 12px;
|
gap: 12px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Вертикальная стопка кнопок (страница колоды: Повторять / История / Экзамены):
|
||||||
|
внутренний gap не действует между соседними строками, поэтому отступ свой. */
|
||||||
|
.btn-row + .btn-row {
|
||||||
|
margin-top: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
/* cta_button: secondary.base с рамкой 1px (рамка в iced прозрачная) + BUTTON_RADIUS */
|
/* cta_button: secondary.base с рамкой 1px (рамка в iced прозрачная) + BUTTON_RADIUS */
|
||||||
.btn {
|
.btn {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
@@ -886,6 +892,38 @@ button.word-row-wrap:not(:disabled):hover {
|
|||||||
background: var(--danger);
|
background: var(--danger);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Сворачиваемые списки результата: <details>/<summary> — без JS, с клавиатурой.
|
||||||
|
Заголовок переиспользует deck-sub (разделитель снизу), маркер summary заменён
|
||||||
|
на шеврон справа, поворачивающийся при раскрытии. По умолчанию открыты. */
|
||||||
|
.exam-group > summary {
|
||||||
|
display: flex;
|
||||||
|
align-items: baseline;
|
||||||
|
justify-content: space-between;
|
||||||
|
gap: var(--space-half);
|
||||||
|
cursor: pointer;
|
||||||
|
font-weight: 700;
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.exam-group > summary::-webkit-details-marker {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.exam-group > summary::marker {
|
||||||
|
content: '';
|
||||||
|
}
|
||||||
|
|
||||||
|
.exam-group > summary::after {
|
||||||
|
content: '▸';
|
||||||
|
color: var(--muted);
|
||||||
|
font-weight: 400;
|
||||||
|
transition: transform 0.15s ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
.exam-group[open] > summary::after {
|
||||||
|
transform: rotate(90deg);
|
||||||
|
}
|
||||||
|
|
||||||
/* --- Повторение: карточка + 4 кнопки оценок ---
|
/* --- Повторение: карточка + 4 кнопки оценок ---
|
||||||
Десктоп: forward и backward на всю ширину, между ними rule::horizontal(2),
|
Десктоп: forward и backward на всю ширину, между ними rule::horizontal(2),
|
||||||
размеры текста draw_key = 36, draw_value/reading/context = 24,
|
размеры текста draw_key = 36, draw_value/reading/context = 24,
|
||||||
|
|||||||
Reference in new issue
Block a user