Liquid glass fixes

This commit is contained in:
iamdoubz committed 2026-07-30 10:40:08 -05:00
1 parent 006b4b4aa3
commit a6bf7136b7
2 files changed
+11 -7

No files matched your search

+10 -6
View File
@@ -87,6 +87,7 @@ a:hover, a:focus { color: var(--text); text-decoration: underline; }
.art-ring[hidden] { display: none; }
.playpause {
position: relative;
width: 64px; height: 64px;
display: flex; align-items: center; justify-content: center;
border: none; border-radius: 50%;
@@ -258,6 +259,7 @@ audio[controls] { width: 100%; outline: 0; }
/* ----------------------------------------------------------------- menu */
.menu-wrap { position: fixed; top: 16px; right: 16px; z-index: 30; }
.menu-toggle {
position: relative;
width: 40px; height: 40px;
display: flex; align-items: center; justify-content: center;
background: var(--accent); color: var(--accent-text);
@@ -308,19 +310,21 @@ audio[controls] { width: 100%; outline: 0; }
https://github.com/nikdelvin/liquid-glass (MIT) — see the liquid-glass
block in player.js for the SVG feDisplacementMap filter it builds.
.glass-fx gets its real backdrop-filter set there; the rule below is
just the pre-JS / unsupported-browser fallback (plain blur). Placed
after .playpause/.icon-btn/.lyrics-toggle/.menu-toggle on purpose so it
wins the cascade at equal specificity and overrides their THEME_ACCENT
fill without needing !important. */
just the pre-JS / unsupported-browser fallback (plain blur). The
[aria-pressed="true"] variant is needed to beat .lyrics-toggle's own
higher-specificity active-state accent fill (class+attribute selector).
position/z-index are NOT set here — .lyrics-toggle already needs its own
position: absolute for corner placement, so each button supplies its own
(see .playpause / .menu-toggle), keeping this class layout-neutral. */
.glass-btn,
.glass-btn:hover,
.glass-btn:focus,
.glass-btn:active {
.glass-btn:active,
.glass-btn[aria-pressed="true"] {
background: transparent;
border: 1px solid rgba(255, 255, 255, 0.35);
}
.glass-btn {
position: relative;
isolation: isolate; /* keeps .glass-fx's negative z-index scoped to this button */
overflow: hidden;
transition: transform .25s ease;
+1 -1
View File
@@ -80,7 +80,7 @@ $glassFx = $liquidGlass ? '<span class="glass-fx" aria-hidden="true"></spa
<span class="live-badge" id="live-badge" hidden><span class="live-dot"></span><span class="live-text">LIVE</span></span>
</div>
<div class="vol-row">
<button id="mute" class="icon-btn<?= $glassBtn ?>" type="button" aria-label="Mute"><span class="btn-icon"></span><?= $glassFx ?></button>
<button id="mute" class="icon-btn" type="button" aria-label="Mute"><span class="btn-icon"></span></button>
<input type="range" id="volume" class="range volume" min="0" max="100" value="100" aria-label="Volume"/>
</div>
<?php endif; ?>