Skip to content
Docs

The body as HTML

html is the article’s body as plain, semantic HTML. It has no inline styles, no scripts and no wrapper element, so it takes on your site’s own typography once you put it inside your article container.

<article class="prose">
<!-- your title and cover, then: -->
{article.html}
</article>

Text in the body is escaped and raw HTML is never passed through, so the body can’t carry a script. Links are kept only to an http or https address, a path on your site, or a place in the page.

Most of the body is ordinary elements: p, h2 to h4, ul, ol, table, blockquote, pre and code, hr, a, strong and em. Every h2 has an id made from its words, so you can link to a section or build your own table of contents.

A few parts have a class name, so you can style them:

Part Markup What it is
Answer p.citedseo-answer The short answer at the top of the article, in bold.
Key takeaways div.citedseo-takeaways A “Key takeaways” line, then a list of three to five points. An article has this or the answer.
Contents nav.citedseo-contents A “Contents” line, then a numbered list of links to each h2. Only when the site’s article settings have a contents list on, and the article has two or more sections.
Callout aside.citedseo-callout A tip, note or warning set apart from the text. It also has one of citedseo-note, citedseo-tip, citedseo-important, citedseo-warning or citedseo-caution, and starts with its label in bold.
Image figure An img, with a figcaption when it has a caption.
Video figure.citedseo-video An iframe for a YouTube or Vimeo video. Any other video is a plain link.
Quote blockquote The words quoted, then a line with who said them in a cite, when that is known.
FAQ h2#faq “Frequently asked questions”, then an h3 and a p for each question.
Sources ol.citedseo-sources After an h2#sources, the pages the article’s facts came from, each a link and its publisher.

These are the only rules the class names need. Everything else follows your own article styles.

article.css
.citedseo-answer {
font-size: 1.125rem;
}
.citedseo-takeaways,
.citedseo-contents,
.citedseo-callout {
margin-block: 1.5rem;
padding: 1rem 1.25rem;
border: 1px solid #e5e5e5;
border-radius: 6px;
}
.citedseo-callout.citedseo-warning,
.citedseo-callout.citedseo-caution {
border-color: #f59e0b;
}
.citedseo-video iframe {
width: 100%;
aspect-ratio: 16 / 9;
border: 0;
}
.citedseo-sources {
font-size: 0.875rem;
}