Template:Markup/doc

This template is used to present markup or code side by side with the output it renders.

Usage
Each cell in the first ("Markup") column uses to retain newlines and spaces but styled to allow content to wrap within it. It is usually desirable to escape the content of these cells so that the markup is displayed by wrapping the markup in nowiki. It is technically not possible to add this feature to the template.

Each cell in the second ("Renders as") column is usually the unescaped markup copied from the corresponding "Markup" cell before it. There are instances where this may differ:
 * If the first line includes wikimarkup that must start on a new line such as #, * or ; then use  before the first line; see examples below.
 * Header markup such as == will show in the page table of contents; use.
 * Some templates will place the page in a maintenance category, which is usually undesired:
 * Instead of, use.
 * Some templates may have error checking that places the page in a maintenance category. Suppress the category as possible:
 * templates can suppress the maintenance category by setting true.

The template accepts up to 40 unnamed parameters, resulting in up to 20 rows of examples.

nowiki
If you don't wrap the content of the markup cell in nowiki, then any template markup will not be escaped, it will be expanded.

This example shows the markup for tag :

HTML entities
HTML entities are parsed in the markup cell:

To work around this, replace the  with   thus   will show as

Short cut
See Template:Mra.

Enter this: Bold text To make this:

Which renders as:

More complex
Note that Markup's second argument here uses fake heading and fake citation needed. {{Markup
 * The quick brown fox jumps over the lazy dog.{{#tag:ref|A footnote. |group=nb}} The cow jumped over the moon.{{fact}}

Showing rendered HTML
When a template is enclosed within code, it shows the rendered HTML:

TemplateData
{	"description": " ", "paramOrder": [ "margin-left", "width", "style", "noheaders", "title", "colheaderstyle", "col1headerstyle", "col1", "col2headerstyle", "col2", "codestyle", "outputstyle", "1",		"2",		"3",		"4",		"39",		"40"	],	"params": { "1": {			"description": "row 1, first column (markup/code)'s content.", "type": "string" },		"2": {			"description": "row 1, second column (output)'s content.", "type": "string" },		"3": {			"description": "row 2, first column's content (etc).", "type": "string" },		"4": {			"description": "row 2, second column's content (etc).", "type": "string" },		"39": {			"description": "First column's content in last possible row.", "type": "string" },		"40": {			"description": "Second column's content in last possible row.", "type": "string" },		"width": { "description": "To set the table's overall width.", "type": "string", "default": "auto" },		"margin-left": { "description": "To set a margin on the table's lefthand side.", "type": "string", "default": "0" },		"style": { "description": "For CSS styles amending the table's overall appearance.", "type": "string" },		"title": { "description": "Title above table.", "type": "string" },		"noheaders": { "description": "Set (as e.g. noheaders=on) to suppress the columns' headings and table's title.", "type": "string" },		"col1": { "description": "First column (markup/code)'s heading.", "type": "string", "default": "\"Markup\"" },		"col2": { "description": "Second column (output)'s heading.", "type": "string", "default": "\"Renders as\"" },		"codestyle": { "description": "Use CSS style code to change the look of content in the Markup column.", "type": "string", "aliases": [ "markupstyle" ],			"label": "Column 1 style", "example": "white-space: nowrap" },		"outputstyle": { "description": "Use CSS style code to change the look of content in the Renders-as column.", "type": "string", "label": "Column 2 style" },		"col1headerstyle": { "description": "For CSS styling to amend the appearance of the first column's heading. Overrides (but does not replace) colheaderstyle.", "type": "string" },		"col2headerstyle": { "description": "For CSS styling to amend the appearance of the second column's heading. Overrides (but does not replace) colheaderstyle.", "type": "string" },		"colheaderstyle": { "description": "For CSS styling to amend the appearance of each column's heading.", "type": "string" }	} }