Bonjour. Afin d'afficher du code, j'ai essayé d'utiliser la balise <xmp>.
Seulement, voilà... Celle-ci n'est pas valide W3C, donc je me suis orienté vers la balise <pre>... Ce qu'il y a entre les balises <pre>et</pre> s'execute mais ne s'affiche pas.
Utilise geshi, il colore le code et l'affiche comme tu l'as entré !
T'as le choix entre un tuto dans la rubrique vos tutos ou la doc officielle en anglais.
Geshi a l'air très bien pour colorer son texte, etc... mais ce n'est absolument pas le but. Je voudrais faire quelque chose de vraiment simple.
Je sais que la balise <pre> est sencée afficher du texte, pourquoi ça ne marche pas ?
<pre> permet d'afficher un texte préformater (maintenant je m'en souviens, merci yöm !). Donc, il va garder les sauts de ligne. Mais en aucun cas, il va faire en sorte que le code HTML tapé dedans ne s'éxécute pas. En effet, pour afficher du code, tu as deux solutions : Soit tu utilises l'htmlentities de PHP, soit tu mets ton code dans un <textarea>, où ce code ne sera pas interprété.
Par contre, les textearea, c'est pas très pratique (on peut modifier le texte).
Mais je crois qu'il éxiste disabled="disabled" (ou un truc comme ça) pour pas qu'on écrive dedans.
Mais le mieux reste de transformer les < et > en < et >, ce que fait htmlentities !
pour xmp et pre , elles font 2 chose differentes:
<pre> qui est valide affiche le texte tel qu'il est tapé , c'est adire les retour a la ligne et les tabulation.
<xmp> (invalide ou plutot balise obsolete) affiche ce qu'elle contient en desactivant le code html , comme "htmlentities" en php dit precedemment.
au choix donc ? :
<pre> <div> </div> </pre>
ou
<pre> <xmp> <div></div> </xmp> </pre>
Le probleme c'est que si le navigateur n'implemente plus la balise <xmp> le contenue sera affiché comme du html ou rendra actif un javascript par exemple :).
donc se garder la premiere option comme proposé par shuss quand on ne peut ou veut pas passer par php pour afficher du code et oublié le textarea qui est un element de formulaire et qui ne sert pas a afficher du texte !
Rah, mais quand est-ce que ceux qui veulent ramener leur science vont-ils se mettre à lire la spé. <code> désigne un foutu fragement de code informatique, donc ton idée tu la vire.
Je n'ai pas trouvé la définition exacte de préformater mais c'est un texte qui est déjà mis en forme, comme du code informatique ou un poème. <code> n'est pas capable de garder un texte préformaté formaté.
@gcyrillus : homme de science, il est parfois bon de ne pas instruire les débutant sur des pratiques obsolètes.
@shuss : je veux bie nque tu me cites mais si c'est pour suggérer l'emploi de <textarea> alors non !
@shuss : je veux bie nque tu me cites mais si c'est pour suggérer l'emploi de <textarea> alors non !
J'ai bien dit que la deuxième méthode est mieux ... mais les textarea sont aussi utilisés. Je veux bien que ça ne respecte pas les normes et tout et tout, mais il est souvent utilisé (il faut le savoir), il marche parfaitement, et il y a des personnes qui s'en foutent de savoir si c'est bien ou pas, et en plus, si c'est pas automatiser, faut transformer chaque < et > en < et > à la main (oui, y'en a qui connaissent pas remplacer).
Bref, même si ce n'est pas la meilleure solution, c'en est une simple à mettre en place.
Tu aurais mieux fait d'apprendre la fonction remplacer. Quoiqu'il en soit, tu as omis les désagréments de cette technique, c'est ce que je te reproche.
<code> désigne un foutu fragement de code informatique, donc ton idée tu la vire.
C'est exactement se que j'ai dit :
Citation : Artis
<code> [...] qui a un sens sémantique.
Depuis quand le code d'une page n'est pas un code informatique (ce n'est certes pas un programme mais c'est informatique).
Donc prochaine fois que tu diras "un code XHTML" je te recale parce que tu viens exactement de dire le contraire (à moins que ce ne soit pas à moi que tu aies parler...).
A shuss : Remplacer un par un les < et > par des < et > est quand même beaucoup plus répandu que utiliser un textarea...
EDIT: A yöm: tu l'as trouvée où la spé en français ?
Rah, mais quand est-ce que ceux qui veulent ramener leur science vont-ils se mettre à lire la spé. <Code> désigne un foutu fragement de code informatique, donc ton idée tu la vire.
A qui tu parlais ? (d'accord, je l'ai pas lu la spé, mais je me suis documenté comme un malade pour le MC et je très bien de quoi je parle)
Citation : yöm
Rah, mais quand est-ce que ceux qui veulent ramener leur science vont-ils se mettre à lire la spé. <Code> désigne un foutu fragement de code informatique, donc ton idée tu la vire.
Je n'ai j'amais dit le contraire... Et si le code est entier, je vois pas quelle balise pourrait-on mettre à la place puisqu'un code entier peut très bien être un fragment. (et puis pourquoi tu dis "foutu"... je les aime bien, moi, ces codes )
Citation : yöm
Rah, mais quand est-ce que ceux qui veulent ramener leur science vont-ils se mettre à lire la spé. <Code> désigne un foutu fragement de code informatique, donc ton idée tu la vire.
T'étais de mauvaise humeur ce jour là parce que je suis sur que cette fois c'est à moi que tu t'es adressé...
Argh, je sens que je vais exploser, tu répètes exactement ton dernier message, bon d'accord tu as ajouté des petites remarque perfides sur mon humeur qui était relativement meilleure que d'habitude, c'est ton obstination qui m'a échauffé.
Je ne vois pas pourquoi me répéter, <pre> est plus adapté que <code>, ou alors tu mets la balise code à l'intérieur d'un <pre> ? Mais code fait partie des éléments de phrase, aussi tu risques de tout embrouiller pour un gain sémantique faible voire discutable. Peux-tu, si tu tiens à poursuivre ton argumentation, reprendre les points essentiels qui font de <code> une balise préférable à <pre> ?
C'est vrai que <pre> a le même sens sémantique que <div>, je me demande même pourquoi il existe. Lisez la spé' bordel de merde de flûte traversière. Donne moi ton avis après sa lecture.
pre pour preformated/preformater surement, div pour pour zone , division , tranche .... ?
sans même lire les spé (et pourtant on devrait le faire plus souvent) , si on a des notions d'anglais on s'aperçoit bien vite que le nom d'une balise (un "tag" en anglais) est une abreviation de son utilité: kbd pour keyboard, samp pour sample , h1 pour header one , dt pour definition title ,img pour image etc ....
C'est pas par hasard qu'elles ont des noms et des utilitée, en lisant la spé on decouvre alors un peu mieux leur usage ...
et si on se fout de la spé , et bas on reste un sauvage primitif du (pas)"NET" , on prend un truc genre frontpage ... bon suffit , fin du troll peut-etre , lol
Au fait, voici ce que dit la Doc de Dreamweaver (référence O'Reilly) :
Citation : PRE
L'élément pre définit un bloc de texte pré-formaté. Le texte pré-formaté est en général affiché par défaut à l'aide d'une police de caractères non proportionnelle, mais, détail important, il préserve les espaces blancs (les espaces multiples insérés entre les mots, ainsi que les sauts de ligne) saisis dans le code source du contenu. À la différence de l'élément plaintext, qui est délaissé, l'élément pre n'ignore pas les balises HTML, qu'il transmet correctement au navigateur, assurant ainsi un affichage normal. Si vous désirez afficher des balises HTML dans un bloc de texte pré-formaté, utilisez des entités HTML pour les symboles « inférieur à » (<) et « supérieur à » (>). Cela évitera que ces balises HTML soient interprétées comme de vraies balises et les symboles seront affichés tels quels dans le bloc de texte pré-formaté.
Les navigateurs sont censés ignorer tout espace blanc de type saut de ligne suivant immédiatement la balise de début de l'élément pre, au cas où le développeur désirerait faire débuter le contenu sur une nouvelle ligne de code source. La quasi-totalité des versions 4 des navigateurs respectent cette règle, à l'exception de Microsoft Internet Explorer 4 pour Macintosh.
Les spécifications HTML 4 sont inflexibles sur le fait que l'élément pre doit conserver sa police de caractères non proportionnelle et son interligne propre. Elles précisent également la liste des éléments qui ne doivent pas être inclus dans un élément pre: applet, basefont, big, font, img, object, small, sub et sup. La présence de l'un de ces éléments détruirait la nature non proportionnelle des caractères de l'élément pre. Il est également fortement suggéré aux développeurs d'éviter de modifier les paramètres de la police non proportionnelle à l'aide de feuilles de style.
Un dernier avertissement concerne l'utilisation de caractères de tabulation pour indenter ou aligner le texte que contient un élément pre. Les navigateurs n'interprètent pas tous les tabulations de la même façon. Pour éviter les problèmes potentiels, utilisez des espaces blancs pour modifier l'alignement du texte, et fiez vous au fait que l'élément pre préserve les espaces blancs. Il n'est donc pas nécessaire d'insérer des espaces insécables ( ) dans un élément pre.
Citation : PLAINTEXT
Le contenu de l'élément bloc plaintext est affiché avec une police non proportionnelle, mais cet élément pose un problème de taille. Tout le code source qui apparaît dans le document après la balise de début est affiché tel quel dans la fenêtre du navigateur. Il est impossible de désactiver l'effet de l'élément plaintext. Même la balise de fin est affichée sous forme de balise. Cet élément est depuis longtemps délaissé dans HTML et il a même été supprimé des spécifications HTML 4.0. Il est fortement conseillé d'utiliser plutôt l'élément pre.
Dans Internet Explorer 4 pour Macintosh, l'élément plaintext est ignoré si l'un de ses attributs est défini. En d'autres termes, le code source est affiché et l'attribut est appliqué au contenu de l'élément le cas échéant (par exemple dans le cas d'une feuille de style).
Citation : XMP
L'élément xmp affiche son contenu comme élément de bloc, avec une police de caractères à espacement non proportionnel, comme dans les listes de code imprimées sur 80 colonnes. Dans la plupart des navigateurs, la taille de cette police est également réduite par rapport à la taille par défaut. Les navigateurs respectent les sauts de ligne et autres espaces blancs contenus dans le texte. Cet élément est depuis longtemps délaissé dans HTML et il a même été supprimé des spécifications HTML 4. Il est fortement conseillé d'utiliser plutôt l'élément pre.
C'est vrai que <pre> a le même sens sémantique que <div>, je me demande même pourquoi il existe. Lisez la spé' bordel de merde de flûte traversière. Donne moi ton avis après sa lecture.
Pour moi <pre> avait un sens sémantique se rapprochant de <p>, ce sont tous les deux des paragraphes, l'un d'eux ayant la particularité d'être préformaté...
Le message qui suit est une réponse automatique activée par un membre de l'équipe. Les réponses automatiques leur permettent d'éviter d'avoir à répéter de nombreuses fois la même chose ce qui leur fait gagner du temps et leur permet de s'occuper des sujets qui méritent plus d'attention plus facilement. Nous sommes néanmoins ouverts et si vous avez une question ou une remarque, n'hésitez pas à contacter la personne en question par Message Privé. Pour plus d'informations, nous vous invitons à lire les règles générales du forum
Avant de poster, demandez-vous si ce que vous allez dire apporte quelque chose au sujet. Si votre message n'apporte rien, vous ferez perdre du temps à tout le monde et le sujet pourrait dévier ou devenir difficile à suivre.
Aussi, vérifiez la date du topic. Le déterrage de topic nuit au bon fonctionnement du forum et est interdit. Utilisez les boutons pour dire merci. Si le topic date de plus de deux mois sans réponses, mieux vaut ne pas répondre.
Je ferme ce topic.
Pas d'aide concernant le code par MP, le forum est là pour ça :)
fan de pluxml je suis cuisinier et codeur amateur. Des thèmes pour pluxml ? Oui
Ma vraie biographie - Ex-Manager de la Validation sur le Site du Zéro - sdlm.be - Horus.aero
fan de pluxml je suis cuisinier et codeur amateur. Des thèmes pour pluxml ? Oui
Ma vraie biographie - Ex-Manager de la Validation sur le Site du Zéro - sdlm.be - Horus.aero
--
--
NaelH
Pas d'aide concernant le code par MP, le forum est là pour ça :)