28173 sujets

CSS et mise en forme, CSS3

Coucou tlm,

je me suis mis au CSS suite a un probleme de frame sur mon site
mais le probleme c'est que je suis totalement novice en la matiere et j'essaye d'apprendre en regardant a droit a gauche mais c'est vraiment pas facile

j'ai utilisé une feuille de style que j'ai eu grâce au tutoriel et j'ai essayé de l'adapter pour mon site

le probleme vient du fait que je voudrais mettre une image sous mon menu avec la fonction "z-index: -1" ca marche sur firefox mais pas avec IE qui affiche mon menu a la suite de mon image

j'ai surfé pdt 6h cette nuit en vain , je pense que le problème vient du fait que je devrais utiliser des z-index positif mais j'arrive pas a faire fonctionner mon site en bidouillant a droit a gauche c'est pour cela que je m'en remet entre vos mains d'expert pour essayer de trouver le problème

voici le code de ma feuille de style :

body {
    margin: 0;
    padding: 0;
    font-family: Verdana;
    font-size: 10pt;
	font-weight: bold;
	color: #0000FF;
	background-color: #fff; 
	text-decoration:none
}

.conteneur { /*le conteneur global du site, qui sera centré */
position: relative;
width: 960px;
height: 935px;
margin: 0 auto; 
}

.header {
height: 221px;
background-color: #99CCCC;
}
.menu {
position: absolute;
z-index: 1;
left:0;
width: 238px;
height: 714px;

}
.frame {
margin-left: 238px;
width: auto;
height: 714px;
background-color:#9999CC;
overflow: auto;
}

.footer {
height: 20px;
font-family: Verdana;
font-size: 8pt;
font-weight: bold;
color: #000000;
background-color: #fff;
}


a:active {
	font-family: Verdana;
	font-size: 10pt;
	font-weight: bold;
	color: #0000FF;
	text-decoration:none
}


a:visited {
	font-family: Verdana;
	font-size: 10pt;
	font-weight: bold;
	color: #0000FF;
	text-decoration: none
}

a:link {
	font-family: Verdana;
	font-size: 10pt;
	font-weight: bold;
	color: #0000FF;
	text-decoration: none
}


et celui de ma page web

!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>
<title>Bienvenue sur le site</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="style.css">
</head>

<body>

<div class="conteneur">
         <div class="header"></div>
		 <div class="menu">
        <span style="position: absolute; left: -3; top: 52; z-index: -1">
        <img border="0" src="images/menu.jpg" width="240" height="417"></span></p>
		<p><b>Rubrique</b></p>


		</div>
		<div class="frame"></div>
	    <div class="footer"><?php include('footer.php'); ?></div>
</div>
</body>
</html>


j'ai réussi a apprendre le php assez vite mais pour ce qui est du CSS et du XHTML je cale vraiment Smiley bawling

Merci d'avance pour votre aide
Modifié par blacknightdefcon (31 Jan 2008 - 02:35)
Salut,

Déjà bienvenue dans le monde du HTML/CSS, et basta les iframe!!

Je ne suis pas sur d'avoir réellement tout saisi mais, d'aprés ce que je comprend tu cherches à mettre une image en background sous ton menu!?

Pour cela rien de plus simple que la propriété CSS background, ce qui conne pour ton exemple

<!-- HTML LAYOUT -->
<div id="conteneur">
  <div id="header"><h1>nom de ton site</h1></div>
  <div id="menu">
       <ul>
           <li>rubrique 1</li>
           <li>rubrique 2</li>
           <li>rubrique 3</li>
        </ul>
   </div>
   <div id="content">ton contenu</div>
   <div id="footer">ton footer</div>
</div>
<!-- COMMENT : Tai mis des ID car élément unique de ta page car les classe sont pour ciblé des éléments répétitifs au long de ta page -->


/* CSS */
/* je passe sur des définitions de largeur, etc...*/
#menu {
  width:....
...............
 [b]background:url(images/menu.jpg) top left no-repeat;[/b]
}


Perso, j'évite de trop jouer avec les z-index à moins de faire une mise en page un pe complexe ... Mais si tu commences en CSS, voit plutôt les propriétes de base et les type de block, etc ...

Dans la trousse à outils d'Alsa, ya des layout (bloc de conteneur) aussi avec les CSS qui vont bien avec! Smiley biggrin
c'est vrai que j'avais pas pensé a définir le background dans le fichier .css

je vais tester ca ce soir

en tout cas c'est super sympa d'avoir répondu a ce post et je te tiens au courant cette nuit de l'avancé

encore 1000x merci et c'est super sympa d'aider ceux qui débute car c'est vraiment pas évident au début , le css et le XHTML c'est vraiment un mode de mis en page particulier comparé a ce qui se faisait il y a plus de 10ans (un bon frontpage et un bloc note et tout passsé)

je vous tiens au courant

++
Modifié par blacknightdefcon (30 Jan 2008 - 16:17)
pour ce qui est de l'image ca fonctionne (merci encore geof)

j'ai mis en forme comme me l'avais suggéré geof mais j'ai tjrs un probleme avec Firefox et IE

en fait mon image de fond est un cadre et sous firefox la Rubrique 1,2,3 apparait bien dans le cadre mais sous IE la Rubrique 1 s'affiche en plein dans le cadre

upload/15594-nouveau-2.jpg

j'ai pris un screen de la partie de mon menu concerné

j'ai l'impression qu'il y a un probleme de style

sinon pour l'image de fond j'ai fait
.menu {
position: absolute;
left:0;
width: 238px;
height: 714px;
background:url('images/menu.jpg') no-repeat top left;
Smiley langue et elle s'est affiché (big merci a geof)
bonjour
c'est parceque firefox met des marges et ou padding d'office.

il suffit que tu rajoutes un padding-top à #menu

moi pour supprimer ces diférences, je commence souvent le CSS en mettant :
*{margin:0;padding:0;}
ainsi tu n'as que les marges et padding que tu définis toi-même
c'est parfois plus facile.
je viens de faire la manip

en ajoutant un padding top ca décale le menu vers le bas mais ca résoud pas le probleme de décalage entre les 2 navigateurs j'ai tjrs firefox ki decale plus le menu vers le bas que IE

je vais essayer de voir sur le web si ya un truc je vous tiens au courant
j'ai essayé d'agrandir la police de caractere pour me faire une meilleure image du probleme (font-size: 50pt;) le décalage est énorme

j'ai modifié mon css de la sorte :

.menu {
position: absolute;
left: 0;
width: 238px;
height: 714px;
background:url('images/menu.jpg') no-repeat top left;
padding-top: 0px;
padding-left: 0px;
margin-top: 0px;
margin-left: 0px;
text-align:center;
font-family: Verdana;
	font-size: 50pt;
	font-weight: bold;
	color: #0000FF; 
	text-decoration:none


}


j'ai précisé la taille des polices etc pensant a un pb de mise en forme
et j'ai (je pense) supprimer toute marge dans cette partie

j'ai aussi supprimer le menu pensant a une erreur d'interprétation du menu <ul et li> par IE et je l'ai remplacé par <p>Rubrique1</p>

le probleme vient de Firefox a priori (voir screen de mon menu avec une police de 50)

upload/15594-image0021.jpg

par contre j'ai surfé sur le web je cale pour trouver l'origine du problème

par contre sous IE la big "rubrique1" apparait bien au début comme je le souhaite
Modifié par blacknightdefcon (31 Jan 2008 - 00:57)
c'est bon j'ai essayé de refaire un menu au propre et cette fois ci il fonctionne
j'ai peut etre fait une erreur sur les tailles des cadres

la j'ai remis tout au propre sur papier et j'ai reussi a créer un menu sans le systeme de position absolute (au cas où le probleme viendrait de là)

encore merci pour votre aide , elle m'a été très précieuse

comme on dit tjrs : c'est en forgeant qu'on devient forgeron : le problème c'est que moi je me tappais sur la tete avec le marteau Smiley lol