WebForms HTML5 et iPhone
vendredi 15 janvier 2010 - 3 commentaires
Mark Pilgrim, génial auteur, vient juste de publier son chapitre sur les nouveautés qu'apporte HTML5 pour les formulaires. Évidemment, c'est une lecture indispensable. Je mettrais un petit bémol sur tout l'aspect validation de formulaires qu'il n'aborde pas et qui est pourtant une grande amélioration.
Un des intérêts immédiat est l'adaptation de l'iPhone aux nouveaux types de champs. Pour avoir un exemple plus concret, j'ai préparé un petit exemple et quelques captures d'écran. Apple propose aussi une documentation de ces changements de clavier.
Placeholder
<input type="text" placeholder="webforms roxor">
Une aide s'affiche lorsqu'aucun texte n'a été entré et disparait automatiquement.
Téléphone
<input type="tel">
Le clavier s'adapte à la saisie d'un numéro de téléphone. Il est dommage qu'un accès au répertoire ne soit pas proposé. Espérons dans une prochaine version.
Url
<input type="url">
Le clavier s'adapte à la saisie d'une URL. Un accès aux favoris aurait pu être intéressant.
<input type="email">
Le clavier s'adapte à la saisie d'un email. Un accès au répertoire aurait aussi pu être intéressant.
Nombre
<input type="number">
Le clavier s'adapte à la saisie d'un nombre.
Nombre entier
<input type="text" pattern="[0-9]*">
Le clavier s'adapte à la saisie d'un nombre entier. Vous remarquerez la différence avec la saisie d'un nombre plus général. Par contre, on ne peut pas écrire <input type="number" pattern="[0-9]*">
car l'attribut pattern
n'est pas disponible sur un champ number.
Utiliser ces quelques nouveaux types ne coute rien puisque les navigateurs ne comprenant pas les nouveaux types afficheront un simple champ texte. Mais quel bénéfice pour les utilisateurs de périphériques adaptés. Opera implémente une précédente version des Webforms et comprend donc une partie de ces champs. Je n'ai jamais vu comment Opera traitait ces champs sur un mobile par contre.
Connaissez-vous d'autres navigateurs ou périphériques comprenant déjà ces nouveautés ?
Commentaires
J'adooore ces améliorations douces.
> Connaissez-vous d'autres navigateurs ou périphériques comprenant déjà ces nouveautés ?
Chrome et Safari comprennent le placeholder et ajoutent une petite croix pour réinitaliser le champ s'il est en type="search".
Dommage, le moteur Webkit dit implémenter tous ces nouveaux champs (il ne les remets pas en type="text") même quand il ne fait rien avec ! Impossible donc de se replier sur JavaScript pour aider l'utilisateur qui n'aurait pas ces nouveautées sous Chrome, Iphone ou Safari... :/
Dans Opera le type="url" affiche un champ qui est donne accès (en autocomplétion) aux favoris mais aussi à l'historique et aux sites les plus visités, c'est pas mal foutu. Pour type="email" c'est le carnet d'adresse évidemment.
Le calendar par contre est assez chiant et moche à utiliser à mon sens, mais bon c'est juste un proto.
Y'a des tas de trucs intéressants en plus sinon, type="search" (n'a pas d'effet particulier mais pratique pour l'identifier comme tel), type="url" associé à une datalist pour imposer une liste d'urls comme dans l'exemple de la spéc, y'a aussi l'élément keygen (pratique pour faire de l'ident en challenge), l'élément progress, meter, etc. Je sais pas si tout ça est aussi implémenté sur webkit ?
@Sunny : Pour les WebKit qui reportent un mauvais type de champ, je l'avais signalé il y a quelques mois mais ça n'avait choqué personne. J'ai pas du être assez convainquant. Pourtant c'est juste évident :(