External ou _blank ?

Je l’avoue sans honte (enfin si, un petit peu), je suis une teube en informatique, et je ne comprends pas grand chose aux sacro-saints standards du web. Sauf que j’ai compris que les gentils étaient pour, et le côté obscur c’était les autres les méchants Dark Vador miscrosoftiens et autres vendus, qui codent avec leurs pieds et font importe na ouak. Et comme, je me sens philosophiquement plus proche de Luke Skywalker, je comprends que les standards, c’est trop de la balle et vachement bien.

Et puis j’ai bien vu que c’était trop hype d’être « XHTML 1.0 compliant ». Alors j’ai essayé de m’y coller, mais pfff, j’en ai eu marre de ce message absolument décourageant lorsque mon blog est testé : « This page is not Valid XHTML 1.0 Transitional! ».

Pfff pédé va ! Ooups pardon, ça m’a échappé !

Bon, donc j’ai bien corrigé quelques pétouilles en me rendant compte qu’il ne s’agissait parfois que de bien faire gaffe à la manière dont on n’utilisait certaines balises et le respect de quelques règles typographiques standardisées. Mais il n’en reste pas moins que je ne passe toujours pas le test. Et puis après, j’ai laissé tomber par flemme et (surtout) par incompétence notoire. J’ai déjà eu assez de mal à fignoler une feuille css qui affiche un site identique quel que soit le browser.

Mais voilà qui me pose un nouveau défi ! Quand j’étais sur b2 (vous savez ce blogiciel génial écrit à la mimine par un corse sexy arf), j’aimais bien le fait que dans les commentaires, les blogs des auteurs s’ouvrent dans une nouvelle fenêtre. Or dans WordPress, j’ai remarqué que cela n’est pas le cas, et la taille de fenêtre étant fixée, on se retrouve, si on ne fait pas un shift-click, enfermé (mamaaaaan, j’veux sortir du blog de Matoooo). Mettant en oeuvre ma légendaire perspicacité (c’est ironique), je cherche la fonction qui produit ce lien, et je me dis que je vais simplement rajouter un target= »_blank ».

Mais une fois sur la fonction, je vois qu’il y a un autre attribut : rel = »external », dont je n’ai jamais entendu parler. :mrgreen: Pfff. Donc plutôt que de rajouter le blank comme cela, je regarde un peu sur le net ce à quoi cela peut bien servir.

Après avoir un peu googlé et surfé, je tombe sur ce forum-journal qui, je pense, me donne les explications idoines, dont un certain Robert Palmer qui me dit des choses claires et en français que je comprends (enfin j’crois) :

A chacun son rôle.

XHTML : structuration et sémantique du document.
CSS : présentation et mise en forme
JavaScript : manipulation du document et des éléments du navigateur (cas qui nous intéresse car ouvrir une nouvelle fenêtre revient à manipuler le navigateur)

Les documents XHTML n’ont plus pour but d’être seulement affichés sur un écran d’ordinateur à partir d’un navigateur visuel. Il est devenu indépendant du médium.
Quel sens cela a-t-il d’ouvrir une nouvelle fenêtre pour un navigateur vocal ? Quel sens cela a-t-il d’ouvrir une nouvelle fenêtre pour un navigateur utilisé dans une borne Internet où il n’y a pas de fenêtre mais juste la zone de visualisation de la page ?

Bref, il faut sortir du schéma classique et voir le Web comme quelque chose de beaucoup plus hétéroclite…

Sinon, en complément des solutions données en dessus et qui utilisent JavaScript, il y a cette méthode proposée par Sitepoint : http://www.sitepoint.com/article/standards-compliant-world

En gros l’idée est d’utiliser JavaScript mais pas directement dans la balise < a > mais de manière centralisée à l’aide de l’attribut rel= »external » : un unique script JS ouvrira dans une nouvelle fenêtre les liens qui possèdent cet attribut.
Ainsi on évite de mettre le JavaScript dans la balise et on préserve la sémantique du document.

Et puis, je comprends, à lire les réponses des uns et des autres, que tout de même c’est un gros problème de geek cette histoire de nouvelle fenêtre là. Et du coup, si on veut être XHTML, on doit abandonner le _blank. Mais ce que je me demande c’est pourquoi est-ce que mon attribut external ne fonctionne pas et n’ouvre pas de fenêtre ? (sous Firefox ou IE)

Eh bien, « que la force soit avec moi » on va dire !

Matoo Yoda contre Matoo R2D2

22 Commentaires

  1. Robert Palmer n’a jamais écrit la moindre ligne d’XHTML, il jouait les crooners au rabais dans les années 80 et se faisait piquer ses chansons pour des pubs de bière et ou de bagnole. C’est à n’y rien comprendre. A quand Barry White qui t’explique la mécanique des fluides ?

  2. Respecter les standards HTML et CSS « uniquement » pour commencer ? Je me suis aussi frottée au XHTML, mais quand tu n’en as pas l’utilité, pourquoi se compliquer l’existence ??

  3. Bon hé bien si toi Matoo tu es une teube en format ique, moi c’est pire : :boulet: + :boulet: + :boulet: = Pierre
    Bref :croa::croa::croa: et même :gne::gne::gne: et aussi :mur: :mur: :mur:
    Et pour conclure :joker: (mais quand même pas :ben:)
    ARF :ok:

  4. je vois pas comment un javascript pourrait se lancer si tu n’as pas le dit javascript un peu plus haut dans ta page ou si tu n’as pas mis un lien au début qui permet au navigateur de le retrouver…

  5. ben oui

    ou alors c’est une fonction javascript qui a été standardisée et reprise par les navigateurs…

    hum…

    aucune chance…

    donc dans ton forum ils doivent parler du javascript quelque part… plus haut…

    :gene:

  6. En fait, ce que je ne comprends pas, c’est la raison pour laquelle WordPress n’implémente pas déjà tout cela pour que ça fonctionne (vu que l’attribut est là) ?

    Enfin, ça fonctionne comme ça, tant pis pour la gloire ! :petard:

Laissez un commentaire

Votre adresse de messagerie ne sera pas publiée.

Petite opération antispam à résoudre : * Le temps imparti est dépassé. Merci de saisir de nouveau le CAPTCHA.

:bye: 
:good: 
:negative:  
:scratch: 
:wacko:  
:yahoo: 
B-) 
:heart: 
:rose:   
:-) 
:whistle: 
:yes: 
:cry: 
:mail:   
:-(     
:unsure:  
;-)  
 
Partages