Jump to content

Help:Lint errors/misnested-tag

From mediawiki.org

The misnested tag warning is triggered when some tag or wikitext markup is closed outside of its parent and those tags or marks are overlapped. This linter category has been added to assist editors in fixing wikitext and templates that have instances of misnested tags. Linter will flag a warning for all the examples below. We are treating this as a warning currently.

Example 1:

<b> foo <i> bar </b> baz </i>

Example 2:

''' foo '' bar ''' baz ''

Example 3:

* a
* b <small> c
* d </small>
* e

Example 4:

<small> foo
* a
* b
bar </small>

Example 5:

''<span>foo''</span>

Example 6:

<span>foo<br/>
bar</span>

In Examples 1 and 2, the ‎<i> tag (either in HTML or wikitext form) should be properly nested inside the ‎<b> tag. While the parsers fix this up right now, the output may not always be what the editors intended.

In Example 3, the ‎<small> tag should be closed and reopened on lines 2 and 3.

In Example 4 (which is sometimes reported as one missing end tag and one stripped tag), HTML5 semantics require the ‎<small> tag (and other formatting tags limited to phrasing content, like ‎<span>, ‎<strike>, ‎<em>, ‎<i>, , etc.) to be wrapped around individual elements. To fix this problem, use a ‎<div> tag to wrap lists. For common usages such as the small tag, templates such as Template:Smalldiv on English Wikipedia can make such replacements easier.

In Example 5, much like previous examples, the output is invalid because that wikitext would expand to <i><span>foo</i></span>. The ‎<i> pair should be either inside or outside the span, e.g. <span>''foo''</span>.

In Example 6, a span tag is wrapped around a line break. Possible resolutions are to remove the manual line break (using a br tag if desired) or wrap each line in its own span tags.

Some templates apply italic formatting to fields like "title" or "magazine". To add an unitalicized note to a field of that type, use {{Noitalic }} around the note.

Tools

[edit]

The following tools can help fix misnested tags:

See also

[edit]