fix(homepage): force-visible post stream against Bootstrap fade

Remove Bootstrap fade/in classes from the active home pane, render cards
as <article class="posts-item">, and lock list opacity/display with
!important so published posts cannot stay invisible.
This commit is contained in:
kate522 committed 2026-07-12 18:31:37 +08:00
1 parent 368b321447
commit ef0461b71e
4 files changed
+59 -9

No files matched your search

+49 -3
View File
@@ -72,9 +72,23 @@
.aksrt-homepage__panel.fade.in, .aksrt-homepage__panel.fade.in,
.aksrt-homepage__panel.tab-pane.active, .aksrt-homepage__panel.tab-pane.active,
#index-tab-main.aksrt-homepage__panel, #index-tab-main.aksrt-homepage__panel,
#index-tab-main.posts-row { #index-tab-main.posts-row,
opacity: 1; .home-tab-content .tab-pane.is-active,
display: block; .home-tab-content .tab-pane.show,
.home-tab-content .tab-pane.active,
.aksrt-homepage__panel.is-active,
.aksrt-homepage__panel.show {
opacity: 1 !important;
display: block !important;
visibility: visible !important;
}
/* Beat Bootstrap .fade:not(.show){opacity:0} if fade class remains */
.home-tab-content .tab-pane.fade.is-active,
.home-tab-content .tab-pane.fade.show,
.home-tab-content .tab-pane.fade.active,
#index-tab-main.fade {
opacity: 1 !important;
} }
.aksrt-homepage__panel-contract { .aksrt-homepage__panel-contract {
@@ -484,3 +498,35 @@ html.dark #index-tab-main > .posts-item.list:hover {
.aksrt-homepage__posts[data-view="card"] > .posts-item .meta-right { .aksrt-homepage__posts[data-view="card"] > .posts-item .meta-right {
display: none; display: none;
} }
/* ================================================================
VISIBILITY LOCK — homepage post stream must always paint
================================================================ */
posts.posts-item,
article.posts-item,
#index-tab-main > .posts-item,
.home-tab-content .posts-item {
display: block !important;
opacity: 1 !important;
visibility: visible !important;
color: var(--color-ink, #333);
font-size: 1rem !important;
}
#index-tab-main > .posts-item.list,
.home-tab-content .posts-item.list {
display: flex !important;
width: 100%;
box-sizing: border-box;
}
/* Minimal flex utilities used by post cards (zibll-style helpers) */
.flex { display: flex !important; }
.flex.xx,
.xx { flex-direction: column; }
.flex1,
.flex-1 { flex: 1 1 auto; min-width: 0; }
.jsb { justify-content: space-between; }
.ac { align-items: center; }
.jb { justify-content: space-between; }
+5 -1
View File
@@ -25,9 +25,13 @@
/* ============================================================ /* ============================================================
* 通用 posts-item 基础 — 对齐 zibll line 7585 * 通用 posts-item 基础 — 对齐 zibll line 7585
* ============================================================ */ * ============================================================ */
posts.posts-item,
article.posts-item,
.posts-item { .posts-item {
/* Custom element <posts> is inline by default — force block layout. */ /* Custom element <posts> is inline by default — force block layout. */
display: block; display: block !important;
opacity: 1 !important;
visibility: visible !important;
padding: 20px; padding: 20px;
margin: 15px 0; margin: 15px 0;
background: var(--main-bg-color, var(--surface-1, #fff)); background: var(--main-bg-color, var(--surface-1, #fff));
+1 -1
View File
@@ -935,7 +935,7 @@ if (!function_exists('aksrt_homepage_render_layout')) {
<?php aksrt_homepage_render_sortbar(); ?> <?php aksrt_homepage_render_sortbar(); ?>
<div class="aksrt-homepage__panels tab-content"> <div class="aksrt-homepage__panels tab-content">
<div class="aksrt-homepage__panel posts-row ajaxpager tab-pane fade in active is-active" role="tabpanel" data-home-tab-panel="latest" id="index-tab-main"> <div class="aksrt-homepage__panel posts-row ajaxpager tab-pane is-active show" role="tabpanel" data-home-tab-panel="latest" id="index-tab-main">
<div <div
class="aksrt-homepage__panel-contract" class="aksrt-homepage__panel-contract"
data-query-context="<?php echo esc_attr($latest_contract['query_context']); ?>" data-query-context="<?php echo esc_attr($latest_contract['query_context']); ?>"
+4 -4
View File
@@ -737,7 +737,7 @@ if (!function_exists('aksrt_renderer_list')) {
? '<p class="item-excerpt">' . $excerpt_markup . '</p>' ? '<p class="item-excerpt">' . $excerpt_markup . '</p>'
: ''; : '';
$html = '<posts ' . aksrt_renderer_article_attrs($classes, $data) . '>'; $html = '<article ' . aksrt_renderer_article_attrs($classes, $data) . '>';
if ($cfg['style'] === 'style2') { if ($cfg['style'] === 'style2') {
$html .= $title_html; $html .= $title_html;
@@ -757,7 +757,7 @@ if (!function_exists('aksrt_renderer_list')) {
$html .= '</div>'; $html .= '</div>';
} }
$html .= '</posts>'; $html .= '</article>';
return $html; return $html;
} }
} }
@@ -796,7 +796,7 @@ if (!function_exists('aksrt_renderer_card')) {
$title_markup = aksrt_renderer_title_markup($data, $cfg); $title_markup = aksrt_renderer_title_markup($data, $cfg);
$excerpt_markup = aksrt_renderer_excerpt_markup($data, $cfg); $excerpt_markup = aksrt_renderer_excerpt_markup($data, $cfg);
$html = '<posts ' . aksrt_renderer_article_attrs($classes, $data) . '>'; $html = '<article ' . aksrt_renderer_article_attrs($classes, $data) . '>';
$html .= $thumb; $html .= $thumb;
$html .= '<div class="item-body">'; $html .= '<div class="item-body">';
$target_attr = !empty($cfg['target_blank']) ? ' target="_blank"' : ''; $target_attr = !empty($cfg['target_blank']) ? ' target="_blank"' : '';
@@ -814,7 +814,7 @@ if (!function_exists('aksrt_renderer_card')) {
} }
$html .= $meta; $html .= $meta;
$html .= '</div></posts>'; $html .= '</div></article>';
return $html; return $html;
} }