Probleme d'affichage css

Fermé
lolo - 22 août 2012 à 17:54
Idéophage Messages postés 43 Date d'inscription mardi 21 août 2012 Statut Membre Dernière intervention 23 novembre 2013 - 24 août 2012 à 15:49
Bonjour,
J'ai inclus à la page "Acceuil" ma page d'en-tête avec :
<?php include 'Entete.php'; ?>
mais g du inclure également le design de l'en-tête car malgré le fait que la ligne :
<link href="DesignEntete.css" rel="stylesheet" type="text/css"> soit dans le head de l'en-tête le design ne saffiche pas si je ne met pas :
<?php include 'Entete.php'; include 'DesignEntete.css' ?>
Mais mtn que j'ai mis ca le design s'affiche mais il s'écrit en ligne de code également dans ma page d'accueil!! que faire??


2 réponses

Idéophage Messages postés 43 Date d'inscription mardi 21 août 2012 Statut Membre Dernière intervention 23 novembre 2013 5
24 août 2012 à 01:21
Pourrais-tu donner le code (minimal si possible) ?
Désolé, peut-être que ce que je vais sire est évident, mais on ne sait jamais :
il faudrait que ça ressemble à ça :

entete :
<header>
<h1>Titre - entête</h1>
</header>

page.php :
<html>
<head> <link ...> </head>
<body>
<?php include 'entete.php' ?>
<section>
<p>Bonjour, gnagnagna...</p>
</section>
</body>
</html>

Quand tu dis "ma page d'entête", ça peut laisser penser que c'est une page à part entière, avec <html>...</html>. Désolé, il est peut-être évident que non, mais on ne sait jamais.

PS : pas de sms, stp... C'est assez désagréable.
0
ha d'accord, (dsl pour sms c'est l'habitude) hmm oui effectivement ma page en-tête c'est une page complète avec <html> </html>

En-tête:
<html>
<head> <link>... </link> </head>
<body> <header> ... </header> <nav> ... </nav> </body>
</html>

Page PHP

<html>
<head> <link>... </link> </head>
<body>
<?php include 'Entete.htm'; include 'DesignEntete.css'; ?>
<section> .... </section>
</body>
</html>

Voila et quand j'affiche ma page PHP le code CSS du design "DesignEntete.css" s'écrit sur ma page .... Mais si je retire cette page dans mon include, la page se désorganise ... Je sais pas si je me fais comprendre.
0
Idéophage Messages postés 43 Date d'inscription mardi 21 août 2012 Statut Membre Dernière intervention 23 novembre 2013 5
Modifié par Idéophage le 24/08/2012 à 15:59
Lorsque tu inclus Entete.html, ça remplace ta ligne <?php ... ?> par le code de entete.html. Pareil pour DesignEntete.css.
Du coup, la page envoyée au navigateur ressemble à ça :
<html>   
<head>...</head>   
<body>   
<!-- Petit problème : -->   
<html>   
<head> <link>... </link> </head>   
<body> <header> ... </header> <nav> ... </nav> </body>   
</html>   
<!-- fin inclusion entete.html -->   
<!-- ici ton css, qui va donc être affiché comme du texte -->   
<section>   
<p>Bonjour, gnagnagna...</p>   
</section>   
</body>   
</html>

Voici ce qu'il faudrait que tu fasses :
entete.html :
<header> ... </header>   
<nav> ... </nav> 

page PHP :
<html>   
<head> <link href="design.css" ...> </head>   
<body>   
<?php include 'entete.html'; ?>   
<section> .... </section>   
</body>   
</html>


Quand tu inclus un document en php, il faut bien comprendre que c'est juste un raccourcis. L'instruction include '...' est remplacée par le fichier inclu.

PS : ouf... J'étais fatigué, hier, j'ai écrit deux fois la même chose.
0