1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
4 For licensing, see LICENSE.html or http://ckeditor.com/license
6 <html xmlns="http://www.w3.org/1999/xhtml">
8 <title>XHTML Compliant Output — CKEditor Sample</title>
9 <meta content="text/html; charset=utf-8" http-equiv="content-type" />
10 <script type="text/javascript" src="../ckeditor.js"></script>
11 <script src="sample.js" type="text/javascript"></script>
12 <link href="sample.css" rel="stylesheet" type="text/css" />
16 CKEditor Sample — Producing XHTML Compliant Output
18 <div class="description">
20 This sample shows how to configure CKEditor to output valid
21 <a class="samples" href="http://www.w3.org/TR/xhtml11/">XHTML 1.1</a> code.
22 Deprecated elements (<code><font></code>, <code><u></code>) or attributes
23 (<code>size</code>, <code>face</code>) will be replaced with XHTML compliant code.
26 To add a CKEditor instance outputting valid XHTML code, load the editor using a standard
27 JavaScript call and define CKEditor features to use the XHTML compliant elements and styles.
30 A snippet of the configuration code can be seen below; check the source of this page for
33 <pre class="samples">CKEDITOR.replace( '<em>textarea_id</em>',
35 contentsCss : 'assets/output_xhtml.css',
37 coreStyles_bold : { element : 'span', attributes : {'class': 'Bold'} },
38 coreStyles_italic : { element : 'span', attributes : {'class': 'Italic'} },
40 // More definitions follow.
44 <!-- This <div> holds alert messages to be display in the sample page. -->
48 <strong>CKEditor requires JavaScript to run</strong>. In a browser with no JavaScript
49 support, like yours, you should still see the contents (HTML data) and you should
50 be able to edit it normally, without a rich editor interface.
54 <form action="sample_posteddata.php" method="post">
58 <textarea cols="80" id="editor1" name="editor1" rows="10"><p>This is some <span class="Bold">sample text</span>. You are using <a href="http://ckeditor.com/">CKEditor</a>.</p></textarea>
59 <script type="text/javascript">
62 CKEDITOR.replace( 'editor1',
65 * Style sheet for the contents
67 contentsCss : 'assets/output_xhtml.css',
72 coreStyles_bold : { element : 'span', attributes : {'class': 'Bold'} },
73 coreStyles_italic : { element : 'span', attributes : {'class': 'Italic'}},
74 coreStyles_underline : { element : 'span', attributes : {'class': 'Underline'}},
75 coreStyles_strike : { element : 'span', attributes : {'class': 'StrikeThrough'}, overrides : 'strike' },
77 coreStyles_subscript : { element : 'span', attributes : {'class': 'Subscript'}, overrides : 'sub' },
78 coreStyles_superscript : { element : 'span', attributes : {'class': 'Superscript'}, overrides : 'sup' },
83 // List of fonts available in the toolbar combo. Each font definition is
84 // separated by a semi-colon (;). We are using class names here, so each font
85 // is defined by {Combo Label}/{Class Name}.
86 font_names : 'Comic Sans MS/FontComic;Courier New/FontCourier;Times New Roman/FontTimes',
88 // Define the way font elements will be applied to the document. The "span"
89 // element will be used. When a font is selected, the font name defined in the
90 // above list is passed to this definition with the name "Font", being it
91 // injected in the "class" attribute.
92 // We must also instruct the editor to replace span elements that are used to
93 // set the font (Overrides).
97 attributes : { 'class' : '#(family)' }
103 fontSize_sizes : 'Smaller/FontSmaller;Larger/FontLarger;8pt/FontSmall;14pt/FontBig;Double Size/FontDouble',
107 attributes : { 'class' : '#(size)' }
113 colorButton_enableMore : false,
115 colorButton_colors : 'FontColor1/FF9900,FontColor2/0066CC,FontColor3/F00',
116 colorButton_foreStyle :
119 attributes : { 'class' : '#(color)' }
122 colorButton_backStyle :
125 attributes : { 'class' : '#(color)BG' }
131 indentClasses : ['Indent1', 'Indent2', 'Indent3'],
134 * Paragraph justification.
136 justifyClasses : [ 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyFull' ],
143 { name : 'Strong Emphasis', element : 'strong' },
144 { name : 'Emphasis', element : 'em' },
146 { name : 'Computer Code', element : 'code' },
147 { name : 'Keyboard Phrase', element : 'kbd' },
148 { name : 'Sample Text', element : 'samp' },
149 { name : 'Variable', element : 'var' },
151 { name : 'Deleted Text', element : 'del' },
152 { name : 'Inserted Text', element : 'ins' },
154 { name : 'Cited Work', element : 'cite' },
155 { name : 'Inline Quotation', element : 'q' }
163 <input type="submit" value="Submit" />
169 CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
172 Copyright © 2003-2011, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
173 Knabben. All rights reserved.