Bonjour par chez-vous !
Ici c'est le début de l'hiver et on va ce les gelés correct...

N'empêche que la vie continue et me voilà donc devant ce nouveau défi.

Voici ce petit bout de code:

<!--

body {
	margin:0;
	padding:0;/* pour annuler les marges */
	width:100%;
	overflow:hidden;
	text-align:left; /*internet explorer j'ai tester et si je met center, l'image est décentrée*/
	background-color:#d6b05b;
	background-repeat:no-repeat;
}

#conteneur {
	
	width: 100% ;
             position:absolute;
	padding:0;
	text-align: center ;
	border:none;
	z-index:1;
	
}
#menu {
	/*j'ai essyé la position relative et cela a donner un résultat spécial en ce que la div restait static alors que je faisais grossir et rapetisser la taille de la fenêtre*/
	
	
	top:540px;
	left:0px;
	width:100%;/*ici j'ai mis cette valeur afin que mon menu s'ajuste de façon fluide à la page elle aussi fluide*/
	z-index:100;
	position:absolute;
	
	
}
	#menu ul
		{
			margin: 0 ;
			padding: 0 ;
			list-style-type: none ;
		}
		
		#menu ul li
		{
			margin: 0 0 5px 0 ;
			padding: 0 ;
		}
		
		#menu ul li a
		{
			
			display: block ;
			width: 100% ;/*ici je suis pas certain mais, je crois qu'il faut que mon image soit elle aussi fluide pour suivre l'idée du menu, ais-je raison de mettre 100 %?*/
			line-height: 33px ;
			color: #000 ;
			background: url(images/pas_flash.jpg) no-repeat 0 0 ;
			
		}
		
		#menu  ul li a:hover
		{
/*cette image est la petit image constituée de deux états comme dans le tutorial*/
	background: url(images/pas_flash.jpg) no-repeat 0 -33px ;
			
		}
</style>
</head>

<body>
<div id="conteneur">
  <div id="menu">/*ici j'ai mis une div, car je ne connaissais pas d'autre méthode pour superposer l'élément menu à l'élément conteneur. J'ai donc élaboré un jeu de calques*/
    <ul>
		<li><a href="#"></a></li>
	</ul>
  </div>

/*cette image est l'image de fond de ma page, et je veux qu'elle soit fluide*/
<img src="images/fond_pour_page_presentation.jpg" alt="bienvenue sur le site de l'ArrimAge" width="100%"/></div>


</body>
</html>


Je commence un peu à prendre de l'assurance avec CSS et cela m'amène à faire des tentative de mixage entre les tutos présentés ici.

Ce code me sert pour un page de présentation qui propose aux internautes de télécharger flash player.J'ai intégré un bouton que j'ai nommé menu et qui réagit au survol comme dans le tuto. Pour le bouton c'est ok. Or voilà où ca se corse, j'ai aussi intégré un format de page fluide (elle fonctionne aussi, même si je suis pas sûr d'avoir tout compris encore...). Vous imaginez sûrement qu'en bon débutant que je suis, je me suis rebuté à une montagne d'e questionnements.

En gros, il faut que ma balise menu soit positionnée au même endroit quelque soit la résolution de l'écran. (il s'agit d'un jeu d'images avec le fond d'écran) Or, la balise menu change de position aussitôt que je change la résoution, c'est le bordel ! J'ai pourtant mis mes balises en dehors du flux ? Que se passe t-il ? Quelqu'un pourrait-il avoir l'amabilité de m'aider à comprendre ce qui ne vas pas ?

Est-ce que mon projet est réalisable ?

Merci beaucoup, vos conseils sont très appréciés, soyez-en certain !

Yannick Tremblay, webmestre apprentit.
Salut.

Un exemple en ligne serait vraiment un plus, surtout si on doit jouer avec un "jeu d'images" en background Smiley cligne
Re.

Waouw. Quelle horreur, plein de texte dans des images d'arrière-plan
Smiley biggol .

Je pense que tu devrais découper ta page en 2 voire 3 zones avec des divisions. D'une part parce que c'est logique (titre & "contenu" constituent des zones distinctes) et d'autre part, parce qu'on fait d'une pierre deux coups Smiley smile

Tu pourras ensuite te servir de ces divs pour obtenir un positionnement plus précis.

Par ailleurs, je ne sais pas si tu te rends compte de la taille des images d'arrière-plan qu'il va te falloir pour réaliser un fond graphique sur toute la page dans toute les résolutions Smiley eek Ton exemple pèse 500 ko et des cacahuètes, et tu ne pourras jamais optimiser suffisament tes images pour descendre à une taille raisonnable Smiley ohwell (80 ko, pour les optimistes, 30 ko pour les puristes Smiley smile )
Allo!

Oula! Je mes fais taper sur le doigts ! C'est bien comme cela, ainsi je comprendrai pour la prochaine fois...

Donc pas de texte sur l'arrière plan. Même pas un petit peu ? En quoi ca dérange ? (curieux)

Et tu crois qu'en découpant avec des calques, tout ira pour le mieux ?
J'ai de la difficulté à saisir. Tu parles de faire un genre de montage CSS du genre tableau mais pas superposé ?

Si tu pouvais m'expliquer pourquoi ma div menu ne change pas ma en fonction de ma div conteneur je t'en serai très reconnaissant.

Pour la taille de l'image, c'est sûr, c'est un peu pesant... Smiley confused
Mais en fait, je ne sais pas comment faire pour avoir :
a écrit :
des images d'arrière-plan qu'il va te falloir pour réaliser un fond graphique sur toute la page dans toute les résolutions



Aurais-tu une suggestion de méthode pour paramètrer les images de fond dans mon cas?

Merci infiniment pour tes réponses.

Yannick Tremblay, webmestre...apprentit par 'tit peu...
Modifié par akinayotaka (09 Nov 2006 - 22:19)
a écrit :
Donc pas de texte sur l'arrière plan. Même pas un petit peu ? En quoi ca dérange ? (curieux)
Le texte, c'est de l'information, du contenu. L'image, c'est de la décoration, de la mise en forme. Le contenu doit toujours se trouver dans le code HTML, tout ce qui est mise en forme étant réservé aux CSS. Les raisons sont multiples : principe (séparation fond/forme), accessibilité (les lecteurs d'écran ne savent pas encore lire les images), ...

N'oublie pas qu'en l'absence d'image ou de feuille de style (que ce soit du côté de ton serveur ou du côté de l'utilisateur) ta page est presqu'entièrement vide. Et donc inutilisable.

a écrit :
Tu parles de faire un genre de montage CSS du genre tableau mais pas superposé ?
Je pense à quelque chose de très simple :
<div id="header">Bienvenue sur le site officiel de l'arrimage</div>
<div id="verifFlash">
   <div id="bandeau">La bande que tu veux positionner</div>
   Le reste du texte.
</div>
En donnant une hauteur au #header, tu obtiendras le même effet que maintenant. Mais tu pourras ensuite positionner la bande qui se promène par rapport à son parent, #verifFlash, à l'aide de marges ou d'un positionnement absolu.
Merci beaucoup Sopo pour tes éclaircissements.
Tu sais, ce sont des choses de bases que je dois savoir et il n'y a vraiment que des gens expérimentés comme toi qui peuvent me les apprendre.

Déjà aujourd'hui, j'ai appris pas mal de petites subtilités, je vais les mettre en pratique demain et je t'en redonnerai les conclusions, cela pourrai aussi en aider d'autre puisque cela sera dans les archives du formidable forum qu'est Alsaceations.

Alors là-dessus, bonne nuit et à demain !

Yannick Tremblay, webmestre un 'tit peu plus qu'hier... Smiley cligne
Ouaaa!

Bonjour Sopo,
J'ai fait tous les tutoriaux d'alsacreations plus ceux d'open web. Je boss depuis 2 jours entier sur ce fichu bug et pas question que ca fonctionne Smiley confus J'en perds mon latin (que j'ai même po)...

Pourrais-tu m'aider s.v.p. ?

Voici le code que j'ai pondu:
<style type="text/css">
<!--
body{ margin:0;
      padding:0;
	 
	  }

#conteneur {
	position:absolute;
	width:100%;/*pour mozilla*/
	z-index:1;

}
ul#menu li
		{
			margin: 0 ;
			padding: 0 ;
			display:block;
			width:100%;
			
		}
ul#menu {
	position:absolute;
	width:100%;/*pour mozilla*/
	margin-top:45.5%;/*le truc c'est de placer les éléments avec les marges...*/
	padding: 0 ;
	list-style-type: none;
	z-index:1;

}

ul#menu li a:hover
		{
		    display: block ;
			width: 100%;
		    color: #000 ;
			text-indent: 40% ;
			text-decoration: none ;
			background: url(images/presentation_arrimage_htmlbouton.jpg ) no-repeat 0 0 ;
		}
-->
</style>
</head>

<body>
<div id="conteneur"><!--si je met l'image du conteneur ici, elle sera placée par dessus l'image du menu !!!-->
 <ul id="menu">
		<li><a href="#">item n°1</a></li>
 </ul>
<img src="images/presentation_arrimage.jpg" alt="page_de_presentation" width="100%"/></div>
</body>
</html>


le topo (ne tient pas compte des textes fondus dans l'image, cela sera changé plus tard) mon li a hover est bidon. le background ne s'adapte pas à la taille de l'écran. Si je mets l'image dans le menu directement, tout est ok mais, ce n'est pas là qu'il faut qu'elle aille !

Je suis fourré comme on dit en québécois...

Je crois que c'est parce que je devrais dire à mon background, prend 100% de la largeur, mais je ne sais pas comment faire...

Cela ce fait-il ? La chose à l'air si simple à produire et mon incapacité à le faire me déroute carrément.
J'en suis même rendu, avec tout ce que j'ai lu, à me demander si une mise en page fluide complexe peut-être faites et visionner uniformément sur les principaux navigateurs.

Et, aurais-tu l'adresse pour installer automatiquement le player ? Celle que je dois mettre sur le bouton.

Merci pour tes conseils ...

Un webmestre position:confus;
Modifié par akinayotaka (12 Nov 2006 - 18:55)
Reboujour tous le monde...

Après plusieurs centaines de tentatives exploratoires sur le positionnement j'aurais une question à vous poser.

Comment ce fait-il qu'un bloc positionné en absolute ce place en dessous d'un bloc dans le flux. Le bloc dans le flux est au dessus du bloc absolute dans le code HTML et les deux sont séparés.

Je sais qu'un bloc positionné en absolute se positionne en fonction du premier ancêtre positionné. Mais dans le tuto sur le sujet, on définit un ancêtre positionné comme étant une div en position absolute ou relative. Comment ce fait t-il alors que la boîte en absolute ne se positionne pas relativement au body et qu'elle se positionne en fonction du premier élément du flux ?


.conteneur {
  padding-top: 20%;
  padding-bottom:12px;
  margin-left:-10%;
  border:#339966 dashed thick ;
  background-color:#33FFFF;/*turquoise*/
  
 
} 
 .abs{
  position:absolute;
  background-color:#CC9933;/*jaune-brun*/
  width:200px;
  height:200px;
  margin-top: 0px;
  margin-left:90%;
} 


-->
</style>
</head>
<body>

<div class="conteneur"></div>
<div class="abs"></div>



</body>
</html>


Merci à tous pour vos éclaircissements !

P.S. Quelqu'un pourrait-il me dire comment un internaute (à la pression d'un bouton) peut faire installer automatiquement flash player sur son ordinateur.Il doit bien y avoir un lien qui installe flash automatiquement puisque quand firefox n'a pas le player il l'installe tout seul et cela au simple fait de répondre oui (appuyer sur un bouton installer)...
Modifié par akinayotaka (16 Nov 2006 - 15:17)
Bonjour,

Merci de bien vouloir éditer ton dernier post afin d'employer le bouton "code" pour encadrer ton exemple.

Si tu souhaites positionner ton bloc par rapport au body, il faut aussi préciser la position :


 .abs{
position:absolute;

top : 0;
left : 0;

background-color:#CC9933;/*jaune-brun*/
width:200px;
height:200px;
margin-top: 0px;
margin-left:90%;
} 

En l'absence de paramètres de positionnement, le bloc se positionnera là où il est placé.
Ceci est d'ailleurs indiqué dans
ce tuto

a écrit :
Si les valeurs top et left sont inexistantes, le bloc apparait là où il est déclaré ce qui peut servir pour placer correctement dans la page des éléments superposés.

Smiley cligne

Par ailleurs, concernant ta dernière question, mieux vaut-il créer un nouveau sujet ... après avoir fait une recherche, bien sûr.
Bonjour Véro,

Je suis désolé pour le code. J'avais oublié de fermé la balise.

Pour le positionnement, je croyais qu'avec des valeur inscrites au niveau des marges cela ferait l'affaire mais, il est clair que je ne comprenais pas tout à fait le principe. Si je récapitule, et tu me corrigeras le cas échéant, il faut toujours employer des positions avec left etc. Pour positionner un bloc en absolue ?

Une autre question qui me travail concenant le positionnement implique la valeur height. Si je fixe une valeur de 100% à un bloc dans le flux, il ne prend pas toute la page. Est-il vrai de dire que pour qu'une valeur height:100%; soit relative au body, il faut que cette boîte soit en abslolute sinon, la valeur height ne veut rien dire pour lui ?

Pour le nouveau sujet, c'est sûr que devant la pérénité de l'utilité du sujet, il serait bon pour la communauté que je déplace la question dans un autre message.

Ha! la jeunesse ! hihihi... je ferai la chose et je ferai plus attention à ce détail dans l'avenir.

Merci pour tout,

à plus!

Yannick Tremblay
Modifié par akinayotaka (16 Nov 2006 - 16:58)