De fait c'est une mauvaise idée que de fournir une option pour ne pas
afficher de label, qui est essentiel du point de vue accessibilité.
Les CSS permettent le cas échéant de les mettre hors-vue si besoin, tout
en les laissant lisibles par les lecteurs d'écran
En fait, on a un problème: si une saisie permet d'envoyer plusieurs fichiers, doit-on avoir un label global ou un label par input?
C'est le même problème que pour les labels sur boutons radios. Label global ou label local? Les boutons radios mettent les deux…
Je n'ai aucune idée de ce qui est le mieux.
Avant le commit de Nicolas, pour la saisie fichiers on avait:
- Si plus d'un fichier
- un label global (mais sans for)
- un label individuel par input ("fichier 1", "fichier 2" etc.) (avec for)
- Si un fichier:
- un label global (mais sans for)
- un label individuel, éventuellement supprimable (avec for)
Après le commit de Nicolas
- Si plus d'un fichier
- un label global (sans for)
- un label individuel par input ("fichier 1", "fichier 2" etc.) (avec for)
- Si un fichier:
- un label global (sans for)
- pas de label individuel
Quelle serait la meilleur solution? Je ne suis pas du tout spécialiste en accessibilité…
De fait c'est une mauvaise idée que de fournir une option pour ne pas
afficher de label, qui est essentiel du point de vue accessibilité.
Les CSS permettent le cas échéant de les mettre hors-vue si besoin, tout
en les laissant lisibles par les lecteurs d'écran
En fait, on a un problème: si une saisie permet d'envoyer plusieurs fichiers, doit-on avoir un label global ou un label par input?
C'est le même problème que pour les labels sur boutons radios. Label global ou label local? Les boutons radios mettent les deux…
Je n'ai aucune idée de ce qui est le mieux.
Avant le commit de Nicolas, pour la saisie fichiers on avait:
- Si plus d'un fichier
- un label global (mais sans for)
- un label individuel par input ("fichier 1", "fichier 2" etc.) (avec for)
- Si un fichier:
- un label global (mais sans for)
- un label individuel, éventuellement supprimable (avec for)
Après le commit de Nicolas
- Si plus d'un fichier
- un label global (sans for)
- un label individuel par input ("fichier 1", "fichier 2" etc.) (avec for)
- Si un fichier:
- un label global (sans for)
- pas de label individuel
Quelle serait la meilleur solution? Je ne suis pas du tout spécialiste en accessibilité…
Les label sans attribut for c'est purement décoratif et ne rend rien accessible. Chaque input doit avoir son label relié par un attribut for
Pour l'upload multifiles vous auriez pu utiliser la lib js homonyme utilisée par le plugin medias pour l'upload de documents ça simplifie ce problème d'interface
Cédric
Le 2 mars 2017 à 08:01, Maïeul <maieul@maieul.net> a écrit :
Le 02.03.17 à 13:52, Cédric Morin a écrit :
De fait c'est une mauvaise idée que de fournir une option pour ne pas
afficher de label, qui est essentiel du point de vue accessibilité.
Les CSS permettent le cas échéant de les mettre hors-vue si besoin, tout
en les laissant lisibles par les lecteurs d'écran
En fait, on a un problème: si une saisie permet d'envoyer plusieurs fichiers, doit-on avoir un label global ou un label par input?
C'est le même problème que pour les labels sur boutons radios. Label global ou label local? Les boutons radios mettent les deux…
Je n'ai aucune idée de ce qui est le mieux.
Avant le commit de Nicolas, pour la saisie fichiers on avait:
- Si plus d'un fichier
- un label global (mais sans for)
- un label individuel par input ("fichier 1", "fichier 2" etc.) (avec for)
- Si un fichier:
- un label global (mais sans for)
- un label individuel, éventuellement supprimable (avec for)
Après le commit de Nicolas
- Si plus d'un fichier
- un label global (sans for)
- un label individuel par input ("fichier 1", "fichier 2" etc.) (avec for)
- Si un fichier:
- un label global (sans for)
- pas de label individuel
Quelle serait la meilleur solution? Je ne suis pas du tout spécialiste en accessibilité…
donc ce qu'on pourrait faire est:
- revert du commit de nicolas pour avoir toujours un label
- l'option que j'ai ajoutée transformée en css hidden
Ou mieux (mais plus complexe à mettre en œuvre)
- Le label global est le label avec for si on une saisie unique
- Sinon on garde le label global, et les labels avec for sont pour chaque fichier
On a eu un parti pris initial de faire tous sans JS, quitte à proposer ensuite des variantes avec JS.
Le 2 mars 2017 à 14:47, Cédric Morin <cedric@yterium.com> a écrit :
Les label sans attribut for c'est purement décoratif et ne rend rien accessible. Chaque input doit avoir son label relié par un attribut for
Pour l'upload multifiles vous auriez pu utiliser la lib js homonyme utilisée par le plugin medias pour l'upload de documents ça simplifie ce problème d'interface
Cédric
Le 2 mars 2017 à 08:01, Maïeul <maieul@maieul.net> a écrit :
Le 02.03.17 à 13:52, Cédric Morin a écrit :
De fait c'est une mauvaise idée que de fournir une option pour ne pas
afficher de label, qui est essentiel du point de vue accessibilité.
Les CSS permettent le cas échéant de les mettre hors-vue si besoin, tout
en les laissant lisibles par les lecteurs d'écran
En fait, on a un problème: si une saisie permet d'envoyer plusieurs fichiers, doit-on avoir un label global ou un label par input?
C'est le même problème que pour les labels sur boutons radios. Label global ou label local? Les boutons radios mettent les deux…
Je n'ai aucune idée de ce qui est le mieux.
Avant le commit de Nicolas, pour la saisie fichiers on avait:
- Si plus d'un fichier
- un label global (mais sans for)
- un label individuel par input ("fichier 1", "fichier 2" etc.) (avec for)
- Si un fichier:
- un label global (mais sans for)
- un label individuel, éventuellement supprimable (avec for)
Après le commit de Nicolas
- Si plus d'un fichier
- un label global (sans for)
- un label individuel par input ("fichier 1", "fichier 2" etc.) (avec for)
- Si un fichier:
- un label global (sans for)
- pas de label individuel
Quelle serait la meilleur solution? Je ne suis pas du tout spécialiste en accessibilité…
donc ce qu'on pourrait faire est:
- revert du commit de nicolas pour avoir toujours un label
- l'option que j'ai ajoutée transformée en css hidden
Salut,
oui je vais revert, je n'étais pas satisfait de toute façon (cf les remarques de Cerdic dont je suis conscient).
Le truc qui m'embêtait à la base c'est d'avoir un label "Fichier unique" qui ne veut pas dire grand chose, alors qu'on a un "vrai" label explicite et choisi.
Ou mieux (mais plus complexe à mettre en œuvre)
- Le label global est le label avec for si on une saisie unique
- Sinon on garde le label global, et les labels avec for sont pour chaque fichier
Ce serait la solution idéale, je comptais justement essayer qqchose comme ça.
Un peu sous l'eau en ce moment mais je m'y colle asap.
Salut,
oui je vais revert, je n'étais pas satisfait de toute façon (cf les remarques de Cerdic dont je suis conscient).
Le truc qui m'embêtait à la base c'est d'avoir un label "Fichier unique" qui ne veut pas dire grand chose, alors qu'on a un "vrai" label explicite et choisi.
Oui, c'était aussi mon souci d'où mon option, mais c'est bof, bof.
Ou mieux (mais plus complexe à mettre en œuvre)
- Le label global est le label avec for si on une saisie unique
- Sinon on garde le label global, et les labels avec for sont pour chaque fichier
Ce serait la solution idéale, je comptais justement essayer qqchose comme ça.
Merci !
Un peu sous l'eau en ce moment mais je m'y colle asap.
Le 2 mars 2017 à 15:36, nicod_ <nicolas.dorigny@gmail.com> a écrit :
Tant qu'on est sur le sujet, un truc qui manque c'est, dans le cas d'un upload d'image, de ne pas avoir une vignette réduite après l'upload.
Je ne me souviens plus si ça a été discuté : faisabilité, sécurité ?
--
nicod_
tu veux dire lorsque le ficher est envoyé mais en attente de la correction des erreurs dans le formulaire?
le problème est que dans tmp/cvtupload, les fichiers sont stockés sans extension -> il faudrait faire une enieme copie pour avoir une forme avec extension interprétable par image_reduire.
En plus se pose le risque de perte de confidentalité, dans la mesure où les fichiers réduits sont mis dans local, donc accessible à tout le monde.