![]() |
Forum SELFHTML: Archives: |
Le message suivant est de: sabine,
stz@stzweb.com, 04. 04. 2004, 18:59
Bonjour,
Mon site basé sur un moteur php génère des fois des trucs bizarre à l'affichage, alors que ce sont les même classes qu'une version html qui ne posait pas de problèmes.
- la justification ne prend plus pour les images (vignettes) placées dans un -div- ou même en -p- notamment.
- des fois les images flottantes "réagissent" très aléatoirement.
lors que tout semble ok dans la structure html. et surtout que ça fonctionne pour certains appels et pas sur d'autres du même script!
(j'ai du les éviter du coup. D'ailleurs, par rapport aux différentes compatibilités appamment il faut éviter au maximum les flottants, non? C'est dommage, c'est très pratique et esthétique, quand ça marche!)
kesako?
merci.
Le message suivant est de: Christophe,
christophe_brass@freenet.de, 05. 04. 2004, 21:05
Salut Sabine,
Je voudrais bien essayer de me pencher sur le problème, car mon site est aussi en php.
Pourrais tu envoyer un seul exemple très précis du code php et du code css liéz au problème?
Salutations
Christophe
Le message suivant est de: Sabine,
stz@stzweb.com, 06. 04. 2004, 18:36
Salut Christophe
»» Je voudrais bien essayer de me pencher sur le problème, car mon site est aussi en php.
»» Pourrais tu envoyer un seul exemple très précis du code php et du code css liéz au problème?
En fait je me demande si là le problème ce n'est pas du au fait que j'inclue un div flottant entre deux <li> est-ce correct? J'ai aussi essayé d'inclure la balise div dans un <li>, ça n'arrange rien.
exemple de résultat:
http://www.stzweb.com/stz/annuaire/catessailien.php?idcat=10&page=5&limit=5
la css correspondante:
.essai {float: left;position: relative; margin: 2px 0 2px 2px;}
(les autres classes n'ont pas de règles de positionnement, c'est juste de la typo/alignement).
et le php (qui provient du cms artiphp mais dont j'ai re-rédigé la mise-en-page html qui reposait sur des tableaux comme la plupart des cms d'ailleurs. J'ai modifié de-ci de-là le php comme c'est le cas ici.)
$listedossiers .="<ul class=\"longueliste\">";
$listedossiers .= "<li class=\"nom\"> <a class=\"tilt\" href=\"redirec.php?id=".$dossier->id_annulien."\" target=\"_blank\">".$dossier->Anomlien."</a> <img alt=\"lang\" src=\"".$dossier->Alang.".jpg\"> <span class=\"datedos\">Visité " .$dossier->AnbSortie ." fois</span></li>\n";
if ($dossier->montrerimg == 1){
$listedossiers .= "<div class=\"essai\"><a href=\"redirec.php?id=".$dossier->id_annulien."\" target=\"_blank\"><img alt=\"banniere\" src=\"".$dossier->imgchemin."\"></a></div>\n";
}
else {$listedossiers .= "";}
$listedossiers .= "<li class=\"urle\"><a class=\"discret\" href=\"redirec.php?id=".$dossier->id_annulien."\" target=\"_blank\">" .$dossier->Aurl."</a></li>\n";
$listedossiers .= "<li class=\"nop\">".$textd."</li>\n";
$listedossiers .="</ul>";
Le message suivant est de: Sabine,
stz@stzweb.com, 06. 04. 2004, 18:48
oui donc suite au message précédent, tu vois, les mini-bannières se placent mal.
Par contre en affichant tous les liens sur la page
http://www.stzweb.com/stz/annuaire/catessailien.php?idcat=10&page=0&limit=20
ça roule!!
Je ne vois pas le problème avec la pagination, ce sont les mêmes lignes de code qui sont appelées!
C'est un script php pour maquer soeur marie-therese et heinrich chevalier-vampire ou quoi?! :-) (vont pas bien ensemble, je trouve, sur ma page. ça fait désordre! ;-) )
Le message suivant est de: Sabine,
stz@stzweb.com, 07. 04. 2004, 12:31
Salut Patrick,
Je veux bien croire qu'il y a des règles à suivre, mais ce n'est pas résultat garanti non plus.
En l'occurence j'ai fait un essai en virant listes et paragraphes et donc uniquement avec des boite div, mais le résultat n'est pas mieux, dès qu'il y a de la pagination ça se place bizarrement sur les autres pages que la première.
Cordialement.
Le message suivant est de: Patrick Andrieu,
nospam@nospam.fr, 07. 04. 2004, 01:08
http://www.selfhtml.com.fr/equipe/patrick.htm
Salut Sabine!
»» En fait je me demande si là le problème ce n'est pas du au fait que j'inclue un div flottant entre deux <li> est-ce correct? J'ai aussi essayé d'inclure la balise div dans un <li>, ça n'arrange rien.
Depuis le début de ton post, je doute de l'influence (malgré tout à prendre en éventualité) de PHP sur les CSS. Mais ce que je cite me renforce dans mon idée que ce post et un précédent montrent que tu essayes pas mal de chose, ce qui est loin d'être un reproche, au contraire. N'empêche qu'il y a des règles, lesquelles peuvent être lues sur les pages du W3C. A ta place, la première chose à faire serait d'aller voir si des DIV dans des <li> ou inverse sont permis (pensant par exemple à Block Level Element vs. Inline Element)...
MS de Francfort sur le Main
Patrick (trop caussard ce soir pour aller voir lui-même)

Le message suivant est de: vincent,
vincent.delvallee@free.fr, 05. 04. 2004, 23:25
Bonjour,
j'avoue ne pas comprendre le problème. Le PHP n'a rien à voir avec le CSS. Pour un code propre, l'idéal est de créer en premier lieu ta page en HTML. En suite, tu y incorpores ton code PHP ( <?PHP .. ?> )là ou il doit être placé. Il faut se méfier de certaines balises HTML ou plutôt des navigateurs, qui peuvent ne ont des balises spécifiques. Mais je pencherai dans ton cas à un problème au niveau du code. Il se peut que dans une portion de code il y est un 'intru'.
Si tu ne trouves pas envoie moi ton code je regarderai. C'est peut être pas grandchose mais des fois ont passe 15 fois au dessus.
Bon courage!
PS: il vaut mieux écrire <?PHP que <? .
<?= est mieux que <?PHP echo car plus rapidement interprété
il vaut mieux un ' qu'un " plus rapide (lorsque l'on peut le faire)
Le message suivant est de: Christophe,
christophe_brass@freenet.de, 06. 04. 2004, 10:01
Bonjour,
»» <?= est mieux que <?PHP echo car plus rapidement interprété
J'ai déjà rencontré un problème avec la formule raccourcie de l'écho que la forme longue a résolu. Je ne sais pas vraiment pourquoi mais j'ai constaté par ailleurs que les pros du PHP n'utilisaient pas systématiquement la forme courte (comme j'ai tendance à le faire). Donc on ne peut pas dire que la formule courte soit mieux. Elle est censée être equivalente mais elle a deja été pour moi la source d'un problème.
»» il vaut mieux un ' qu'un " plus rapide (lorsque l'on peut le faire)
Dans un single -quote les variables ne sont PAS prises en comptes alors qu'elles le sont dans le double-quotes.
Ex :
$name = 'Fred';
$str = "Hello, $name";
echo $str; // resultat : Hello, $name
Tout ça est remarquablement expliqué dans le Programming PHP de Rasmus Lerdorf 6 Kevin Tatroe (ISBN 1-56592-610-2)
Salut
Christophe
© 1998-2004
selfhtml@fr.selfhtml.org