Hopefully fix cursor?

This commit is contained in:
Clove 2026-06-22 04:39:22 +01:00
parent 029fa8af04
commit 5a830f0a6f
3 changed files with 20 additions and 13 deletions

View File

@ -29,6 +29,13 @@
============================================================ */ ============================================================ */
* { * {
box-sizing: border-box; box-sizing: border-box;
}
/* Default cursor lives on <html> so it INHERITS down the tree.
Setting it on `*` paints it directly onto every element, which beats
inheritance and makes children of links/buttons (spans, icons, imgs)
fall back to the default cursor instead of the pointer. */
html {
cursor: url('/assets/cursor/default_0.png') 3 3, auto; cursor: url('/assets/cursor/default_0.png') 3 3, auto;
} }
@ -76,7 +83,8 @@ body {
/* clickable */ /* clickable */
a, button, [role="button"], label[for], select, summary { a, button, [role="button"], [role="link"], [data-href], label[for], select, summary,
.pc-name--link, #oneko {
cursor: url('../assets/cursor/pointer_0.png'), pointer; cursor: url('../assets/cursor/pointer_0.png'), pointer;
} }
@ -433,7 +441,7 @@ body::after {
border-radius: 999px; border-radius: 999px;
background: var(--surface-0); background: var(--surface-0);
border: 1px solid var(--surface-1); border: 1px solid var(--surface-1);
cursor: pointer; cursor: url('../assets/cursor/pointer_0.png'), pointer;
transition: border-color 0.15s ease, transform 0.15s ease; transition: border-color 0.15s ease, transform 0.15s ease;
} }
@ -650,7 +658,7 @@ body:has(.dev-info) .hub {
color: var(--subtext-0); color: var(--subtext-0);
font-size: 1.35rem; font-size: 1.35rem;
line-height: 1; line-height: 1;
cursor: pointer; cursor: url('../assets/cursor/pointer_0.png'), pointer;
padding: 0 0.25rem; padding: 0 0.25rem;
} }
@ -694,7 +702,7 @@ body:has(.dev-info) .hub {
font-family: inherit; font-family: inherit;
font-size: 0.74rem; font-size: 0.74rem;
text-align: center; text-align: center;
cursor: pointer; cursor: url('../assets/cursor/pointer_0.png'), pointer;
transition: transform 0.15s ease, border-color 0.15s ease; transition: transform 0.15s ease, border-color 0.15s ease;
} }
@ -709,7 +717,7 @@ body:has(.dev-info) .hub {
} }
.cat-option.locked { .cat-option.locked {
cursor: default; cursor: url('../assets/cursor/default_0.png'), default;
opacity: 0.75; opacity: 0.75;
} }
@ -1102,7 +1110,7 @@ body:has(.friend-grid) {
height: 14px; height: 14px;
opacity: 0.18; opacity: 0.18;
align-self: center; align-self: center;
cursor: default; cursor: url('../assets/cursor/default_0.png'), default;
pointer-events: auto; pointer-events: auto;
/* parent .badges sets none — re-enable here */ /* parent .badges sets none — re-enable here */
image-rendering: auto; image-rendering: auto;
@ -1118,7 +1126,7 @@ body:has(.friend-grid) {
#pokeball-secret.found { #pokeball-secret.found {
opacity: 1; opacity: 1;
cursor: default; cursor: url('../assets/cursor/default_0.png'), default;
filter: drop-shadow(0 0 4px var(--red)); filter: drop-shadow(0 0 4px var(--red));
} }
@ -1392,7 +1400,7 @@ summary.section-title {
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
gap: 0.5rem; gap: 0.5rem;
cursor: pointer; cursor: url('../assets/cursor/pointer_0.png'), pointer;
list-style: none; list-style: none;
user-select: none; user-select: none;
margin-bottom: 0; margin-bottom: 0;
@ -2448,7 +2456,7 @@ body:has(.music-wrap) {
font-family: inherit; font-family: inherit;
font-size: 0.72rem; font-size: 0.72rem;
letter-spacing: 0.04em; letter-spacing: 0.04em;
cursor: pointer; cursor: url('../assets/cursor/pointer_0.png'), pointer;
border-radius: 999px; border-radius: 999px;
padding: 0.28rem 0.8rem 0.28rem 0.7rem; padding: 0.28rem 0.8rem 0.28rem 0.7rem;
background: var(--surface-0); background: var(--surface-0);
@ -3351,7 +3359,7 @@ a.pc-row:hover,
align-self: flex-start; align-self: flex-start;
background: none; background: none;
border: none; border: none;
cursor: pointer; cursor: url('../assets/cursor/pointer_0.png'), pointer;
font-size: 0.95rem; font-size: 0.95rem;
line-height: 1; line-height: 1;
color: var(--subtext-0); color: var(--subtext-0);

View File

@ -38,7 +38,7 @@ console.log(`
// mmmmmmmmmmmmmmmmm girls kissing,,,,, // mmmmmmmmmmmmmmmmm girls kissing,,,,,
document.querySelectorAll("[data-href]").forEach((el) => { document.querySelectorAll("[data-href]").forEach((el) => {
el.style.cursor = "pointer"; // cursor handled in css ([data-href] + [role="link"]) so the custom PNG isn't overridden
if (!el.hasAttribute("role")) el.setAttribute("role", "link"); if (!el.hasAttribute("role")) el.setAttribute("role", "link");
if (!el.hasAttribute("tabindex")) el.setAttribute("tabindex", "0"); if (!el.hasAttribute("tabindex")) el.setAttribute("tabindex", "0");
@ -455,7 +455,7 @@ const spriteFor = (c) => c.sprite || BASE_SPRITE;
if (!oneko) return; if (!oneko) return;
oneko.style.pointerEvents = "auto"; oneko.style.pointerEvents = "auto";
oneko.style.cursor = "pointer"; // cursor handled in css (#oneko) so the custom pointer PNG isn't overridden
const ls = window.localStorage; const ls = window.localStorage;
let clicks = parseInt(ls.getItem("onekoClicks") || "0", 10); let clicks = parseInt(ls.getItem("onekoClicks") || "0", 10);

View File

@ -104,7 +104,6 @@
// Optional website link on the name (friends can have a personal site). // Optional website link on the name (friends can have a personal site).
if (opts.link) { if (opts.link) {
nameEl.classList.add("pc-name--link"); nameEl.classList.add("pc-name--link");
nameEl.style.cursor = "pointer";
nameEl.setAttribute("role", "link"); nameEl.setAttribute("role", "link");
nameEl.setAttribute("tabindex", "0"); nameEl.setAttribute("tabindex", "0");
const goLink = function () { window.open(opts.link, "_blank", "noopener"); }; const goLink = function () { window.open(opts.link, "_blank", "noopener"); };