11
4

4 回答 4

30

These tags are only for "decorational" purposes. Code within will still be executed. If you want it displayed you have to convert at least the <script> tag to html:

&lt;script type="text/javascript"&gt;

Then the JavaScript code inbetween will be shown.

You don't need both though, I would use <pre> (which is per default a block element), <code> is intended for inline use.

于 2013-07-26T13:14:26.940 回答
5

Remove script tag:

<body>
    <div style="color:#000000">
      <pre>
        <code>
            $('#inputField').hide();
        </code>
      </pre>
    </div>
</body>
于 2013-07-26T13:12:57.253 回答
3

It was my understanding that using these new tags would negate any code that they contain

They don't. They tell user agents to present the data as code. So it will have font changes, white space will be significant, it should be skipped over by translation software and so on.

Markup still takes effect (so you can add elements to style, or link the code to other places, and so on) so you still need to replace HTML special characters (<, &, etc) with their respective entities (&lt;, &amp;, etc).

于 2013-07-26T13:19:33.917 回答
1

This would work if you take the script tags out.

These code tags only change the font of the text inside to a monospace font, however it does not override the interpretation of other tags (or even php tags).

A better way is to use CSS to get color highlighting, or javascript libraries.

于 2013-07-26T13:19:17.993 回答