Rechercher : dans
Par :

Probleme de DIV + CSS

Dernière réponse le 10 fév 2009 à 09:41:19 P-Xelle, le 9 fév 2009 à 11:27:47 
 Signaler ce message aux modérateurs

Bonjour,

Tout d'abord, voici mon code :

Page php :
<div id="page">
..... d'autres DIV
</div>


CSS :
#page {
margin-left: auto;
margin-right: auto;
background-image: url(wp-content/themes/theme_natie/images/fond.jpg);
}



Je cherche à mettre une image en background de ma div "page". Avec cela, ça ne s'affiche pas.
Ensuite je voudrais qu'elle contienne toutes les autres div de ma page afin de tout centrer quelque soit la taille de la fenêtre du navigateur.
Enfin, je travail en local donc l'url de mon image de fond et bon.


Je suis actuellement en stage donc sans vouloir faire le "boulet" j'aimerais une réponse assez rapide SVP, car j'ai besoin d'avancer sur mon projet (à rendre dans 1semaine/1semaine et demi).

Merci beaucoup pour le coup de pouce ! =D

Configuration: Mac OS X
Firefox 3.0.6

Meilleures réponses pour « Probleme de DIV + CSS » dans :
Les CSS pour présenter vos images VoirPour présenter agréablement vos images, vous pouvez intégrer quelques codes supplémentaires dans votre CSS et vous en servir à bon escient. Elles sont bien sur modulables en fonction de la charte graphique de votre site. Utilisation Mettez les codes...
Créer une DIV avec transparence VoirLes DIV transparents en CSS Vous voulez rendre une DIV transparente ? Rien de plus simple, il suffit d'utiliser une des techniques CSS suivantes : Rendre le DIV ainsi que le contenu transparent Le div lui même sera transparent, mais aussi...
Les classes de style (CSS) VoirLes classes et les ID Les classes Il peut s'avérer intéressant d'affecter des styles différents à des mêmes balises. Pour cela les spécifications CSS ont introduit le concept de classe. La définition des classes est aussi simple que celles des...
Positionner des éléments grâce aux CSS VoirIl est possible grâce aux feuilles de style de positionner au pixel près du texte ou des images grâce aux balises et . Cela est possible avec les versions 4 de Netscape et d'Internet Explorer, cependant cette technique reste hasardeuse...
DHTML - La notion de couche VoirQu'est-ce qu'une couche? Le DHTML est basé sur une fonctionnalité provenant de la norme 4.0 du HTML: les feuilles de style en cascade de positionnement, aussi appelée CSS-P (Cascading Style Sheets Positionning). Celles-ci permettent de définir des...

1

Azraka, le 9 fév 2009 à 11:30:08

Il faut pas des guillemets dans url ? Genre :

background-image: url('wp-content/themes/theme_natie/images/fond.jpg'); 
Le jour où Microsoft inventera un truc qui ne se plante pas ­ce sera un clou..

Répondre à Azraka

5

arthezius, le 9 fév 2009 à 11:36:47
  • +1

Non pas besoin dans ce cas. Webmaster indépendant.

Répondre à arthezius

2

arthezius, le 9 fév 2009 à 11:32:33
  • +1

Enfin, je travail en local donc l'url de mon image de fond et bon. 

L'un n'implique pas forcement l'autre...
Vérifie quand même.

ce que je fais parfois pour vérifier le positionnement de mes div c'est d'y rajouter momentanément un cadre (border).
Exemple:
border:1px solid #000; 
Webmaster indépendant.

Répondre à arthezius

3

remi3211, le 9 fév 2009 à 11:33:14

Dans ce cas insère la mais ne la met pas en background, met la direct dans ton fichier html.
pour cela :
<img style="border: 0px solid ; width: longueur en px; height: largeur en px;" alt="" src="nom.attribut">
exemple:
<img style="border: 0px solid ; width: 180px; height: 40px;" alt="" src="films.bmp">


et pas besoin de css !

Répondre à remi3211

6

Dalida, le 9 fév 2009 à 11:38:00

Salut,

très mauvais conseil.
à ne pas suivre !

[ Mathieu ]

Il y a sûrement des pandas pour ne dépendre de rien

Répondre à Dalida

4

Dalida, le 9 fév 2009 à 11:36:06

Salut,

si ton <div> ne sert à rien d'autre tu peux le faire directement sur <body>.

body{
width:800px; /* à adapter */
margin:0 auto;
background-image:url(tonimage.jpg);
background-position:50% 0;
background-repeat:no-repeat;
}

si l'image ne s'affiche pas, vérifie ton ciblage en appliquant une propriété bidon et en voyant si elle s'applique bien :
body{
border:1px solid red;
}

si cette propriété s'applique c'est que l'URL de l'image est mauvaise. si ton style est dans une feuille de style distincte et qu'elle est contenue dans un dossier, ajoute "../" au début de ton URL.
les guillemets ne sont pas obligatoires pour l'URL.
[ Mathieu ]
Il y a sûrement des pandas pour ne dépendre de rien

Répondre à Dalida

7

Emnuam, le 9 fév 2009 à 11:38:07

Bonjour,

pour centrer une div de façon compatible tous navigateurs, il suffit de donner une taille fixe à cette div puis de lui donner des valeurs de margin droite et gauche en "auto".

/* par exemple */

#page {
width: 700px; // à modifier selon le résultat voulu
margin: 0 auto; // cette notation désigne les valeurs de marign haut et bas pour le premier chiffre puis gauche et droit pour le suivant.
}

Répondre à Emnuam

8

remi3211, le 9 fév 2009 à 11:40:24

Il veut mettre en fond de page ou insérer l'image ??
car si c'est en fond de page jme suis trompé tu as raison dalida
parce que je peux t'aider si c'est en fond de pâge

Répondre à remi3211

9

arthezius, le 9 fév 2009 à 11:42:38

Il cherche visiblement à la mettre en fond d'une div qui sert de container a d'autre div. Webmaster indépendant.

Répondre à arthezius

11

P-Xelle, le 9 fév 2009 à 11:51:41

Exact ! :)

Répondre à P-Xelle

10

P-Xelle, le 9 fév 2009 à 11:51:13

arthezius :
<<ce que je fais parfois pour vérifier le positionnement de mes div c'est d'y rajouter momentanément un cadre (border). >>
Je fais la même avec des background de couleur ^^

remi3211 :
C'est en fond de DIV !


Oui Dalida, je vais tester en fond de page pour voir, je vous tiens au jus.
Mais en fait je ne peux pas le laisser en fond de page car j'ai besoin que l'image soit toujours derrière ms autres div même quand je redimensionne...

Répondre à P-Xelle

12

Dalida, le 9 fév 2009 à 12:03:30

je vais tester en fond de page pour voir
ça c'est juste pour simplifier le HTML.
sinon fais exactement la même chose avec ton <div>.

et pour l'image, si elle ne s'affiche toujours pas regarde du côté de l'URL, ça doit manquer de point point barre…
[ Mathieu ]

Il y a sûrement des pandas pour ne dépendre de rien

Répondre à Dalida

13

P-Xelle, le 9 fév 2009 à 13:17:10

Alors...

J'ai testé avec l'image en fond :
body { ...
etc.

Ca ne fonctionne pas.
j'ai rajouté les bordure, et là je m'aperçois que la div ne prends pas toutes mes div ! (elle laisse "left" et "content")

Voici la hiérarchie des div :

dans mon fichier header.php :

<div id="page">
       <div id="header">
              <div id="logo"></div>
              <div id="band_menu">
                     <div id="bandeau"></div>
                     <div id="menu"></div>
               </div>
               </div>
         </div>

// la div "page" se ferme sur ma page index que voici :

<?php get_header(); ?>// appel de la page header.php
      <div id="left"></div>
     <div id="content">
            <div id="text_present"></div>
            <div id="cadre1"></div>
     </div>

</div>  // fermeture de la div "page"


J'ai suivit un tuto pour créer des templates de wordpress donc le fait que ma div "page" soit coupé est normal, à priori.
Même sans êrte coupée, elle ne prends que mon entete.

EDIT : en fait l'image s'affiche avec l'url : http://localhost:8888/....bla bla bla.../images/fond.jpg
Seulement ca reste dans ma div "header" !

Voici un schéma de ma page :
http://img212.imageshack.us/my.php?image=sanstitregu8.png

Répondre à P-Xelle

14

Dalida, le 9 fév 2009 à 13:24:59

Re,

la div ne prends pas toutes mes div !
doit y avoir du flottement pour les <div> contenus essaie de lui ajouter {float:left;}.

as-tu une version en ligne ?
[ Mathieu ]

Il y a sûrement des pandas pour ne dépendre de rien

Répondre à Dalida

15

P-Xelle, le 9 fév 2009 à 14:00:07

Non pas de version en ligne, désolé. :/

Ok, je vais essayer les float:left

EDIT :
En enlevant :

float: left;

des DIV "content" et "left" et ma DIV "page" les prends.
Seulement maintenant "content" et "left" sont l'une au dessous de l'autre !

Je pense qu'il faudrait rajouter encore une div qui englobera "content" + "left" + ma 3eme DIV que je dois rajouter par la suite et qui les mettra bien en place. (e vais tester) !

Mais ca ne fait pas trop de DIV ?? y'a t'il une limite à respecter étant donnée que mes DIV sont toutes utiles à la mise en page ?

Répondre à P-Xelle

17

Dalida, le 9 fév 2009 à 17:59:27

y'a t'il une limite à respecter étant donnée que mes DIV sont toutes utiles à la mise en page ?
théoriquement non.
les <div> ne servent qu'à organiser le contenu et à faire de la mise en page.

Les éléments DIV et SPAN, en conjonction avec les attributs id et class, offrent un mécanisme générique qui rajoute de la structure aux documents. Ces éléments définissent le contenu comme étant en-ligne (SPAN) ou de bloc (DIV) mais n'imposent aucune autre expression de présentation sur le contenu. Ainsi, les auteurs peuvent utiliser ceux-ci en conjonction avec les feuilles de style, l'attribut lang, etc., pour exploiter HTML selon leurs besoins et leurs goûts propres.

source

mais bon, faut pas non plus pousser et tomber dans l'excès de balises (soupe de tags).
cela complique ton code, donc c'est plus difficile à coder et à maintenir et ça finit par noyer la structure.
mais dans ton cas, on en est loin !

bon courage pour la suite !
-;o)
[ Mathieu ]
Il y a sûrement des pandas pour ne dépendre de rien

Répondre à Dalida

18

 P-Xelle, le 10 fév 2009 à 09:41:19

Ok d'acc' merci ! ;)

Répondre à P-Xelle

16

P-Xelle, le 9 fév 2009 à 15:19:23

Bon ca à l'air d'être bon tout ca.
Merci à vous tous ;)

Bonne continuation !
tchô

Répondre à P-Xelle