5568 sujets

Sémantique web et HTML

Pages :
Bonjour à tous,
je me suis mis il y a peu aux CSS et XHTML mais j'avais déjà des connaissances en HTML.
Mon problème est le suivant: j'ai une feuille de style tableau.css et une page html essai.html. Sans la balise DOCTYPE, la page s'affiche bien. Or, mon code n'est pas validé par le W3C donc je rajoute le DOCTYPE XHTML TRANSITIONAL et là, mon affichage est complètement modifié.
Voici mon code HTML actuel (avec DOCTYPE):

<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
 <html xmlns='http://www.w3.org/1999/xhtml'>
 <head>
 <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
<title> Test </title>
<link href="tableau.css" rel="stylesheet" type="text/css"/>
</head>

<body>
<div class='main'>
       <div class='header1'>mon entete</div>
	   <div class='header2'>mon entete2</div>
       <div class='contain'>
             <div>mon contenu</div>
             <div class='module'>
                    <div class='header'>
                           header de mon module
                    </div>
                    <div class='contain'>
                           contenu
                    </div>
             </div>
       </div>
	   <div class='footer1'>mon footer</div>
	   <div class='footer2'>mon footer2</div>
</div>
</body>
</html>


Et ma feuille de style:

html {
    height:100%;
}

body {
    height:100%;
    padding:0px;
    margin:0px;
	font-family:Arial, Helvetica, sans-serif;
	font-size:13px;
}

.main .header1 {
	background: #000 url(logo.png) no-repeat center center;
	height:19%;
	color:#FFF;
}
	   
.main .header2 {
	background-color:#FF6600;
	height:1%;	
	color:#FFF;
}
       
.main .contain {
	background-color:#FFF;
	height:70%;
	color:#000;
}
       
.main .footer1 {
	background-color:#FF6600;
	height:1%;
	color:#FFF;	
}

.main .footer2 {
	background-color:#000;
	height:9%;
	color:#FFF;
}
       
.module .header {
	background-color:#FFF;
	color:#000;
	height:20%;
}

.module .contain {
	background: #FFF url(equipe.png) no-repeat center center;
	height:80%;
	color:#000;
}


Merci à tous pour votre aide qui m'est très précieuse!
Modifié par pogy29 (11 Jul 2007 - 10:47)
Salut,

En tant que modérateur, je me dois de te faire remarquer que tu n'as malheureusement pas respecté l'une des Règles de base du forum qui est d'afficher les codes et exemples proprement à l'aide des boutons [ code]... ici ton code HTML, CSS, PHP, etc.[ /code] (sans espace).

Je te remercie par avance de bien vouloir éditer ton message afin de le rendre conforme à cette règle. Smiley cligne

D'ailleurs, je rappelle que le lien qui apparaît en bandeau tout en haut du forum ("Nouveau sur le forum ?...") est important. Il contient des pistes de recherche, des indications sur les règles de vie de la communauté, etc.
Il serait courtois de ta part de bien vouloir en prendre connaissance.

Bonne continuation Smiley smile

upload/1-code.gif
Modifié par Mikachu (11 Jul 2007 - 10:32)
Les différences dont tu parles interviennent sur quel butineur? Internet Explorer 6?
Au passage, ton doctype ne déclare pas du xhtml strict mais bien du transitionnel.
Benjamin D.C. a écrit :
Les différences dont tu parles interviennent sur quel butineur? Internet Explorer 6?
Au passage, ton doctype ne déclare pas du xhtml strict mais bien du transitionnel.


Bonjour Benjamin, merci pour ta réactivité!
J'ai fait des tests mais même problème avec Transitionnal.
Actuellement je suis donc en DOCTYPE TRANSITIONNAL.

L'affichage se fait bien avec Internet Explorer 7 mais il est modifié sous Firefox lorsque je rajoute le Doctype

Merci pour ton aide
Le doctype est obligatoire, tu vas devoir adapter tes css. Avantage : ton site sera correct sur la plupart des navigateurs, il y aura juste des petites corrections pour IE6 (ou 7) avec les commentaires conditionnels.
Modifié par Patidou (11 Jul 2007 - 11:01)
Patidou a écrit :
Le doctype est obligatoire, tu vas devoir adapter tes css. Avantage : ton site sera correct sur la plupart des navigateurs, il y aura juste des petites corrections pour IE6 (ou 7) avec les commentaires conditionnels.


Oui, je sais que le doctype est obligatoire. C'est pour ça que je veux l'ajouter!
A quel niveau dois-je faire des modifications dans le CSS? Je ne vois pas le rapport? Surtout que ma feuille de style est validée W3C!
Oui je me suis mal exprimé... J'ai l'impression que tu travailles avec IE pour la mise en page, pas vrai? En fait, il faut travailler avec un navigateur conforme comme firefox, opera ou autre et faire une mise en page correcte avec les css, et puis, une fois que tout est fini, faire les petites retouches supplémentaires pour IE via les commentaires conditionnels.
Modifié par Patidou (11 Jul 2007 - 11:07)
Bonjour

Vite fait en passant (je dis pas que la source du problème est là mais tant qu'à faire...) ajoute donc un espace dans tes balises autofermantes, ça peut pas nuire Smiley cligne : type="text/css" />
Patidou a écrit :
Oui je me suis mal exprimé... J'ai l'impression que tu travailles avec IE pour la mise en page, pas vrai? En fait, il faut travailler avec un navigateur conforme comme firefox, opera ou autre et faire une mise en page correcte avec les css, et puis, une fois que tout est fini, faire les petites retouches supplémentaires pour IE via les commentaires conditionnels.


Non je travaille avec Firefox... Je suis juste allé voir sous IE7 si j'avais le même souci mais ce n'est pas le cas!
Arsene a écrit :
Bonjour

Vite fait en passant (je dis pas que la source du problème est là mais tant qu'à faire...) ajoute donc un espace dans tes balises autofermantes, ça peut pas nuire Smiley cligne : type="text/css" />


Merci du conseil...
Mais comme tu l'as dit, la source du problème n'est pas là! ça ne marche toujours pas
Smiley decu
Bon, je reprends... Smiley cligne

La bonne méthode de travail, est effectivement de travailler sur Firefox avec un doctype correct et une css valide.

Quand tu ne met pas de doctype, IE (6 ou 7) passe en mode quirk et calcule la place des éléments de manière différente.

Normalement, une mise en page avec un doctype correct devrait être plus ou moins la même dans IE7 et Firefox. Néanmoins, il peut subsister de petites différences. Le truc c'est d'ajouter une deuxième css correctrice qui ne sera lue que par IE avec les commentaires conditionnels.

J'espère que je ne suis pas trop brouillon dans mes explications. Smiley sweatdrop
Modifié par Patidou (11 Jul 2007 - 11:25)
Patidou a écrit :
Bon, je reprends... Smiley cligne

La bonne méthode de travail, est effectivement de travailler sur Firefox avec un doctype correct et une css valide.

Quand tu ne met pas de doctype, IE (6 ou 7) passe en mode quirk et calcule la place des éléments de manière différente.

Normalement, une mise en page avec un doctype correct devrait être plus ou moins la même dans IE7 et Firefox. Néanmoins, il peut subsister de petites différences. Le truc c'est d'ajouter une deuxième css correctrice qui ne sera lue que par IE avec les commentaires conditionnels.

J'espère que je ne suis pas trop brouillon dans mes explications. Smiley sweatdrop


Tu n'es pas brouillon et je comprends très bien ce que tu me dis!
Mais le problème n'est pas vraiment là... J'utilise cette méthode de travail! Or pourquoi mon doctype n'est pas correct? Si je n'en mets pas, tout fonctionne parfaitement! Smiley bawling
Patidou a écrit :
Quand tu ne met pas de doctype, IE (6 ou 7) passe en mode quirk et calcule la place des éléments de manière différente.

Hum... il me semble que c'est le cas de tous les navigateurs (quoique, pas sûr pour Safari/Konqueror). En tout cas, Firefox a bien un mode «Quirks» et un mode «Standard», mais les différences entre les deux sont moins sensibles qu'avec Internet Explorer. Smiley cligne
pogy29 a écrit :


Tu n'es pas brouillon et je comprends très bien ce que tu me dis!
Mais le problème n'est pas vraiment là... J'utilise cette méthode de travail! Or pourquoi mon doctype n'est pas correct? Si je n'en mets pas, tout fonctionne parfaitement! Smiley bawling


Non je crois que tu n'as pas tout compris. Tu dois refaire ta CSS pour qu'elle fonctionne correctement dans Firefox avec le dotcype correct. Et puis tu regardes dans IE ce que ça donne et éventuellement tu adaptes. Il n'y a pas d'autres méthodes.

Ou alors c'est moi qui comprends de travers tout ce que tu me dis... Smiley biggol

Florent V. a écrit :

Hum... il me semble que c'est le cas de tous les navigateurs (quoique, pas sûr pour Safari/Konqueror). En tout cas, Firefox a bien un mode «Quirks» et un mode «Standard», mais les différences entre les deux sont moins sensibles qu'avec Internet Explorer. Smiley cligne


C'est juste Smiley jap , je voulais dire que IE ne calcule pas selon les normes en mode quirk.
Patidou a écrit :


Non je crois que tu n'as pas tout compris. Tu dois refaire ta CSS pour qu'elle fonctionne correctement dans Firefox avec le dotcype correct. Et puis tu regardes dans IE ce que ça donne et éventuellement tu adaptes. Il n'y a pas d'autres méthodes.


Dans ce cas, peux-tu m'indiquer ce qui pourrait clocher dans mes CSS car je ne vois pas du tout!!!
pogy29 a écrit :


Dans ce cas, peux-tu m'indiquer ce qui pourrait clocher dans mes CSS car je ne vois pas du tout!!!


Oui c'est le fameux problème du pied de page... J'ai fait ceci, d'autres personnes plus expérimentées te donneront peut-être une meilleure solution mais ça a l'air de marcher (IE6 & Firefox) :


	<div id="footer">
	   <div class='footer1'>mon footer</div>

	   <div class='footer2'>mon footer2</div>
	</div>


#footer {
	position: absolute;
	bottom: 0px;
}

Modifié par Patidou (11 Jul 2007 - 12:11)
Oui Ok, il positionne bien mes footer1 et footer2 mais le contain est toujours pareil et cela ne résoud pas les problèmes de hauteurs... Smiley decu
En fait, à l'affichage, chaque DIV fait la même hauteur (minimale)...
Si ça peut vous aider, je découvre à l'instant que si je mets la hauteur en px plutôt qu'en % ça fonctionne.
Le hic c'est que je veux mettre des % moi Smiley langue Pas chiant le mec!
Si j'ai bien compris ce que tu veux, c'est normal car le calcul des pourcentages ne peux pas se faire correctement, surtout sur le contain. Personnellement, j'utiliserais partout des hauteurs en pixels (sauf sur contain qui est libre), sinon tu vas avoir des hauteurs qui vont changer chaque fois que l'utilisateur va agrandir ou rétrécir la taille de la fenêtre. Si c'est une hauteur qui change avec la taille du texte que tu veux, utilise des em. Smiley cligne
Modifié par Patidou (11 Jul 2007 - 13:54)
Patidou a écrit :
Si j'ai bien compris ce que tu veux, c'est normal car le calcul des pourcentages ne peux pas se faire correctement, surtout sur le contain. Personnellement, j'utiliserais partout des hauteurs en pixels (sauf sur contain qui est libre), sinon tu vas avoir des hauteurs qui vont changer chaque fois que l'utilisateur va agrandir ou rétrécir la taille de la fenêtre. Si c'est une hauteur qui change avec la taille du texte que tu veux, utilise des em. Smiley cligne


Merci pour ces solutions Patidou!!!! Mais on en revient à ma question de départ! Pourquoi les pourcentages sont pris en compte lorsque je ne mets pas le doctype???
Pages :