Fix: force nav bar gradient repaint on theme color change

Some browsers cache CSS gradient paint and don't re-render when
custom properties change. Force reflow by toggling background.
This commit is contained in:
you
2026-03-23 02:19:57 +00:00
parent 502244fc38
commit c4c06e7fb8
2 changed files with 8 additions and 1 deletions

View File

@@ -223,6 +223,13 @@
for (var key in THEME_CSS_MAP) {
if (t[key]) document.documentElement.style.setProperty(THEME_CSS_MAP[key], t[key]);
}
// Force nav bar to re-render gradient (some browsers cache gradient paint)
var nav = document.querySelector('.top-nav');
if (nav) {
nav.style.background = 'none';
void nav.offsetHeight; // force reflow
nav.style.background = '';
}
}
function resetPreview() {

View File

@@ -101,6 +101,6 @@
<script src="observer-detail.js?v=1774219440" onerror="console.error('Failed to load:', this.src)"></script>
<script src="node-analytics.js?v=1774126708" onerror="console.error('Failed to load:', this.src)"></script>
<script src="perf.js?v=1773985649" onerror="console.error('Failed to load:', this.src)"></script>
<script src="customize.js?v=1774231701" onerror="console.error('Failed to load:', this.src)"></script>
<script src="customize.js?v=1774232397" onerror="console.error('Failed to load:', this.src)"></script>
</body>
</html>