fix(ui): okno postępu nad mapą, nie pod nią #22
Reference in New Issue
Block a user
Delete Branch "fix/progress-modal-position"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Okno postępu przy pisaniu horoskopu renderowało się pod kontrolkami mapy —
przyciski zoomu i atrybucja OSM przebijały przez zaciemnione tło modala. Wyglądało,
jakby mapa była na wierzchu okna.
Przyczyna
Leaflet trzyma swoje kontrolki (
.leaflet-top/.leaflet-bottom— zoom,atrybucja) na
z-index:1000, a.leaflet-containernie tworzy własnegokontekstu stackowania (
position:relativebezz-index). Żaden przodek mapyteż go nie tworzy (
form,.geo,.geo-map,.wrap— same marginesy/ramki, beztransform/opacity/z-index). W efekcie te1000trafia wprost do korzenia,a okno postępu miało
z-index:50— czyli lądowało pod mapą.Kafelki mapy były akurat zasłonięte poprawnie (Leaflet nadaje
transform.leaflet-map-pane, co domyka je we własnym kontekście), ale kontrolki są jegorodzeństwem i uciekały na wierzch.
Poprawka
Jedna wartość:
z-indexokna 50 → 1200 (zapas nad 1000).Weryfikacja
Odtworzone w przeglądarce na prawdziwych arkuszach (
leaflet.css+styles.css),nie na zmyślonym CSS:
elementFromPointw punkcie kontrolek zoomu: przed = na wierzchuelement mapy („MAPA PRZYKRYWA MODAL"), po = na wierzchu overlay („MODAL NA
WIERZCHU");
+/−i© OSMprzed poprawką jasne na wierzchu okna,po — przygaszone pod modalem.
17 passed(prezentacja).Kolejność merge'a
Odbite od aktualnego mastera (który ma już okno postępu z #19). Nie rusza
niczego z PRE-16 — PRE-16 nie edytuje
styles.css, więc trójstronny mergezachowa tę zmianę bez konfliktu niezależnie od kolejności. Można (i warto, zgodnie
z prośbą) zmergeować przed PR-ami TLS/szyfrowania (#21 i deploy #4).