28220 sujets

CSS et mise en forme, CSS3

Bonjour,

En essayant de faire la mise en pratique du livre à la page 95, il est demandé d'insérer une image de fond pour le titre principale, donc de la balise <h1>.
Le problème est qu'en utilisant la propriété "background-image: url(image.png);" mon image ne s'affiche pas en fond mon code css global est :

h1 {
background: url(fond.jpg) left top;
}
h2 {
border-bottom : 2px solid blue ;
padding-bottom : 5px ;
}
#pied {
border-top : 1px solid blue;
background: yellow ;
padding-top: 2px ;
}


et mon code html est:

<ul id="menu">
<li><a href="#">Retour à l'accueil</a></li>
<li><a href="#">Présentation de la région</a></li>
<li><a href="#">Historique de l'Alsace</a></li>
<li><a href="#">Gastronomie locale</a></li>
<li><a href="#">Hôtels et gîtes</a></li>
<li><a href="#">Photographies</a></li>
</ul>
<h1><a href="photos.htm" title="photos d'Alsace">Bienvenue en Alsace
</a></h1>
<h2>Une belle région française</h2>
<p>Paragraphe associé au sous-titre de niveau 2.
<a href="photos.htm" title="lien vers des photos d'Alsace">
<img src="image.png" alt="photographie" /></a></p>
<h2>Un patrimoine considérable</h2>
<p>Paragraphe associé à cet autre sous-titre de niveau 2.</p>
<p id="pied">Pied de page et <a href="?">Mentions légales</a></p>


si on regarde le code présent sur le site d'Alsacréations, c'est exactement le même code. Pourtant, je n'arrive pas à afficher mon image en fond sur mon titre <h1>. J'ai essayer de l'afficher via mozilla et IE mais l'image ne s'affiche toujours pas. J'ai essayer la propriété "background-image" toute seule dans une <div> avec un "background-color" et des dimentions mais je n'ai toujours pas su voir mon image. Mon image si on regarde bien les codes est la même sauf qu'une est appelée par <img> dans l'html et celle la s'affiche sans problème mais cette même image apelée via css n'est pas mise en background.
J'ai tapé mon code css via plusieurs logiciels mais le résultat ne change pas. Ai-je fait une erreur quelque part?????
Mon doctype est :

<!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 en Alsace</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="styles/styles2.css" />


je m'en remet à vous pour m'aider à trouver la solution car je tourne en rond pour une propriété qui parraît tellement simple.

Merci d'avance
Modifié par Chaos (18 Sep 2005 - 11:17)
Bonjour,

Chaos a écrit :
Mon image si on regarde bien les codes est la même sauf qu'une est appelée par <img> dans l'html et celle la s'affiche sans problème mais cette même image apelée via css n'est pas mise en background.


Première cause d'erreur probable : quand une image est utilisée en background CSS, son url (le chemin qui y mène) est relatif au fichier CSS, et non à la page HTML.

Autrement-dit, vérifier d'abord si background: url([b]fond.jpg) left top;[/i] permet effectivement d'atteindre l'image en partant du répertoire où se trouve le fichier CSS. C'est à dire ici si l'image est dans le même répertoire que le fichier CSS...
Modifié par Laurent Denis (18 Sep 2005 - 11:10)
Je sais pas si c'est ça mais....

Il faut faire attention au chemin de ton image, c'est à dire à l'endroit où il se trouve dans ton disque dure (ou ton espace ftp si ton site est déjà sur le web).

Par exemple dans ton dossier "Mon site" tu as un dossier "Mes Fonds" dans le quel se trouve ton image "fond.jpg" (sans les guillements bien entendu).

La page css sur le quel tu travaille se trouve dans ton dossier "Mon site"

Donc pour le chemin, il va falloir que tu mette ceci :

background-image: url("../Mes Fonds/fond.jpg");

Modifié par Damonya (18 Sep 2005 - 11:10)
C'est fort probable que cela soit la cause. J'avais oublier ce petit détail. C'est assez gênant Smiley langue . Merci de m'avoir rappeler de devoir faire attention même a ces petits détails