Bonjour,

Je test actuellement ce tuto ( histoire de me réhabituer à "coder propre" et compatible ...

Mais voila, le rendu d'une page type faite en suivant ce tuto ne passe pas bien ( du tout ) sous IE6 !! et le pire c'est que je ne voit pas pourquoi Smiley bawling
le code passe au W3C validator =>

voila le code de la page html :
<!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" xml:lang="en" lang="fr">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<title>Création d'un design à 2 colonnes - 1. Le code XHTML</title>
	<link rel="stylesheet" type="text/css" href="css/page.css" media="screen" />
<!--[if lte IE 6]>
	<link rel="stylesheet" type="text/css" href="css/ie.css" media="screen" />
<![endif]-->
	</head>
	<body>
		<div id="global">
			<div id="header">
				<h1>Reikirama.net</h1>
			</div>
			<div id="center">
				<div id="content">
					<h2>Etape 1 : le code XHTML</h2>
					<p>Vous trouverez ci-dessous le code de la page HTML que vous êtes en train de lire. Et oui, malgré l'absence de feuille de style, la page est déjà lisible ! Les liens fonctionnent, les titres sont mis en évidence, les listes structurées, etc.</p>
					<p>La page est divisée horizontalement en trois parties distinctes :</p>
					<ol>
						<li>l'en-tête (identifié par "<em>header</em>"), destiné à accueillir la bannière et éventuellement une devise ou slogan.</li>
						<li>la partie centrale ("<em>center</em>", bien vu !) contiendra les deux colonnes qui nous intéressent. Elle comprend donc elle-même 2 zones distinctes (les divisions <em>sidebar</em> et <em>content</em>).</li>
						<li>le pied de page ("<em>footer</em>") comprend diverses informations que l'on souhaite afficher discrètement sur toutes les pages, en général des mentions de copyright ou les coordonnées et références de la société ...</li>
					</ol>	
				</div>
				<div id="sidebar">
					<h3>Navigation</h3>
					<ul id="menu">
						<li><a href="./" title="Introduction">Introduction</a></li>
						<li><a href="etape1.html" title="Première étape : le code (X)HTML">Etape 1</a></li>
						<li><a href="etape2.html" title="Deuxième étape : le positionnement">Etape 2</a></li>
						<li><a href="etape3.html" title="Troisiéme étape : couleurs &amp; images de fond">Etape 3</a></li>
						<li><a href="etape4.html" title="Quatrième étape : le menu">Etape 4</a></li>
						<li><a href="etape5.html" title="Cinquième étape : titres &amp; liens">Etape 5</a></li>
						<li><a href="etape6.html" title="Sixième étape : ajustements pour IE">Etape 6</a></li>
					</ul>
					<h3>Brèves</h3>
					<p>Pourquoi j'aime les standards du W3C ? Pour <a href="http://openweb.eu.org/articles/pourquoi_standards/" title="Openweb : Pourquoi les standards du W3C">ça</a></p>
					<h3>Liens</h3>
					<ul>
						<li><a href="http://www.alsacreations.com" title="AlsacréationS apprendre XHTML, les CSS et les standards W3C de la conception Web">Alsacréations</a></li>
					</ul>
				</div>
			</div>
			<div id="footer">
				<p>Je suis un pied de page. Et comme disait Groucho Marx, si vous n'aimez pas mes opinions, j'en ai d'autres.</p>
			</div>
		</div>
	</body>
</html>


voici le code du css ( page.css ) :
body {
	font: 90% "Trebuchet MS", sans-serif;
}

html {
	background: #ddd url(../images/html.png);
	}

html, body {
	height: 100%;
	margin: 0;
	}

div#header {
	background: #7fcf2e url(../images/image_titre.jpg) no-repeat; /* #7fcf2e #dea */
	color: #fff;
	height: 198px;
	position: relative;
	}

div#header h1 {
	margin: 0;
	position: absolute;
	bottom: 10px;
	left: 30px;
	font: 3em Georgia, serif;
	}

div#global {
	min-height: 100%;
	width: 750px;
	padding: 0 10px;
	margin: 0 auto;
	position: relative;
	padding: 0 10px;
	background: url(../images/global.png) center repeat-y;
	}

div#center {
	/* Pour éviter la superposition 
	du pied de page et du contenu : */
	padding-bottom: 50px; 
	overflow: auto;
	}

div#footer {
	position: absolute;
	width: 750px;
	bottom: 0;
	background: #7fcf2e url(../images/footer.png) repeat-x;
	color: #fff;
	}

div#footer p {
	margin: 2px 0;
	font-size: 0.9em;
	}

div#content {
	float: left;
	width: 530px;
	margin-left: 10px;
	}

div#content h2 {
	padding-left: 35px;
	background: #fff url(../images/titre.png) left center no-repeat;
	color: #6c0;
	}

div#content h3 {
	color: #c00;
	font-variant: small-caps;
	}

div#sidebar {
	float: right;
	width: 200px;
	}

ul#menu {
	margin: 0;
	padding: 0;
	list-style: none;
	}

ul#menu li a {
	display: block;
	height: 30px;
	line-height: 30px;
	background: url(../images/bg_menu.gif) no-repeat left top;
	padding-left: 35px;
	margin: 2px 0;
	border-bottom: 1px solid #7fcf2e;
	color: #390;
	font: small-caps 1.1em/30px Georgia,serif;
	text-decoration: none;
}

ul#menu li a:hover {
	background-position: left bottom;
	color: #c30;
}

ul#menu li a#active {
	background-position: left bottom;
	color: #c30;
}

#menu a span {     /* définition de la balise <span> inclue dans <a> */

display: none;

}



#menu a:hover span {   /* définition de la balise <span> au survol */

display: block;

position: absolute;

top: 140px;

right: 20px;

width: 450px;       /* largeur de la zone de commentaires, selon la taille du menu */

text-align: left;

border-top: 1px solid gray;

color: #000;

text-decoration:none;

}

a {
	color: #6c0;
	font-weight: bold;
	}

a:hover {
	color: #c00;
	}

#soustitre
{
	position:absolute;
	top:198px;
	left:75px;
	margin: auto;

	color:#400040;

	font:"Comic Sans MS";

	font-size:large;	

	border-top: 1px dashed red;

	border-bottom: 1px dashed red;

	background-color:#CCCCCC;	
	display:table-cell;
}


et le code du css pour IE <6 :
#global {
	height: 100%;
	}

#content {
	display: inline;
	}

#center {
	overflow: visible;
	height: 1%;
	}

#content, #sidebar {
	margin-top: 15px;
	}

#global {
	background: none;
	filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/global.png", sizingMethod="scale");
	}

#global {
	position: static;
	}

a, pre {
	position: relative;
	}

body {
	position: relative;
	}


quel est le probleme ?? Smiley ohwell
Bonjour,

1. Qu'est-ce qui ne passe pas? Quelle(s) erreur(s) faut-il chercher?
2. Peut-on voir une page en ligne? Ce serait plus simple.
désolé ...
voici la page en ligne : http://www.reikiamouretcompassion.fr/origine.html

Et en fait je croi avoir trouvé ...
Le css spécial IE <6 utilise le code
#center {
	overflow: visible;
	height: 1%;
	}


en le remplaçant par
#center {
	overflow: visible;
	height: 100%;
	}

et en utilisant <!--[if IE]> plutot que <!--[if lte IE 6]>
ça passe !!

conclusion :
Je sais pas mais en tout cas sous IE6 la pagination déconnait.
bon même en gardant <!--[if lte IE 6]> ça fonctionne ...

Pourtant je test avec IE6 et ça passe mieux !
ce qui veux dire que le css pour ie <6 est utiliser lorsque l'on a IE6 ?
Une précision : je travail sous linux, j'utilise ie4linuz pour emuler IE6, peut-être que cela joue ...

En tout cas peut-être le coup du
height: 1%;
est une coquille du tuto, auquel cas je suis content de vous le signaler.
C'est peut-être moi qui déconne plein pot et en ce cas merci de m'éclairer Smiley biggrin
Salut,

tsouliang a écrit :
bon même en gardant <!--[if lte IE 6]> ça fonctionne ...

Pourtant je test avec IE6 et ça passe mieux !
ce qui veux dire que le css pour ie <6 est utiliser lorsque l'on a IE6 ?
Ce n'est pas la feuille de style pour IE < 6, mais pour IE <= 6

a écrit :
En tout cas peut-être le coup du
height: 1%;
est une coquille du tuto, auquel cas je suis content de vous le signaler.
Non, ce n'est pas une erreur. Appliquer overflow: hidden permet d'empêcher les éléments flottants de dépasser de leur conteneur pour les navigateurs autres que IE. Pour obtenir le même résultat dans IE 6, il faut que ce conteneur ait le hasLayout* activé, ce qu'on peut obtenir en lui donnant une hauteur quelconque (entre autres). IE6 interprétant la propriété height comme une hauteur minimale, on utilise 1% pour que cela n'affecte pas les dimensions "naturelles" des éléments.

* il doit y avoir une note à ce sujet quelque part dans le tutoriel...
bonjour,
merci de votre réponse.

Ce que vous dites est vrai, mais le height:: 1%; rend sous IE6 un affichage du contenu sur une surface de 1% de haut, collé en haut ( juste en dessous du header ) et donc avec une scrollbar verticale permettant le défilement du contenu ... Smiley decu

Enfin bon j'utilise maintenant l'implémentation javascript :
<!--[if lt IE 8]>
<script src="http://ie7-js.googlecode.com/svn/version/2.0(beta3)/IE8.js" type="text/javascript"></script>
<![endif]-->

qui résout pas mal de bug IE6 ...
Et je bidouille pour les autres bugs ...

merci
Bonjour,
tsouliang a écrit :
Ce que vous dites est vrai, mais le height:: 1%; rend sous IE6 un affichage du contenu sur une surface de 1% de haut, collé en haut ( juste en dessous du header ) et donc avec une scrollbar verticale permettant le défilement du contenu ... Smiley decu
Pas si overflow a été remis à visible comme indiqué plus haut Smiley cligne
Ha .... ok Smiley confused

hum ... sacré casse tête ... Smiley biggol

Je reste avec mon
<!--[if lt IE 8]>
<script src="http://ie7-js.googlecode.com/svn/version/2.0(beta3)/IE8.js" type="text/javascript"></script>
<! endif -->

car le design est stable avec ... et que je suis fatigué de jouer avec les #""?! d'IE ...

Merci pour tout, j'ai beaucoup apris grace à votre site, ses tuto, et vos interventions ! Smiley ravi