Yahoo!Maps et DOCTYPE
Par Benjamin le jeudi 28 août 2008, 16:00 - technique - Lien permanent
Quoi ? Yahoo Maps n'aimerait pas l'entête DOCTYPE ?
C'est ce que nous avons pu constater en essayant de dimensionner une carte Yahoo sur une page qui précisait cet entête pourtant vivement recommandé.
Quelques mots sur une petite anomalie que j'ai constatée avec Yahoo!Maps.
Yahoo!Maps est le sympathique service cartographique de Yahoo! qui permet, comme son concurrent Google Maps de faire de jolis mash-up. C'est lui que j'utilise sur ma page de géolocalisation d'internautes.
Un peu surpris de constater que la carte affichée a toujours la même dimension (400x400), j'ai mené quelques investigations pour voir comment outrepasser cette limitation. La documentation en ligne de Yahoo!Maps montre, preuve à l'appui (il suffit de regarder leurs exemples) que l'on peut dimensionner la carte comme on le souhaite. Pourtant, rien n'y a fait sur mes pages de test : la règle CSS qui dimensionnait la carte était immanquablement surchargée par une règle établie a posteriori par le Javascript de Yahoo!Maps
Comme l'indique le titre de ce billet, la difficulté était en fait liée à la présence d'un entête DOCTYPE dans mon document HTML. Les bons usages de notre société veulent que lorsqu'on écrit un fichier HTML, on commence par déclarer qu'il s'agit d'un document HTML (ou XHTML). Cela se fait en référençant la DTD (c'est à dire la grammaire) dont se réclame le document, par exemple :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
Cette ligne permet au navigateur avec lequel on ouvre le document de savoir qu'il s'agit d'un document de type XHTML qui obéit à la grammaire référencée (xhtml1-strict.dtd).
Seulement, voilà, il semble que lorsqu'on précise le DOCTYPE du document où figure la carte, Yahoo!Maps n'y retrouve plus ses petits et l'on perd les dimensions de la carte.
Moralité, lorsque vous faites un mash-up avec Yahoo!Maps, "omettez" le DOCTYPE ! C'est très très mal, mais, c'est à ce prix que vous obtiendrez une carte aux dimensions souhaitées.
Si cet article vous a intéressé, n'hésitez pas à nous laisser un commentaire ou à vous abonner à notre flux RSS.
Peut-être serez-vous également intéressé par ces articles :
Commentaires