feat(widgets): search hot keywords + multi-item scroll notice

Deepen zibll search/notice widgets: hot keywords from settings,
custom keywords, more-link, and multi-message marquee notice bar.
This commit is contained in:
2026-07-19 01:12:10 +08:00
parent ff919da342
commit 491fc6baf4
3 changed files with 334 additions and 98 deletions
+62
View File
@@ -305,3 +305,65 @@
.aksrt-bookmark-links__text { min-width: 0; display: flex; flex-direction: column; }
.aksrt-bookmark-links__name { font-size: 13px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.aksrt-bookmark-links__desc { font-size: 11px; color: var(--muted-2-color, #999); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
/* Search keywords */
.aksrt-search-widget__keywords { margin-top: 10px; }
.aksrt-search-widget__kw-title {
font-size: 12px;
color: var(--muted-2-color, #888);
margin-bottom: 6px;
}
.aksrt-search-widget__kw-list { display: flex; flex-wrap: wrap; gap: 6px; }
.aksrt-search-widget__kw {
display: inline-block;
padding: 3px 10px;
border-radius: 999px;
background: var(--surface-2, #f3f4f6);
color: inherit;
text-decoration: none;
font-size: 12px;
}
.aksrt-search-widget__more { margin-top: 8px; text-align: right; font-size: 12px; }
.aksrt-search-widget__more a { color: var(--color-primary, #3b82f6); text-decoration: none; }
/* Scroll notice */
.aksrt-scroll-notice {
display: flex;
align-items: center;
gap: 10px;
padding: 10px 14px;
border-radius: 10px;
background: #eff6ff;
color: #1d4ed8;
margin-bottom: 8px;
overflow: hidden;
}
.aksrt-scroll-notice.is-radius { border-radius: 999px; }
.aksrt-scroll-notice.color-c-green { background: #ecfdf5; color: #047857; }
.aksrt-scroll-notice.color-c-yellow { background: #fffbeb; color: #b45309; }
.aksrt-scroll-notice.color-c-red { background: #fef2f2; color: #b91c1c; }
.aksrt-scroll-notice.color-c-purple { background: #f5f3ff; color: #6d28d9; }
.aksrt-scroll-notice__icon { flex-shrink: 0; }
.aksrt-scroll-notice__viewport { position: relative; flex: 1; min-width: 0; height: 1.4em; }
.aksrt-scroll-notice__item {
position: absolute;
inset: 0;
opacity: 0;
transform: translateY(8px);
transition: opacity .35s ease, transform .35s ease;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
font-size: 13px;
line-height: 1.4;
}
.aksrt-scroll-notice__item.is-active {
opacity: 1;
transform: translateY(0);
}
.aksrt-scroll-notice__item a {
color: inherit;
text-decoration: none;
}
.aksrt-scroll-notice__item i { margin-right: 6px; opacity: .85; }