Problème de validation XHTML 1.0

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics

curieuxmann
WRInaute discret
WRInaute discret
 
Messages: 94
Inscription: Dim Nov 23, 2003 17:34

Problème de validation XHTML 1.0

Message le Sam Déc 13, 2003 11:42

Bonjour,


Voici quelques problèmes répertoriés par le W3C sur certaines de mes pages, avec en rouge l'erreur du W3C :

Line 27, column 129: there is no attribute "border" (explain...).

<div class="entete"><a href="index.html"><img src="logo.jpg" alt="logo" title="Accueil" width="778" height="74" border="0" /></a></div>


L'attribut "border" serait-il interdit en XHTML 1.0 ? Dans ce cas, si l'on veut une bordure autour d'une image, comment faire, peut-être faut-il dire cette info à l'agent-utilisateur en mettant un sélecteur .img dans une CSS avec la propriété border ?


De plus, y-a-t'il des exceptions du W3C ? Je veux dire par là, peut-être qu'une page n'est pas valide parce qu'elle contient parfois des syntaxes redondantes afin que la page soit compatible avec des agents-utilisateurs plus anciens, non ?

C'est le cas je crois avec <br> par exemple :

Valide pour le W3C mais incompatible avec les vieux butineurs :

<br></br>

Invalide pour le W3C mais compatible avec les nouveaux et anciens butineurs :

<br />


J'espère que je n'ai pas pris un mauvais exemple avec le BR.


Monique
WRInaute accro
WRInaute accro
 
Messages: 1545
Inscription: Lun Sep 16, 2002 10:50

Message le Sam Déc 13, 2003 12:07

Bonjour,

Déja en HTML strict, la propriété border d'une image est interdite.
Il faut donc passer par la feuille de style :
Code: Tout sélectionner
img {
border: 0;
}
tu donnes la valeur qui te convient, tu peux aussi définir la couleur de la bordure éventuelle.

En HTML, que ce soit </br> ou < br />, les deux sont refusés (cela n'existait pas encore quand les spécifications ont été établies).
En XHTML, toutes les balises doivent être fermées, d'où le </br>.
C'est pour éviter des problèmes d'affichage avec les anciens navigateurs que l'écriture <br /> de même que <img />) est utilisée et elle est acceptée par le validateur en mode XHTML.

Amicalement,
Monique

nikoshr
WRInaute impliqué
WRInaute impliqué
 
Messages: 320
Inscription: Jeu Juil 10, 2003 5:49

Message le Sam Déc 13, 2003 12:13

L'attribut border n'est pas interdit, c'est juste qu'il n'existe pas en XHTML 1.0 et qu'utiliser un attribut non déclaré est invalide. D'accord, ca revient au même.

La solution est effectivement de contrôler les bordures en CSS, avec par exemple

Code: Tout sélectionner
IMG { border :0}
IMG.bordered { border:1px solid red}

et le code correspondant pour une image avec bordure
Code: Tout sélectionner
<img class='bordered' ... />

Tous les tags doivent être fermés pour être valides, la syntaxe <br /> étant tout à fait correcte.

[edit]Tiens, trop tard[/edit]


Remi L.
WRInaute accro
WRInaute accro
 
Messages: 1062
Inscription: Sam Sep 06, 2003 16:23

Message le Sam Déc 13, 2003 16:58

Le seul problème du border:0 en css, est que Netscape 4 n'en tient pas compte.

Donc personnellement, bien qu'écrivant en xhtml strict, je conserve le border 0 dans certaines balises IMG. Cela me fait invariablement une erreur quand je valide. :wink:

curieuxmann
WRInaute discret
WRInaute discret
 
Messages: 94
Inscription: Dim Nov 23, 2003 17:34

Message le Dim Déc 14, 2003 16:41

A propos des CSS et de l'attribut IMG :

Voulant centrer une image contenue dans un bloc et y supprimer les bordures, je me suis dit que je pouvais faire comme ça :

CSS :

Code: Tout sélectionner
img {
   border: 0;
}
img.center {
   text-align : center;
}


Et dans la page HTML :

Code: Tout sélectionner
<img class="center" src="banniere.jpg" alt="Accueil" title="Accueil" width="460" height="68" border="0" />



Bet ben le problème, c'est que cette image ne se centre pas !!!

Pouvez-vous m'expliquer pourquoi ?[/code]


Remi L.
WRInaute accro
WRInaute accro
 
Messages: 1062
Inscription: Sam Sep 06, 2003 16:23

Message le Dim Déc 14, 2003 18:48

Ah le centrage... :)
C'est un grand classique.
Voici une bonne page sur ce sujet fascinant :
http://www.openweb.eu.org/articles/initiation_centrage/


Remi L.
WRInaute accro
WRInaute accro
 
Messages: 1062
Inscription: Sam Sep 06, 2003 16:23

Message le Dim Déc 14, 2003 18:51

Mais pour répondre plus précisement à ta question, c'est le contenant qui devrait avoir text-align:center.
Là tu as dit que si tu mets qqchose dans ton image, tu voudrais qu'il soit centré... :?

curieuxmann
WRInaute discret
WRInaute discret
 
Messages: 94
Inscription: Dim Nov 23, 2003 17:34

<a href="..." target="_blank"> : N

Message le Jeu Déc 18, 2003 12:05

Mais malheuresement le W3C ne valide apparemment pas la valeur _blank.
Dans ce cas, quelle valeur ou attribut faudrait-il utiliser ?

Bonjour,

Si tu veux absolument utiliser target_blank, tu ne peux valider qu'en transitional.
Si non, tu peux toujours utiliser la popup intelligente de url=http://openweb.eu.org/articles/popup/]openweb[/url]
Code: Tout sélectionner
<a href="page.htm" onclick="window.open(this.href);">


Amicalement,
Monique

Oups... désolée, j'ai cliqué sur Editer au lieu de citer et j'ai effacé une partie de ton message... :oops:


Remi L.
WRInaute accro
WRInaute accro
 
Messages: 1062
Inscription: Sam Sep 06, 2003 16:23

Message le Jeu Déc 18, 2003 12:14

Aucune...

En mode strict, on est censé laisser l'utilisateur décider si oui ou non une page doit s'ouvrir dans une nouvelle fenêtre ou non.

Ceci dit, je mets quelques _blank tout de même... :wink:
Je trouve le _blank plus intéressant quand on sort du domaine.


Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par Julien Coquet, expert certifié officiellement par Google Analytics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités


cron