tags:

views:

237

answers:

9

Basic question which I thought of asking on Superuser, but it is a programming question I think. I just started learning HTML, so please bear with me.

How can I prevent a program from interpreting an HTML tag / syntax? For example, I want to write a flash card like this:

The html code for < is &lt;

I would like a solution that would work for any or most syntax, not just for <.

How can I enter the syntax (without any space) to make sure the code isn't interpreted?

+1  A: 

The html code for < is &lt;

That is, type &lt; is &amp;lt;.

Sinan Ünür
+4  A: 

I suppose you don't want the entity to be rendered? If you want to display &lt; you'll have to use the entity for the ampersand: &amp;.

Fabian Vilers
A: 

You could use a <pre> &lt; </pre> sequence

rsp
I think this is the solution I need, i.e., that would work for any tag, correct? Basically anything written between <pre> and </pre> is treated as dumb text?
JDelage
The pre element preserves whitespace, but it doesn't escape tags.
NickFitz
rsp
@rsp: although it would be more semantically correct to use <code><pre>...</pre></code>: the code tags make it clear that it's code, as opposed to other text where whitespace needs to be preserved, such as poetry. P.S. Isn't it annoying the way SO has different automatic escaping rules in comments to those in answers ;-)
NickFitz
@NickFitz: xmp element does escape tags;
Rubens Farias
+9  A: 

This:

The html code for &lt; is &amp;lt;

Renders as:

The html code for < is &lt;

The basic strategy is to escape the & as &amp;

Daniel Martin
+1  A: 
The html code for &lt; is &amp;lt;
svens
A: 

You need to encode it. For example, '<' = '&lt;'

Here is the list.

So in your case it will end up like this:

The html code for &lt; is &amp; l t ;
NawaMan
You've linked to the url encodings not the html entities http://www.w3schools.com/HTML/html_entities.asp
gnibbler
What a shame? I will fix that. Thanks anyway.
NawaMan
+4  A: 

You are going to have to do it manually.

Here you have the full encoding table. The most commonly used codes are:

Character  Entity Number  Entity Name  Description
"          &#34;          &quot;       quotation mark
'          &#39;          &apos;       apostrophe (does not work in IE)
&          &#38;          &amp;        ampersand
<          &#60;          &lt;         less-than
>          &#62;          &gt;         greater-than
voyager
Thank you, this is very helpful.
JDelage
+1  A: 

In this case, you DON'T need to encode it. Try this one:

<xmp> html < &lt; </xmp>

I'm not sure about cross browsers support, but works on IE7,FF3,Chrome3

Rubens Farias
That is a deprecated tag. Do not use it.
sure, but solves the problem; he can use xmp or encode his content
Rubens Farias
Actually, I think that for any place outside of a web page, that's probably not a bad idea.
JDelage
+1  A: 

If you have access to server side scripting capabilities, you might be able to use utility functions of that platform. For example, in PHP you might use the htmlentities function to your advantage:

echo htmlentities("The html code for < is &lt;");
Daan