J’ai découvert tout récemment qu’il existait une version mobile du webmail d’Orange. Celle-ci semble utiliser le même préfixage de règles CSS que son pendant desktop, avec le même support de propriétés CSS (ce qui est plutôt une bonne nouvelle puisqu’Orange est plutôt permissif de ce côté là).
Cependant, j’ai remarqué un gros problème au niveau de l’interprétation de double tirets dans le code HTML ou CSS. Le webmail mobile d’Orange va systématiquement remplacer toute occurrence de --
(tiret tiret) par - -
(tiret espace tiret). Et ça, c’est très pénible, en particulier si comme moi vous appréciez la notation de la méthodologie BEM. Prenons par exemple le code suivant…
<style>
.button--primary { color:#fff; background:#333; }
</style>
<a class="button--primary" href="http://www.hteumeuleu.fr/">Mon blog</a>
…sera transformé par le webmail mobile d’Orange en…
<style>
.button- -primary { color:#fff; background:#333; }
</style>
<a class="button- -primary" href="http://www.hteumeuleu.fr/">Mon blog</a>
La règle CSS .button- -primary
n’a alors plus aucun sens, et ses styles sont ignorés par le navigateur. La solution est alors de ne jamais utiliser de double tirets dans un nom de classe HTML ou une règle CSS. Soit.
Mais ce problème touche également les commentaires HTML. Ainsi le commentaire suivant…
<!-- Ceci est un commentaire HTML -->
…sera transformé par le webmail mobile d’Orange en…
<!--- - Ceci est un commentaire HTML - --->
Par chance, les balises ouvrantes et fermantes du commentaire HTML sont quand même conservés. Mais ça se gâte si on utilise un commentaire conditionnel, par exemple pour cibler certaines versions d’Outlook. Ainsi le commentaire conditionnel suivant…
<!--[if gte mso 9]>Du contenu visible uniquement sur Outlook.<![endif]-->
…sera transformé par le webmail mobile d’Orange en…
<!--- -[if gte mso 9]-->Du contenu visible uniquement sur Outlook.<!--[endif]- --->
Le commentaire est ici carrément réécrit, avec une fermeture avec le [if gte mso 9]
, et une réouverture avant le [endif]
. Ainsi, le contenu à l’intérieur du commentaire conditionnel, censé s’afficher uniquement sur Outlook, sera visible sur le webmail mobile d’Orange. Je n’ai alors malheureusement pas d’autre solution que de ne pas utiliser de commentaire conditionnel. Ou alors de choisir de ne pas supporter ce webmail mobile.
outadoc, le
Mais c’est quoi ce truc ? Même un stagiaire aurait testé un minimum avant d’écrire ce genre de truc…
Rémi, le
Pour leur défense, l’utilisation de deux tirets consécutifs n’est pas autorisée dans un commentaire dans un document XML (et donc HTML). J’imagine que ça posait problème avec le langage WAML utilisé par Orange pour développer ce webmail, et qu’ils ont donc voulu prendre la précaution de systématiquement remplacer tout double tiret en y insérant une espace.