Page 1 sur 1

advCode

Posté : 04 juil. 2006, 11:40
par T!GeR
Bonjour à tous !

Alors voila je vous explique mon problème, j'ai mis au point un code, l'advCode un mix entre du bbcode et du zCode pour ceux qui connaissent :D

J'ai placé a l'interieur de celui ci des balises de code (php, html ...) et c'est celles-ci qui me posent probleme.

En effet sous Firefox une scrollbar automatique se place en bas de mes balises de code si le code est trop long, en revanche sous ie aucune scrollbar n'apparait et cela fait decaler toute ma page !

Démo en images:

Sous Firefox (no probleme)
Image

Et sous IE (gros probleme)
Image

Voila le bout de code concerné dans mon advCode:
// Citation de code (php, xhtml, c++)
$texte = str_replace("<code>", "<table style=\"border-width:1px; border-color:" . $color3 . "; border-style:dashed;\" cellpadding=\"3\" cellspacing=\"1\" width=\"100%\" border=\"0\"><tr><td style=\"background: " . $color1 . ";color: " . $color2 . "\"><font style=\"font-variant: small-caps;\"><b>code :</b></font><span style=\"font-size:11pt;\"><div style=\"width : 100%; overflow: auto;\"><pre>", $texte);
$texte = str_replace("</code>", "</pre></div></span></td></tr></table>", $texte);
Comme vous pouvez le voir dans mon div j'ai bien placé les propriétés qui devraient faire que cela fonctionne:
<div style=\"width : 100%; overflow: auto;\">

Donc je ne vois pas d'ou viens le problème.

Merci de votre aide :)

Posté : 04 juil. 2006, 12:31
par goeb
salut,

ce serait plus clair si tu mettais directement le HTML résultant, et pas le PHP.
(tu peux voir le HTML avec le menu Afficher > Code source de la page)

Et par ailleurs, internet explorer ne gère peut-être pas bien toutes les fonctionnalités des CSS. Je pense à 'overflow'. Il faudrait vérifier si c'est supporté par IE.

Posté : 04 juil. 2006, 12:56
par T!GeR
Dans l'affichage du code source sous IE on retrouve:
<div style="width : 100%; overflow: auto;"><pre>
<?php<br /># Copyright (c) 2006 Skyline-arts.com. All rights reserved.<br /><br /># Inclusion de l'advCode si on ne ijoiezaddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd<br />$url = '' . $_SERVER['PHP_SELF'] . '';<br />$findme  = 'admin';<br />$pos = strpos($url, $findme);<br />if($pos === false) <br />{<br />include("advCode/advcode.php");<br />}<br />else<br />{<br />}<br /># Copyright (c) 2006 Skyline-arts.com. All rights reserved.<br /><br /># Inclusion de l'advCode si on ne ijoiezaddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd<br />$url = '' . $_SERVER['PHP_SELF'] . '';<br />$findme  = 'admin';<br />$pos = strpos($url, $findme);<br />if($pos === false) <br />{<br />include("advCode/advcode.php");<br />}<br />else<br />{<br />}<br /># Copyright (c) 2006 Skyline-arts.com. All rights reserved.<br /><br /># Inclusion de l'advCode si on ne ijoiezaddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd<br />$url = '' . $_SERVER['PHP_SELF'] . '';<br />$findme  = 'admin';<br />$pos = strpos($url, $findme);<br />if($pos === false) <br />{<br />include("advCode/advcode.php");<br />}<br />else<br />{<br />}<br />?>
</pre></div>
En ce qui concerne la prise en compte: http://wiki.media-box.net/documentation/css/overflow

Donc c'est bien pris en compte sous tous les navigateurs normalement.

Posté : 04 juil. 2006, 13:36
par Devether
Dans l'affichage du code source sous IE on retrouve:
<div style="width : 100%; overflow: auto;"><pre>
<?php<br /># Copyright (c) 2006 Skyline-arts.com. All rights reserved.<br /><br /># Inclusion de l'advCode si on ne ijoiezaddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd<br />$url = '' . $_SERVER['PHP_SELF'] . '';<br />$findme  = 'admin';<br />$pos = strpos($url, $findme);<br />if($pos === false) <br />{<br />include("advCode/advcode.php");<br />}<br />else<br />{<br />}<br /># Copyright (c) 2006 Skyline-arts.com. All rights reserved.<br /><br /># Inclusion de l'advCode si on ne ijoiezaddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd<br />$url = '' . $_SERVER['PHP_SELF'] . '';<br />$findme  = 'admin';<br />$pos = strpos($url, $findme);<br />if($pos === false) <br />{<br />include("advCode/advcode.php");<br />}<br />else<br />{<br />}<br /># Copyright (c) 2006 Skyline-arts.com. All rights reserved.<br /><br /># Inclusion de l'advCode si on ne ijoiezaddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd<br />$url = '' . $_SERVER['PHP_SELF'] . '';<br />$findme  = 'admin';<br />$pos = strpos($url, $findme);<br />if($pos === false) <br />{<br />include("advCode/advcode.php");<br />}<br />else<br />{<br />}<br />?>
</pre></div>
On te demande le code HTML généré, pas le code PHP que tu penses qui est est utulisé.

Posté : 04 juil. 2006, 14:44
par T!GeR
Mais c'est le code html généré... je te rappel que c'est une sorte de bbcode qui cite le code... comme les balises php de ce forum donc c normal que tu vois apparaitre du php

Posté : 04 juil. 2006, 15:21
par Devether
Désolé entre les balises [php.] c'est pas tres clair.

Posté : 05 juil. 2006, 11:25
par T!GeR
oK no problem :wink: Sinon personne ne sait?

Posté : 05 juil. 2006, 12:44
par goeb
chez moi ça marche aussi bien sous firefox que sous IE version 6.0.
(un truc bizarre cependant : IE place une scrollbar verticale à droite et pas firefox...)

est-ce que le

Code : Tout sélectionner

<?php
ne devrait pas être changé en :

Code : Tout sélectionner

<?php
?

Posté : 06 juil. 2006, 12:29
par T!GeR
Eu aucune idée. Enfin non je pense pas que ce soit super util.