Public Access
hide [hidden] site-wide: one [hidden] { display:none !important } in style.css
A filtered-out directory card stayed visible. The card is targeted by an
id-based ready-state selector (`.js #directory[data-dir-state="ready"]
#dirGrid > .dev-card`, two ids), which outranked the old per-element patch
`.dev-card[hidden] { display:none }` — so `card.hidden = true` set the
attribute and every card stayed on screen while the count line correctly
read "Showing 1 of 4".
Fix: one rule, `[hidden] { display:none !important }`, early in /style.css.
A class- or id-based `display` can no longer beat the attribute, so this
cannot recur with the next class that sets `display`. The per-element
`[hidden]` patches are removed so a single mechanism governs:
- odoo-community-developers: cards + filter row + pager + modal
(load-bearing — each sets `display`); focus-sliders/noscript (redundant)
- index/de/es `.hero-notice[hidden]`, odoo-black-friday `.ads-consent[hidden]`
(redundant — those elements set no `display`)
Re-fingerprint local assets (style.css changed): /style.css?v 3332fbba93 ->
061517baef across 51 pages.
Measured in a real browser (local harness, stubbed webhook; no record created,
no probe write) — computed display + geometry, never the `hidden` property:
- filtered to one card: the other three report display:none and height 0;
the visible set (1) equals the count line ("Showing 1 of 4") — 1 == 1
- HEAD (pre-fix) reproduces the defect: 3 cards hidden=true yet display:flex,
height 599.38 each; 4 visible vs the count's 1
- pager: display:none height 0 with one page; display:flex height 66.83 with
12 cards (Page 1 of 2); page 2 hides page-1 cards (display:none)
- modals closed: display:none height 0; load state: cards 0, pager/empty
display:none, filter row visibility:hidden by design
- 375 px: same result, no horizontal overflow; avatar ask-row top identical
across a row (2053.97 / links 2086.91)
This commit is contained in:
1 parent
634f4fcdf1
commit
9d14652a57
52 files changed
+90
-76
No files matched your search
@@ -6,6 +6,19 @@
|
||||
========================================================= */
|
||||
|
||||
* { box-sizing: border-box; }
|
||||
|
||||
/* `hidden` must really hide — everywhere, not one element at a time. The UA's own
|
||||
`[hidden] { display: none }` is the weakest possible declaration: any page rule that
|
||||
sets `display` on the same element outranks it. A class rule (`.dir-pager`,
|
||||
`.dev-card`, `.hero-notice`) already beats it, and an id-based state selector such as
|
||||
`.js #directory[data-dir-state="ready"] #dirGrid > .dev-card` (two ids) beat the old
|
||||
per-element patch — so setting `el.hidden = true` set the attribute and the element
|
||||
stayed on screen (measured on /odoo-community-developers/: four cards visible, the
|
||||
count line reading "Showing 1 of 4"). This one rule, with `!important`, beats every
|
||||
class- or id-based `display`, so the attribute hides its element no matter which
|
||||
later rule sets `display`. It is the single mechanism for `[hidden]` site-wide; the
|
||||
per-element `[hidden]` rules are gone so nothing disagrees. */
|
||||
[hidden] { display: none !important; }
|
||||
body {
|
||||
margin: 0;
|
||||
font-family: Inter, 'Segoe UI', sans-serif;
|
||||
|
||||
Reference in new issue
Block a user