This page is part of a static HTML representation of the TiddlyWiki at https://tiddlywiki.com/

HTML in WikiText

25th October 2024 at 7:35am

HTML tags and comments

HTML tags and comments can be used directly in WikiText. For example:

<article class="hello">
This is my nice and simple block of text. HelloThere
<!-- This comment will not appear in the wikified output -->
</article>

Pragma Comments

Introduced in v5.2.0 Comments can now be freely intermixed with pragmas as well as within the main body of a block of wikitext.

<!-- NEW: Comment that describes the macro -->
\define test()
some text <!-- inline comment -->
\end

<<test>>

Important

Security

Warning
Note that any HTML attributes prefixed with on are removed from the rendered HTML content. This is done to prevent event handlers (such as "onclick") being used as a clandestine way to execute untrusted JavaScript. A design goal of TiddlyWiki is to ensure that executable JavaScript can only enter the system through explicit JavaScript module tiddlers or raw markup tiddlers. This makes it possible to filter unsafe content in multiuser environments, and also makes it safer to copy untrusted wikitext examples.

Widgets

Tip
Widgets share the same syntax as HTML tags
and so the following information applies to them, too.

Block mode versus Inline mode

To get the content of an HTML element to be parsed in block mode, the opening tag must be followed by two linebreaks.

Without the two linebreaks, the tag content will be parsed in inline mode which means that block mode formatting such as wikitext tables, lists and headings is not recognised.

See also WikiText parser mode: HTML examples and WikiText parser mode transitions.

Self closing elements

The following tags are treated as 'void'. This means that <tag> is treated as if it were <tag/>, and that no terminating </tag> is needed (if one is provided it will be ignored and treated as plain text).

  • <area>, <base>, <br>, <col>, <command>, <embed>, <hr>, <img>, <input>, <keygen>, <link>, <meta>, <param>, <source>, <track>, <wbr>

If you do not close any other tag then it will behave as if the missing closing tag were at the end of the tiddler.

Attributes

In an extension of conventional HTML syntax, attributes of elements and widgets can be specified in several different ways:

Style Attributes

TiddlyWiki supports the usual HTML style attribute for assigning CSS styles to elements:

<div style="color:red;">Hello</div>

Introduced in v5.2.2 In an extension to HTML, TiddlyWiki also supports accessing individual CSS styles as independent attributes. For example:

<div style.color="red">Hello</div>

The advantage of this syntax is that it simplifies assigning computed values to CSS styles. For example:

<div style.color={{!!color}}>Hello</div>

New in v5.3.6 TiddlyWiki also supports setting CSS custom properties as independent attributes. For example:

<div --bg-color={{{ [[red]] }}}>Hello</div>