Quoi de mieux pour écrire un premier article technique sur ce nouveau blogue, que de parler d’un bogue que j’ai eu 10 minutes avant la fin de la compétition hier, aux Olympiades. Comme le mentionne le titre du billet, il est question d’IE et des éléments button.
Lors de la compétition, notre site devait être fonctionnel sous Firefox et Internet Explorer 7. Cela aurait pu être pire, j’aurais pu avoir à le rendre fonctionnel sous IE6, ce qui aurait engendré plus de problèmes côté CSS. IE7 = moins de bogues de CSS. Actually, je n’ai eu aucun bogue de CSS avec IE7, lors de la compétition.
Un bogue avec IE7, qui n’est pas un bogue de CSS? Exact.
En faisant une recherche après la compétition, j’ai vu que le bogue avait été documenté sur le forum d’Alsacréations. Cependant, l’utilisateur Lanza ne parle pas du bogue que j’ai eu.
Extrait de la spécification HTML4 conçernant l’élément button:
type = submit|button|reset
This attribute declares the type of the button. Possible values:
* submit: Creates a submit button. This is the default value.
Cela signifie que si j’ai ce code:
<button value="envoi" name="bouton">Envoyer</button>
Le navigateur va donc envoyer le formulaire dans lequel le bouton se trouve, puisque même s’il ne possède pas l’attribut « type » le navigateur considère qu’il est de type « submit ». Mais Internet Explorer, lui, ne réagit pas — il n’envoie pas le formulaire.
Je sais que la solution est évidente: mettre type="submit" aux éléments button qui sont des boutons d’envoi de formulaire — mais lorsque vous êtes en compétition, que vous devez vous assurer que votre site est fonctionnel dans IE7 (tous mes formulaires ne marchaient plus) et qu’il vous reste 10 minutes pour compléter l’épreuve, cela peut être pratique à savoir!
<button value="envoi" name="bouton">Envoyer</bouton>que je remplacerais par
<button value="envoi" name="bouton">Envoyer</button>haha sans rancune :-) !
Le billinguisme (10 juin 2007 à 0:00 EST)
ops pardon, c’était moi. Scuse j’étais chaud hier et j’écris dans « nom » le titre de mon commentaire :-)
Benjamin (10 juin 2007 à 10:06 EST)