• OPEN SOURCE COMPONENT
  • Taxonomic name: LONG-FORM-ARTICLE
  • Extension: LONG-FORM-ARTICLE
  • Current owner: Framework
  • Added on: v5.1.0 (03/11/20)
  • Updated on: v5.2.0 (17/11/20)

Long form article

The long form article template forms the overall structure of the long form article, whose purpose is to add a layer of interaction and delight to a predominantly static article page by segmenting large amounts of written content into bite-sized, tangible and digestible sections, thus increasing user engagement.


Design and usage

A suite of components are available to use exclusively within long-from article template pages, all of which sit within the standard design grid. These components can be mixed and matched accordingly, and are available in a variety of styles and themes. Balance the page with paragraphs of written text and chapter dividers, with short, sweet, punchy heading titles and interactive components, highlighting key areas of content, or supporting content; this will maximise the potential of the design.

Structure

Exclusive components available for use within a long form article:

Ordering

  1. Long form hero - mandatory
  2. Author and contributor box - mandatory
  3. Article oveview - mandatory
  4. Up to nine article chapters - mandatory
  5. Additional content, eg. footnotes - optional
  6. Read next article - mandatory

Article introduction / foreword

This introductory chapter should be made up of:

  1. Article oveview - mandatory
  2. Social sharing bar - optional
  3. Article introduction / foreword - mandatory

Chapter content

Components may be mixed and matched within each chapter but must remain within the standard design grid. Main copy must remain within a maximum of eight columns at desktop but editorial pullouts or wider components may be used to help balance the page.

Exclusive components that can be used to add a layer of interaction and delight to a predominantly static article page are:

Interaction

  • Hero image becomes the background for all chapter headings / dividers
  • Chapter index becomes visble after the article introduction is above half way up the window
  • Chapter index becomes hidden after the last chapter passes half way up the window

Labels

  • Chapter titles must be kept as short and susinct as possible, ideally below 45 characters.
  • The title for the first chapter (chapter 0) which is not displayed on the page but within the chapter index should be appropriate for the article, for example 'Introduction' or 'Foreword'.

Accessibility and screen readers

  • Image / text contrast in line with pre-existing WCAG guidelines and established Framework components
  • Ability to disable animation effects

Placement

  • Placed directly between the masthead and the footer

Design notes

  • Article content is limited to maximum of eight columns wide at desktop
  • Article chapter spacing follows standard section in-out rules
  • Article overview copy should be H3 styling

Examples

Interactive example

Code example

<article class="o-long-form-article" itemscope itemtype="https://schema.org/Article">
	<div itemprop="publisher" itemscope itemtype="https://schema.org/Organization">
		<div itemprop="logo" itemscope itemtype="https://schema.org/ImageObject">
			<meta itemprop="url" content="..." />
		</div>
		<meta itemprop="name" content="..." />
	</div>
	<div class="o-long-form-article__hero">
		...
	</div>
	<div class="o-long-form-article__author-box">
		...
	</div>
	<div class="o-long-form-article__chapter-index">
		...
	</div>
	<div class="o-long-form-article__chapters" itemprop="articleBody">
		<section class="o-long-form-article-chapter">
			<div class="o-long-form-article-chapter__section l-section l-section--in-out ">
				<div class="l-content-container">
					<div class="l-editorial-content">
						<p class="a-heading a-heading--3">...</p>
						<!-- Optional social sharing bar -->
						...
					</div>
				</div>
			</div>
		</section>
		<section class="o-long-form-article-chapter">
			<div class="o-long-form-article-chapter__heading">
				<div class="l-content-container">
					<h2 class="a-heading a-heading--1 a-heading--semibold">...</h2>
				</div>
			</div>
			<div class="o-long-form-article-chapter__section l-section l-section--in-out ">
				<div class="l-content-container">
					...
				</div>
			</section>
		</div>
		...
	</div>
	<div class="o-long-form-article__additional-content">
		...
	</div>
	<div class="o-long-form-article__read-next">
		...
	</div>
</article>

Development and test

Notes for developers

Ensure that text content within chapters is limited to a maximum of eight columns at desktop. This could be achieved be either using the maximum width container or an editorial content area.

Extension component

This component forms part of the 'long-form-article' extension and uses other extension components so requires an additional stylesheets to be loaded in order to be used; include the following code in the header of your page to attach the relevant additional stylesheet:

<link media="all" href="./assets/[ theme type ]/[ release version ]/[ organisation ]/[ theme name ]/css/heroes.css" rel="stylesheet" />
<link media="all" href="./assets/[ theme type ]/[ release version ]/[ organisation ]/[ theme name ]/css/long-form-article.css" rel="stylesheet" />
<link media="all" href="./assets/[ theme type ]/[ release version ]/[ organisation ]/[ theme name ]/css/supporting-navigation.css" rel="stylesheet" />

Classes overview

The following table gives you a quick overview of the CSS classes that can be applied.

Class Outcome Required Applied to Comments
.o-long-form-article Container for all content within a long form article Yes article  
.o-long-form-article__hero Container for the long form article hero Yes .o-long-form-article > div  
.o-long-form-article__author-box Container for the long form article author box Yes .o-long-form-article__hero + div  
.o-long-form-article__chapter-index Container for the long form article chapter index Yes .o-long-form-article > div Place before the first chapter section
.o-long-form-article__chapters Container for all the long form article chapters Yes .o-long-form-article > div Place after the hero, author box and chapter index
.o-long-form-article-chapter Container for a long form article chapter Yes .o-long-form-article__chapters > section  
.o-long-form-article-chapter__heading Container the chapter heading Yes .o-long-form-article-chapter > div Manadatory for all chapters apart for the introduction/foreword (chapter 0)
.o-long-form-article-chapter__section Container the chapter content Yes .o-long-form-article-chapter__heading + div  
.o-long-form-article__additional-content Container for any addition content that is not a chapter for the article Yes .o-long-form-article__chapters + div

The area is for content such as footnotes which do not form part of the main article chapters

.o-long-form-article__read-next Container for the long form article read next Yes .o-long-form-article > div:last-child

Place as the last item of a long form article

Component releases

  • Added on: v5.1.0 (03/11/20)
  • Updated on: v5.2.0 (17/11/20)

Latest update:

  • updated: To improve page load and layout times the additional attributes decoding="async", width and height must be set on all inline images.
  • updated: Markup has changed to use the picture element to improve page performance by allowing different sized images to be served for different screen sizes.

Full version history

A full history of changes and enhancements detailing all minor and major updates to the component.

View full version history

Want something new in Framework, or to chat about an issue you're having with it?

Contact the team