Frameworks make decisions for you about how to organize, structure and design a site. Pattern libraries don’t separate styling and markup, making them tough to use in a truly modular fashion. We weren’t satisfied, so we made a thing that doesn’t do that.
Typeplate is a “typographic starter kit”. We don’t make aesthetic design choices, but define proper markup with extensible styling for common typographic patterns. A stripped-down Sass or CSS library of your choosing primarily concerned with the appropriate technical implementation of design patterns—not how they look.
Establish clearly distinguishable heading levels with consistent font-sizes over randomly chosen values. Choose a type hierarchy that is harmonious and consistent with your project. In order to do so we suggest using a modular scale that calculates sizes via a ratio ensuring your design and typography can relate in a meaningful way. There’s an excellent calculator for this at modularscale.com.
Just like in print, don’t use the darkest black available in your body text (#000). Instead, go for something softer, like #444. You can use a slightly darker color for titles like (#222) for example. Since these values are considered a de facto standard in practice, they're not necessarily ordained by law.
The word-wrap CSS property is used to specify whether or not, the browser may break lines within words in order to prevent overflow when an otherwise unbreakable string is too long to fit in its containing box.
On the web, paragraphs are commonly set in blocks, with top and bottom margins. Historically, paragraphs are set using indentation, which makes it easier to scan long-form text and are (we think) more conducive to readability.
Authors choosing to opt out of our default styling may feel free to change the boolean variable in the Sass port to remove this opinionated default as depicted in the example below. CSS people you'll have to settle for the manual route to customize.
Responsive or not, there’s no reason why we shouldn’t all be designing and building sites on flexible foundations. In a fluid layout, browser width and typographic measure are linked: the wider the viewport, the more characters per line. Keeping in mind that a range of 45-75 characters per line is generally accepted as safe for comfortable reading, there are a few things that can be done to avoid extra long lines of text in fluid layouts. Robert Bringhurst recommends for us to leave at least two characters behind and take at least three forward.
Small caps help to make abbreviations way easier to read, but won’t stand out from the text. We highly suggest this bit of typographic flare with your content. True small capitals are now possible on the web, but alas, they are still difficult and will also depend on the typeface in use. Definitely check out Open Typography for those typefaces and services that provide authentic small caps.
With the unicode-range property, we can avoid using verbose markup and only target the characters we like according to the unicode unique identifier. We also harness the power of the %placeholder in Sass allowing like minded selectors to string together this shared property in a DRY way from one single declaration. Copy and paste the Sass below into Codepen and check out the output for yourself. Hint: create multiple classes.
The small element is used to represent side comments or what’s commonly referred to as ‘small print’: disclaimers, caveats, legal restrictions, or copyrights. It can also be used for attributions or satisfying licensing requirements.
Monospace fonts just as you desire for all your code block dreams! Monospace fonts or “fixed pitch” fonts, contain characters that all have the same character width. ‘l’, ‘1’ and ‘i’ are easily distinguished with monospace, ‘0’, ‘o’ and ‘O’ are easily distinguished and clear punctuation characters, especially braces, parenthesis and brackets.
The blockquote element represents a section that is being quoted from another source. Good blockquotes should include a citation, but one is not required. Stylistically, these can look a lot like pull-quotes by using :before and :after pseudo elements for the curly quotes, or, authors can include them inline.
The dl element is for another type of list called a definition list. Instead of list items, the content of a dl consists of dt (Definition Term) and dd (Definition Description) pairs.
TypePlate offers several different patterns for definition lists. In all three of the examples below, the contents of dts are wrapped in b tags, and a class of .micro is given to the contents of dds. First is the default format for definitions lists.
a) Multi-line Definitions (default)
b) Inline Definitions
The second format for definition lists is lining. This style is more robust, with support for multiple terms defined by a single definition, and applies proper punctuation (: ,) where appropriate:
c) Dictionary-style Definition
The third format for definition lists is dictionary. This style is more a formal, applying proper punctuation where necessary and includes ordinal indicators: