Boîte de dialogue (superposition) stylisée avec les classes Bulma
Le widget "Superposition / boîte de dialogue" gagne les classes Bulma "modal is-active" (sur le voile plein écran) et "box" (sur la boîte centrée), en PLUS du style inline existant — jamais à sa place : tout le positionnement/masquage critique (position:fixed, z-index, display) reste en inline, qui gagne toujours sur une règle de classe. Si Bulma (chargé depuis un CDN, voir play.html) ne se charge pas (hors-ligne), la boîte de dialogue continue de fonctionner exactement pareil — ces classes n'ajoutent qu'un habillage visuel (ombre, base de police/espacement Bulma) qui se dégrade sans rien casser. Pas de ".modal-background" séparé (convention Bulma habituelle) : le voile semi-transparent est déjà posé en inline sur la même balise (background:rgba(...)), un second calque tout aussi transparent par-dessus n'aurait ajouté qu'un assombrissement redondant. 137 tests toujours au vert (changement purement visuel, aucune assertion cassée) ; jeu de démo régénéré et vérifié (classes bien présentes dans le rendu). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
7c0f1ed427
commit
d87d6addce
@@ -22,7 +22,18 @@ def _render_overlay(el, meta, slug, children_map=None, ctx=None, parent_flex_dir
|
||||
fusionne le style de positionnement fixe ci-dessous AVEC le style normal
|
||||
de l'élément (_style_string) : si l'élément est réglé "Masqué" dans ses
|
||||
propriétés, ou si une action "Modifier un élément" le cache plus tard,
|
||||
ce masquage continue de fonctionner normalement."""
|
||||
ce masquage continue de fonctionner normalement.
|
||||
|
||||
Classes Bulma ("modal is-active" / "box") posées en PLUS du style
|
||||
inline existant, jamais à sa place : tout le positionnement/masquage
|
||||
critique (position:fixed, z-index, display) reste en inline, qui gagne
|
||||
toujours sur une règle de classe — si Bulma (chargé depuis un CDN, voir
|
||||
play.html) ne se charge pas (hors-ligne), la boîte de dialogue continue
|
||||
de fonctionner exactement pareil, ces classes n'ajoutant qu'un habillage
|
||||
visuel (ombre, base de police) qui se dégrade sans casser quoi que ce
|
||||
soit. Pas de ".modal-background" séparé : le voile semi-transparent est
|
||||
déjà posé en inline sur cette même balise (background:rgba(...)) — un
|
||||
second calque tout aussi transparent par-dessus n'ajouterait rien."""
|
||||
attrs_raw = el.get("attributes") or {}
|
||||
box_color = attrs_raw.get("_couleur_boite") or "#1f2430"
|
||||
radius = attrs_raw.get("_arrondi") or "12"
|
||||
@@ -53,7 +64,7 @@ def _render_overlay(el, meta, slug, children_map=None, ctx=None, parent_flex_dir
|
||||
)
|
||||
child_html = _render_children(el, slug, children_map, ctx)
|
||||
return (
|
||||
f'<div {" ".join(attr_parts)}>'
|
||||
f'<div class="forgeOverlayBox" style="{html_lib.escape(box_style)}">{child_html}</div>'
|
||||
f'<div class="modal is-active" {" ".join(attr_parts)}>'
|
||||
f'<div class="box forgeOverlayBox" style="{html_lib.escape(box_style)}">{child_html}</div>'
|
||||
f"</div>"
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user