code Element


 

Module

The code element is an inline element declared by the XHTML 1.1 Text Module (Inline Phrasal)

Elements in the Text Module are:
span | br (Inline Structural Support Module)
em | strong | q | cite | abbr | acronym | code | var | kbd | samp | dfn (Inline Phrasal Support Module)
div | p (Block Structural Support Module)
h1 - h6 | blockquote | pre | address (Block Phrasal Support Module)

Description

The code element is used to mark up an extract of computer code, for example program code or XHTML. The contents of a code element are commonly rendered in a monospace font.

For example:

<div><code>#!/usr/bin/perl<br />print "$_ ..\n" for reverse ( 1 .. 10 );<br />print "Blast Off!\n";</code></div>

This renders as:

#!/usr/bin/perl
print "$_ ..\n" for reverse ( 1 .. 10 );
print "Blast Off!\n";

It is common to enclose longer lengths of code within a pre element (which is also usually rendered in monospace) so that whitespace formatting is preserved and the br tags are not necessary.

For example, the following markup shows how the code for a JavaScript function may be displayed in an XHTML document:

<pre><code>function createXHTMLElement ( eltname ) {
    var element;
    if ( document.createElementNS ) {
	element = document.createElementNS( 'http://www.w3.org/1999/xhtml', eltname );	
    }
    else {
	element = document.createElement( eltname );
    }
    return element;
}</code></pre>

which renders as:

function createXHTMLElement ( eltname ) {
    var element;
    if ( document.createElementNS ) {
	element = document.createElementNS( 'http://www.w3.org/1999/xhtml', eltname );	
    }
    else {
	element = document.createElement( eltname );
    }
    return element;
}

Note: You still have to be careful to escape any ampersand (&), less-than (<) and occasionally greater-than (>) characters within the code in order for your document to be well formed (see W3C Validation), unless you additionally enclose your code (inside the code element) in a CDATA Section.

code is an inline element and so can be used, for example, within a paragraph to mark up a code fragment.

For example:

<p>The method call <code>document.createElementNS( 'http://www.w3.org/1999/xhtml', 'p' )</code> creates a new paragraph element node in the XHTML namespace.</p>

which renders as:

The method call document.createElementNS( 'http://www.w3.org/1999/xhtml', 'p' ) creates a new paragraph element node in the XHTML namespace.

See also the elements: samp, kbd and var.

#REQUIRED Attributes

There are no #REQUIRED attributes on the code element.


Specific Attributes

There are no specific attributes declared on the code element.


Common Attributes

Common attributes of the code element are listed below:

From the Core Attribute Collection

class [ type NMTOKENS ]
One or more space separated classes
id [ type ID ]
A unique identifier for the element
style [ type CDATA ], from the Style Attribute Module (deprecated)
Element-specific styles
title [ type Text ]
Descriptive title for the element (in some user agents this may appear as a "tooltip" when the mouse hovers over the element)
xmlns [ type URI - #FIXED 'http://www.w3.org/1999/xhtml' ]
XML namespace

From the I18N Attribute Collection

dir [ type Enumeration (ltr | rtl) ], from the Bi-directional Text Module
Left-to-right or right-to-left directionality
xml:lang [ type LanguageCode ]
A language code for the element

From the Events Attribute Collection

All attributes in the Events Attribute Collection are supported:
onclick, ondblclick, onmousedown, onmouseup, onmouseover, onmousemove, onmouseout, onkeypress, onkeydown, onkeyup


Content Model

The Content Model for the code element is:

( #PCDATA | Inline.mix )*

See Content Model & Nesting for information about Content Model syntax and Nesting Groups.

Valid children of code

Valid parents of code


Page Footer & Copyright

Copyright © Sally Maughan 2005-2009 (Page last updated on 01 Oct 2009)

*Valid XHTML 1.1 - hosted by *Openstrike

Content based on the W3C Working Draft: *XHTML 1.1 and Recommendation: *XHTML Modularisation 1.1.

W3C, XHTML, XML, HTML, CSS and MathML are *Trademarks of the W3C (*MIT, *ERCIM, *Keio) with which the site's author has no connection.


Up, Next & Previous Links

Your Location

Home > XHTML 1.1 Home > XHTML 1.1 Indexes > Element Index (XHTML 1.1) > code Element