[CSS] mise en page 4 div sous IE
bonjour,
j'ai du code qui marche parfaitement sous firefox, mais pas sous IE
ca doit ressembler à cela
- * titre tout en haut sur toute la largeur, fixe
* menu à gauche, largeur fixe, tout rempli dans la hauteur
* le contenu, à droite (avec un overflow) : c'est une espèce d'iFrame, mais en CSS
* l'équivalent du titre, mais en bas, fixe
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
+--------------------------------------------+
| titre |
+--------------------------------------------+
| | |
| | |
| | |
| | |
| Menu | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
+--------------------------------------------+
| bas de page |
+--------------------------------------------+ |
le HTML :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| <?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<link rel="stylesheet" type="text/css" href="./style.css"/>
</head>
<body>
<div id="enHaut">
Titre
</div>
<div id="menu">
Menu 1
<ul>
<li>item de menu</li>
<li>item de menu</li>
<li>item de menu</li>
<li>item de menu</li>
<li>item de menu</li>
<li>item de menu</li>
<li>item de menu</li>
</ul>
<div class="spacer"> </div>
</div>
<div id="iFrame">
Le contenu :
<div id="contenu">mon contenu
</div>
<div class="spacer"> </div>
</div>
<div id="enBas">
Messages d'erreur
</div>
</body>
</html> |
avec la CSS associée :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
| * {
margin: 0;
}
#enHaut{
background-color: red;
width: 100%;
height: 35px;
position: absolute;
top: 0px;
left: 0px;
right: 0px;
text-align: center;
}
/* hack IE */
html>body #enHaut {
position: fixed
}
#menu{
background-color: blue;
position: absolute;
width: 150px;
left: 0px;
top: 35px;
bottom: 35px;
}
#iFrame{
background-color: yellow;
position: absolute;
float: right;
/* margin-top: 35px;
margin-bottom: 35px;
margin-left: 150px;
margin-right: 0px;
*/
top: 35px;
bottom: 35px;
left: 150px;
right: 0px;
overflow: auto;
}
#enBas{
background-color: green;
position: absolute;
width: 100%;
height: 35px;
bottom: 0px;
left: 0px;
right: 0px;
text-align: center;
}
.spacer {
clear: both;
visibility: hidden;
}
#contenu {
margin: 15px;
} |
sous firefox, cela fait ce que je veux : la colonne de menu et la partie contenu remplissent tout l'espace vertical dispo grace au "spacer", mais pas sous IE. Comment faire ?
ps : IE obligatoire, donc pas de remarque la dessus svp... le client est roi
Merci d'avance