Pour un Web interopérable, Microsoft aligne Edge sur WebKit et donne ses recommandations aux développeurs
ven, 19/06/2015 - 10:55
Microsoft souhaite que son nouveau navigateur Edge, qui viendra avec Windows 10, soit une rupture avec le passé. La firme de Redmond le disait déjà à l'époque où ce navigateur s'appelait encore Spartan.
Aujourd'hui, Microsoft précise sa pensée et donne quelques recommandations aux développeurs. Pour rompre avec le passé, Microsoft a forké son moteur de rendu Trident pour créer le nouveau moteur EdgeHTML. Dire que ce moteur rompt avec le passé, c'est dire que ce nouveau moteur abandonne les acrobaties de Trident pour rendre des pages de sites considérées comme faisant partie du legacy, ce qui est en partie vrai, mais aussi, il faut bien le dire, de pages qui tenaient compte des 'spécificités' d'Internet Explorer.
Microsoft emprunte la voie de la sagesse et de la rationalité : plus de 'spécificités', mais le respect des standards. Edge va respecter les standards, comme le fait le moteur de rendu WebKit, au point que toute différence de comportement de Edge avec WebKit sera considéré comme un bug que Microsoft corrigera, est-il précisé. Microsoft veut l'interopérabilité du Web et comme les autres moteurs de rendus ne sont pas nécessairement parfaits eux non plus (personne ne l'est...) la firme de Redmond collabore avec les autres éditeurs afin que chaque moteur s'améliore.
Partant de là, Microsoft livre ses recommandations, que l'on peut résumer en deux points. La première est de tout simplement respecter les standards, et de ne pas 'optimiser' un site pour Internet Explorer.
Le deuxième point découle du premier. Les développeurs ne doivent plus réagir en fonction de l'user-agent émis par le navigateur.
L'user agent qui est un "toujours croissant paquet de mensonges" peut-on lire dans le billet :-)
Au cours de l'année qui vient d'être passée au développement de Edge, Microsoft a constaté que des problèmes de rendus se fixaient tous seuls, simplement en modifiant un peu l'user-agent :-) Simplement parce que les sites ne proposaient alors plus un contenu spécifique. Pour Edge, Microsoft a défini un nouvel user-agent qui est passé de
Internet Explorer 11’s UA string
Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko
à
Microsoft Edge UA string:
Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.10136
Afin qu'Internet Explorer ne soit plus détecté. Cependant, les habitudes ont la vie dure. Toujours au cours de l'année passée, Microsoft a remarqué que des sites s'efforçaient de détecter spécifiquement Egde... pour lui proposer du contenu Internet Explorer 11. A croire que les développeurs doutent de la capacité de Microsoft de se conformer aux standards ;-) Mais Microsoft veut rompre définitivement avec le passé et insiste : détecter l'user-agent pour y réagir n'est plus une pratique convenable. Les développeurs doivent se limiter à fournir des pages standards... et faire confiance à Microsoft ;-)