Typography
A visual manifestation of our brand voice, typography is key to our messaging. It is an instantly recognisable brand asset and is present on every digital touchpoint.
Quick tip
All of the following guidelines and accessibility requirements are applied automatically when you use the ba-content component
Typefaces
We have two main typefaces in our design system, Mylius Modern and Open Sans.
Headings
We use our branded font Mylius Modern, in the light font weight for all of our headings. This is a custom typeface specifically made for British Airways.
Body text
We use Open Sans in the light font weight as our body text. Open Sans, a Google web font with a broad range of weights and language capabilities that works well at small sizes.
Type sizes
Our type has set relationships to each other to create hierarchy of information. This relationship is based on percentages related to the body copy to give flexibility across any application. Our primary, secondary and tertiary headings have separate sizes for smaller viewports. Desktop and mobile heading sizes will automatically adapt to their relevant sizes, if being used within ba-content.
Primary header
Secondary header
Tertiary header
Summary
Micro XS header
Micro XXS header
Body
Small Print
Type hierarchy
Using correct hierarchy with type is imperative to surfacing clear and important information for our customers. For flexibility, you can use any size heading at any point on the page, but when designing for web, it’s important to remember to keep correct semantics within the HTML. (H1, H2, H3 etc.).
Line length
Having the right amount of text on a line is key to the readability and accessibility of text. Too wide, and readers have a hard time focussing on the text. Too narrow, and readers’ eyes will be travelling back and forth breaking rhythm.
In our design system, we control line length using ba-content to a limit between 45 and 75 characters - roughly 690px wide when the body font is set to default (16px).
Feel free to use this plugin for changing text box widths in Figma.
Further reading: baymard.com/blog/line-length-readability
Guidelines
Content is much more readable when proper hierarchy is in place. Use larger sizes for anything that needs to be glanceable, for example: flight numbers, booking references and times. Use smaller sizes for editorial and long form content such as information, and terms.
Further reading:
Restrict line length to 45 - 75 characters
Further reading:
READABILITY IS REDUCED WITH ALL UPPERCASE BECAUSE ALL WORDS HAVE A UNIFORM RECTANGULAR SHAPE, MEANING READERS CAN'T IDENTIFY WORDS BY THEIR SHAPE.
Uppercase text can also interpreted differently by different assistive tech,
Further reading:
Underlined text can be mistaken for links.
Further reading:
If text is fully justified or center-justified, people may have issues with tracking (finding the beginning of each line of text).
Further reading:
Accessibility
Before implementing a design ensure that it meets colour contrast requirements.
Contrast Minimum
People with partial sight often have difficulty reading text if the colour contrast between foreground and background colours is not sufficient.
Using colours that contrast well makes it much easier for people to read content comfortably.
- Small text is 4.5:1 — text smaller than 24px or 19px if bold
- Large text is 3:1 — text larger than 24px or 19px if bold.
People with cognitive disabilities or those with partial sight may have trouble reading text with the authored font family, size and colour. People with low-vision may zoom in a lot, and text within bitmap images gets very pixelated & blurry.
In order to read content comfortably, they may change the visual presentation of the content using their own style sheets.
Text should always be used to present information rather than an image as the presentation of content in an image cannot be changed easily, if required.
If you're provided with an image asset which could be implemented in HTML, recommend this over using the visual asset. Often custom typefaces and visual styling via CSS can achieve the desired effect. If this is not possible and text is included in the image, try to include the text in HTML elsewhere on the page.
Properly marked up headings help screen reader users in particular as they may choose to navigate via page headings (skipping other content), making their journey more efficient.
- Use one H1 for the heading which best describes the page (ideally at the start of the main landmark)
- Use H2s for sections of the page. You can have one or two H2s above the H1, e.g. a hidden H2 for the navigation.
- Use H3s and H4s for sub-sections, and sub-sub-sections etc. Evaluating the appropriate heading level is asking the question: Is this a sub-section of the previous heading? If yes, go down a level (e.g. H3 under an H2). Otherwise use the same level.
Further reading:
Using lists to group content on a page improves accessibility as assistive technologies often report the number of lists on a page as well as the number of items in a list. This helps people using these technologies to build up a mental picture of the page and its content.
Any bulleted or numbered list must use list markup. Lists can also be useful for sets of items such as navigation items and search results.
Further reading:
Text should be clear and content should not be lost when people with visual impairments or dyslexia override the site's text spacing or font family. Increased spacing or a change of font family may help users to enable readability or increased reading speed. Fixed height containers of text will often break when text-spacing is changed. Use min-height instead.
Text should not overlap or get cut off and fit within its containing box.
It is possible with CSS to reduce the text size for smaller screens, which impacts higher levels of zoom. When using zoom, users should be able to get text to at least 200%.
Please stick to our light font weights within Mylius and Open Sans. Large areas of bold, italic or underlined text can be difficult to read for people with dyslexia. Most screen readers will not announce bold or italic text, so emphasis is lost for those who cannot see the text.
Further reading: