fix(textbooks): убрать hover-preview карточек §§ — постоянно перекрывал соседей
Сначала пробовали left:105% — лежало на правом соседе. Затем top:calc(100%+8px) — лежало на нижнем ряду. Третий вариант (intelligent positioning) был бы over-engineered. Проще — выпилить вообще: карточки и так показывают название и % прогресса (круговой), темы видны в самом параграфе после клика. Удалено: - <div class='psel-card-preview'> из innerHTML карточек - CSS правила .psel-card-preview, .psel-preview-* (оставлен display:none!important на случай если в скриптах ещё ссылается на класс)
This commit is contained in:
@@ -451,20 +451,8 @@ input,select,textarea{font-family:inherit}
|
||||
.game-over-record{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:linear-gradient(135deg,#fcd34d,#f59e0b);color:#451a03;border-radius:10px;font-weight:800;font-size:.95rem;margin:10px 0;animation:recordPulse 1s ease infinite}
|
||||
@keyframes recordPulse{0%,100%{box-shadow:0 0 0 0 rgba(245,158,11,.5)}50%{box-shadow:0 0 0 8px rgba(245,158,11,0)}}
|
||||
|
||||
/* Task 7: psel-card hover preview */
|
||||
.psel-card{overflow:visible}
|
||||
/* restore border-radius clip for the active stripe via pseudo-element only on non-preview */
|
||||
.psel-card-preview{display:none;position:absolute;left:50%;top:calc(100% + 8px);transform:translateX(-50%);width:220px;max-width:90vw;background:var(--card);border:1.5px solid var(--pri);border-radius:12px;padding:12px 14px;z-index:200;box-shadow:var(--sh2);pointer-events:none;animation:previewIn .18s ease}
|
||||
@keyframes previewIn{from{opacity:0;transform:translateX(-50%) translateY(-6px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}
|
||||
.psel-card:hover .psel-card-preview{display:block}
|
||||
/* стрелка-носик у превью, указывает на карточку */
|
||||
.psel-card-preview::before{content:'';position:absolute;top:-6px;left:50%;transform:translateX(-50%) rotate(45deg);width:10px;height:10px;background:var(--card);border-left:1.5px solid var(--pri);border-top:1.5px solid var(--pri)}
|
||||
.psel-preview-title{font-size:.72rem;font-weight:800;color:var(--pri2);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
|
||||
.psel-preview-topic{font-size:.78rem;color:var(--text);margin-bottom:2px;padding-left:8px;border-left:2px solid var(--sec-acc,var(--pri))}
|
||||
.psel-preview-bar{height:5px;background:rgba(233,30,99,.12);border-radius:3px;overflow:hidden;margin-top:8px}
|
||||
.psel-preview-fill{height:100%;background:var(--pri);border-radius:3px;transition:width .4s}
|
||||
.psel-preview-pct{font-size:.72rem;color:var(--muted);margin-top:2px}
|
||||
@media(max-width:768px){.psel-card-preview{display:none!important}}
|
||||
/* hover-preview карточек выключен — мешал перекрытием соседних рядов */
|
||||
.psel-card-preview{display:none!important}
|
||||
|
||||
/* Task 8: section fade transitions */
|
||||
.sec.fade-out{animation:secFadeOut .18s ease forwards}
|
||||
@@ -1051,13 +1039,7 @@ function buildParaSelector(){
|
||||
<path class="psel-prog-bg" d="M18 2.5 a 15.5 15.5 0 1 1 0 31 a 15.5 15.5 0 1 1 0 -31"/>
|
||||
<path class="psel-prog-fg" d="M18 2.5 a 15.5 15.5 0 1 1 0 31 a 15.5 15.5 0 1 1 0 -31" stroke-dasharray="${dashArr}, ${circleCircumference}"/>
|
||||
<text x="18" y="21" text-anchor="middle">${progPct}%</text>
|
||||
</svg>
|
||||
<div class="psel-card-preview">
|
||||
<div class="psel-preview-title">${p.name}</div>
|
||||
${topicsHtml}
|
||||
<div class="psel-preview-bar"><div class="psel-preview-fill" style="width:${progPct}%"></div></div>
|
||||
<div class="psel-preview-pct">${progPct}% пройдено</div>
|
||||
</div>`;
|
||||
</svg>`;
|
||||
card.addEventListener('click', ()=>goTo(p.id));
|
||||
g.appendChild(card);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user