Blueprint Typography
A base typography for your website that follows a typographic rhythm.
This file can be imported using:
@import "blueprint/typography"
Imports
- Colors
- Link Colors – Easy assignment of colors to link states.
- Float – Mixins for cross-browser floats.
Configurable Variables help
$blueprint-font-family
"Helvetica Neue", Arial, Helvetica, sans-serif
$blueprint-fixed-font-family
"andale mono", "lucida console", monospace
$blueprint-font-size
12px
Mixins
view sourceblueprint-typography($nested)
=blueprint-typography($nested: false)
@if $nested
+blueprint-typography-body
+blueprint-typography-defaults
@else
body
+blueprint-typography-body
+blueprint-typography-defaults
@mixin blueprint-typography($nested: false) {
@if $nested {
@include blueprint-typography-body;
@include blueprint-typography-defaults; }
@else {
body {
@include blueprint-typography-body; }
@include blueprint-typography-defaults; } }
Usage examples: As a top-level mixin, apply to any page that includes the stylesheet:
+blueprint-typography
Scoped by a presentational class:
body.blueprint +blueprint-typography(true)
Scoped by semantic selectors:
body#page-1, body#page-2, body.a-special-page-type +blueprint-typography(true)
normal-text
=normal-text font-family: $blueprint-font-family color: $font-color
@mixin normal-text {
font-family: $blueprint-font-family;
color: $font-color; }
fixed-width-text
=fixed-width-text font: 1em $blueprint-fixed-font-family line-height: 1.5
@mixin fixed-width-text {
font: 1em $blueprint-fixed-font-family;
line-height: 1.5; }
header-text
=header-text font-weight: normal color: $header-color
@mixin header-text {
font-weight: normal;
color: $header-color; }
quiet
=quiet color: $quiet-color
@mixin quiet {
color: $quiet-color; }
loud
=loud color: $loud-color
@mixin loud {
color: $loud-color; }
blueprint-typography-body($font-size)
=blueprint-typography-body($font-size: $blueprint-font-size) line-height: 1.5 +normal-text font-size: 100% * $font-size / 16px
@mixin blueprint-typography-body($font-size: $blueprint-font-size) {
line-height: 1.5;
@include normal-text;
font-size: 100% * $font-size / 16px; }
blueprint-typography-defaults
=blueprint-typography-defaults
#{headers(all)}
+header-text
img
margin: 0
h1
font-size: 3em
line-height: 1
margin-bottom: 0.50em
h2
font-size: 2em
margin-bottom: 0.75em
h3
font-size: 1.5em
line-height: 1
margin-bottom: 1.00em
h4
font-size: 1.2em
line-height: 1.25
margin-bottom: 1.25em
h5
font-size: 1em
font-weight: bold
margin-bottom: 1.50em
h6
font-size: 1em
font-weight: bold
p
margin: 0 0 1.5em
.left
+float-left
margin: 1.5em 1.5em 1.5em 0
padding: 0
.right
+float-right
margin: 1.5em 0 1.5em 1.5em
padding: 0
a
text-decoration: underline
+link-colors($link-color, $link-hover-color, $link-active-color, $link-visited-color, $link-focus-color)
blockquote
margin: 1.5em
color: $alt-text-color
font-style: italic
strong, dfn
font-weight: bold
em, dfn
font-style: italic
sup, sub
line-height: 0
abbr, acronym
border-bottom: 1px dotted #666666
address
margin: 0 0 1.5em
font-style: italic
del
color: $alt-text-color
pre
margin: 1.5em 0
white-space: pre
pre, code, tt
+fixed-width-text
li ul, li ol
margin: 0
ul, ol
margin: 0 1.5em 1.5em 0
padding-left: 1.5em
ul
list-style-type: disc
ol
list-style-type: decimal
dl
margin: 0 0 1.5em 0
dt
font-weight: bold
dd
margin-left: 1.5em
table
margin-bottom: 1.4em
width: 100%
th
font-weight: bold
thead th
background: $blueprint-table-header-color
th, td, caption
padding: 4px 10px 4px 5px
table.striped tr:nth-child(even) td,
table tr.even td
background: $blueprint-table-stripe-color
tfoot
font-style: italic
caption
background: $blueprint-background-color
.quiet
+quiet
.loud
+loud
@mixin blueprint-typography-defaults {
#{headers(all)} {
@include header-text;
img {
margin: 0; } }
h1 {
font-size: 3em;
line-height: 1;
margin-bottom: 0.50em; }
h2 {
font-size: 2em;
margin-bottom: 0.75em; }
h3 {
font-size: 1.5em;
line-height: 1;
margin-bottom: 1.00em; }
h4 {
font-size: 1.2em;
line-height: 1.25;
margin-bottom: 1.25em; }
h5 {
font-size: 1em;
font-weight: bold;
margin-bottom: 1.50em; }
h6 {
font-size: 1em;
font-weight: bold; }
p {
margin: 0 0 1.5em;
.left {
@include float-left;
margin: 1.5em 1.5em 1.5em 0;
padding: 0; }
.right {
@include float-right;
margin: 1.5em 0 1.5em 1.5em;
padding: 0; } }
a {
text-decoration: underline;
@include link-colors($link-color, $link-hover-color, $link-active-color, $link-visited-color, $link-focus-color); }
blockquote {
margin: 1.5em;
color: $alt-text-color;
font-style: italic; }
strong, dfn {
font-weight: bold; }
em, dfn {
font-style: italic; }
sup, sub {
line-height: 0; }
abbr, acronym {
border-bottom: 1px dotted #666666; }
address {
margin: 0 0 1.5em;
font-style: italic; }
del {
color: $alt-text-color; }
pre {
margin: 1.5em 0;
white-space: pre; }
pre, code, tt {
@include fixed-width-text; }
li ul, li ol {
margin: 0; }
ul, ol {
margin: 0 1.5em 1.5em 0;
padding-left: 1.5em; }
ul {
list-style-type: disc; }
ol {
list-style-type: decimal; }
dl {
margin: 0 0 1.5em 0;
dt {
font-weight: bold; } }
dd {
margin-left: 1.5em; }
table {
margin-bottom: 1.4em;
width: 100%; }
th {
font-weight: bold; }
thead th {
background: $blueprint-table-header-color; }
th, td, caption {
padding: 4px 10px 4px 5px; }
table.striped tr:nth-child(even) td,
table tr.even td {
background: $blueprint-table-stripe-color; }
tfoot {
font-style: italic; }
caption {
background: $blueprint-background-color; }
.quiet {
@include quiet; }
.loud {
@include loud; } }