28172 sujets

CSS et mise en forme, CSS3

Bonjour à tous,

Je suis débutant dans la programmation PHP et le développement en HTML et CSS. Je m'occupe de la création d'un site internet pour une amie psychologue qui voudrait avoir sa vitrine sur le web.

Je fais face à un petit soucis au niveau des marges de l'entête de ma page. Celles-ci sont à zéro mais lorsque j'utilise PHP pour inclure le menu que je veux mettre dans une page séparée, la marge supérieur revient.

Pouvez-vous me dire ce qui cloche ?

En vous remerciant.

Bien à vous !

------------

index.php
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8" />
		<link rel="stylesheet" href="style.css"  type="text/css" />
		<title>Juliette Courma - psychologue</title>
	</head>
	<body>
<?php
include('menu.inc.php');
?>
		<div id="corps">
			<h3>Bienvenue sur mon site internet</h3>
			<br/>
			<br/>
			<p><img src="img/piscine.png" alt="Homme au bord d'une piscine en forme de crâne" width="247" class="imageFlottante" />Lorem ipsum dolor sit amet, consectutuer adipiscing elit. Donec vitae lorem imperdiet lacus molestie molestie. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec eu purus. Phasellus metus lorem, blandit et, posuere quis, tinidunt vitae, ante. Vivamus consequat mauris a diam. Vivamus nibh erat, hendrerit nec, aliquet ut, hendrerit quis, nunc. Vestibulums et turpis et elit tempor eusimod. Lorem ipsum dolor sit amet, consectutuer adipiscing elit. Donec vitae lorem imperdiet lacus molestie molestie. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec eu purus..</p>
		</div>
	</body>
 </html>


style.css
*
	{	
		font-family: Georgia, Trebuchet MS, Verdana, sans-serif;
		padding: 0;
		margin: 0;
		border-width: 0px;
		border-style: solid;
	}
#entete
	{
		border-width: 0px;
		border-style: solid;

		background-image: url('img/fond.png');
		height: 220px;
		width: 100%;
	}
.titre
	{
		border-width: 0px;
		border-style: solid;

		padding-top: 20px;
		padding-left: 10px;
		padding-right: 0px;

		font-size: xx-large;
		color: white;
		font-weight: bold;
		text-indent: 0px;
	}

.menu 
	{
		border-width: 0px;
		border-style: solid;
		
		float: left;

		margin-left: 5px;
		margin-right: 30px;
		margin-top: 135px;
		padding-top: 5px;

		width: 110px;
		height: 31px;

		text-align: center;
		font-size: normal;

		background-image: url('img/button.png');
	}


menu.inc.php
		<div id="entete">
			<p class="titre">Juliette Courma : psychologue, psychotérapeute</p>
			<div class="menu"><a href="index.php">Accueil</a></div>
			<div class="menu"><a href="diplomes.php">Diplômes</a></div>
			<div class="menu"><a href="experience.php">Expérience</a></div>
			<div class="menu"><a href="publications.php">Publications</a></div>
			<div class="menu"><a href="coordonnees.php">Coordonnées</a></div>
		</div>


Le problème est bien lorsque j'utilise <?php include('menu.inc.php')?> la marge supérieure apparaît et lorsque le menu est directement intégré dans index.php, le problème disparaît.
Modifié par destroydaworld (12 Jan 2013 - 14:38)
Désolé de ne pas avoir été clair.

En fait, mon entête est composée d'une image (fond.png) et le div de mon entête a les marges à 0 pour que l'image soit collée aux bords de la fenêtre du navigateur. Lorsque je met le div de mon entête dans un fichier séparé et que j’appelle ce fichier avec PHP, une marge supérieure apparaît, comme si margin: 0; ne faisait plus effet.

J'espère avoir été plus clair, n'hésitez pas à me demander plus d'information le cas échéant.

Merci encore Smiley smile
Modifié par destroydaworld (11 Jan 2013 - 16:21)
Salut,

Un petit lien et je pense que ce serait vite réglé...
Sinon, tu peux utiliser les outils de développement de ton navigateur ou firebug pour voir exactement ce qui est appliqué à ta div#entete ou à ton p.titre !

Dans l'absolu, il n'y a pas la moindre raison que le rendu soit différent...

tm
Comme demandé, voici le lien du site concerné :

www.enora-marcoux.com

Je parle de la marge entre le bandeau bleu en haut et le haut de la fenêtre. Dans la section 'Expérience', je fais appel à une include PHP pour insérer le menu et une marge apparaît.
Modifié par destroydaworld (11 Jan 2013 - 16:52)
J'ai vu ton problème de marge. Essaie de mettre "margin:0px;" au lieu de "margin:0;" Ça peut régler le problème.
@toms66 > Merci pour ton intervention, malheureusement le problème reste le même. Ce qui me chiffonne, c'est que ça marche très bien sans l'intervention de PHP. Par contre, dès que j'utilise un include, ça l'annule, c'est hyper bizarre.

Y'a un format spécial pour les fichiers que l'on inclus via PHP ? La feuille de style doit être appelée également, il ne me semble pas.

Merci pour votre aide.
Dans ton fichier css, mets à la place de l'asterix (en haut):body. Mets également, margin:0px; et padding:0px; j'ai déja eu ce problème et cela l'avait réglé.

Si cela ne marche pas, essaie une autre façon d'inclure le fichier:
Renomme le: "menu.txt"
et appelle le de la façon suivante:

<?php
$menu = file_get_contents('menu.txt');
echo $menu;
?>

Sur mes sites, j'appelle les menus de cette façon là.
Bonjour Tom66,

J'ai essayé ta méthode, malheureusement elle ne fonctionne pas.

J'ai essayé de laisser les balises <div class="entete"></div> dans le fichier et de mettre que les liens dans le fichier menu.txt. Il n'y a plus de marge entre l'image et le haut, mais une marge est apparue entre mon texte et le haut de la page.

Je te laisse vérifier sur 'Expériences'.

Encore merci à toi Smiley smile
Salut,

J'ai pas bien compris ton problème de marge (à part sur la page Expériences que tu viens de nous indiquer), mais je crois savoir d'où il vient.

Il semblerait qu'il y ait un (ou plusieurs) caractères bizarres dans ton fichier PHP, un genre de texte qui ne s'affiche pas dans le navigateur mais qui prend de la place quand même.

On le voit en copiant l'intégralité du code source de la page Expériences dans un éditeur de texte genre notepad++, il y a un caractère '?' qui s'affiche.

Si tu as des espaces au début de ton fichier PHP, supprime-les et refais les. Vérifie l'encodage du fichier aussi (si ça se trouve il est en UTF8 'avec BOM' au lieu de 'sans BOM'). Tu peux vérifier l'encodage avec notepad++ par exemple.
@jiber2fr > Merci beaucoup !! Le problème a été résolu semble-t-il par l'encodage UTF-8 sans BOM). J'ai même pu laissé les tab au début du fichier pour un code plus clair.

Encore merci !!

PS : étant débutant dans la programmation HTML/CSS PHP/SQL y'a-t-il des erreurs grossières que j'ai faites et qu'il faudrait relever ? Merci Smiley smile
Modifié par destroydaworld (12 Jan 2013 - 14:38)