feat: tableur mobile — barres repliées par défaut, bascule unique #189
CI / lint (push) Successful in 2m42s
CI / security (push) Successful in 1m38s
CI / test (push) Successful in 4m19s
CI / build (push) Successful in 1m27s
CI / e2e (push) Successful in 17m12s

Sous 768 px, la barre de menus, le ruban et le groupe Recherche sont
repliés par défaut : la barre de formule (fx), les onglets et Enregistrer
restent visibles et la grille récupère la hauteur d'écran. Un bouton
unique (#xlsx-tools-toggle) dans la barre des feuilles déplie/replie
l'ensemble (aria-expanded, état actif) ; desktop inchangé.

Ergonomie tactile : cibles ≥ 44 px, onglets en défilement horizontal,
champs de la barre de formule en 16 px (anti-zoom iOS), barre de formule
en 2 lignes quand les outils sont ouverts.

Tests : JSDOM xlsx-viewer.test.mjs (+2, 165/165), E2E mobile (repli par
défaut, dépliage, no-overflow ruban, cibles 44 px) ; openXlsx() déplie
automatiquement ≤ 768 px pour les tests desktop.
This commit is contained in:
2026-10-08 15:45:39 -04:00
parent e01e837a2a
commit 36b4962efb
17 changed files with 341 additions and 17 deletions
+8
View File
@@ -155,6 +155,14 @@ regroupe figeage, tri, filtre, dimensions, lien, commentaire ; les menus
haut** de la page et l'éditeur occupe toute la largeur du contenu, pour que
les commandes restent atteignables pendant le défilement d'un grand tableau.
**Mise en page mobile** — sur un écran étroit (≤ 768 px), la barre de menus et
le ruban de formatage sont **repliés par défaut** afin que la grille occupe
toute la hauteur disponible : seuls les onglets de feuilles, **Enregistrer** et
la **barre de formule (fx)** restent affichés. Le bouton **☰** (à gauche des
onglets) déplie/replie l'ensemble ; les commandes tactiles font au moins
44 px, les onglets défilent horizontalement et les champs de saisie restent en
16 px pour éviter le zoom automatique d'iOS.
Les largeurs de colonnes et hauteurs de lignes s'ajustent en **glissant le
bord des en-têtes** (souris et tactile) : en plaçant le pointeur sur le bord
d'un en-tête de colonne (`A`, `B`, `C`…) ou de ligne (`1`, `2`, `3`…), le