beautiful web typography (#5)

252
Beautiful Web Typography Simon Pascal Klein — @klepas Letter, text, & page Version 5

Upload: pascal-klein

Post on 17-Aug-2014

21.720 views

Category:

Design


0 download

DESCRIPTION

The fifth rendition of my Beautiful Web Typography with some updates, additional info, more links and whatnot. A new section has been added focusing on webfonts (font linking and embedding) with the recent developments in that regard. Kudos should go out to the chaps listed in the end as well as inspirational peeps like Ellen Lupton, whose categorisation of things type into letter, text, grid I’ve used to structure this talk.

TRANSCRIPT

Page 1: Beautiful Web Typography (#5)

Beautiful WebTypography

Simon Pascal Klein — @klepas

Letter, text, & page

Version 5

Page 2: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 3: Beautiful Web Typography (#5)

Intro…

Beautiful Web Typography

Page 4: Beautiful Web Typography (#5)

I’m Pascal Klein.

Beautiful Web Typography

Page 5: Beautiful Web Typography (#5)

I’m…

Beautiful Web Typography

Page 6: Beautiful Web Typography (#5)

I’m…

a graphic & web designer;1.

Beautiful Web Typography

Page 7: Beautiful Web Typography (#5)

I’m…

a graphic & web designer;1.

a bit of a UI and UX aficionado;2.

Beautiful Web Typography

Page 8: Beautiful Web Typography (#5)

I’m…

a graphic & web designer;1.

a bit of a UI and UX aficionado;2.

and, incurably, a rampant ‘typophile’.3.

Beautiful Web Typography

Page 9: Beautiful Web Typography (#5)

‘Typophiles’ are über gεεks who

♥ typography.

Beautiful Web Typography

Page 10: Beautiful Web Typography (#5)

‘Typophiles’ are über gεεks who

♥ typography.

Hands up and make yourselves known.

Beautiful Web Typography

Page 11: Beautiful Web Typography (#5)

ty•pog•ra•phy | tīˈpägrəfē | •n

Beautiful Web Typography

Page 12: Beautiful Web Typography (#5)

ty•pog•ra•phy | tīˈpägrəfē | •n

Typography is the art of creating and setting type

with the purpose of honoring the text it sets.

Beautiful Web Typography

Page 13: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 14: Beautiful Web Typography (#5)

Typography can bring aesthetic order to

information, helping users read & navigate.

Beautiful Web Typography

Page 15: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 16: Beautiful Web Typography (#5)

i.e. make textual stuff look pretty.

Beautiful Web Typography

Page 17: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 18: Beautiful Web Typography (#5)

premise:

Beautiful Web Typography

Page 19: Beautiful Web Typography (#5)

The intertubes today are

info-heavy.

premise:

Beautiful Web Typography

Page 20: Beautiful Web Typography (#5)

The intertubes today are

info-heavy.

Much of it is textual.

premise:

Beautiful Web Typography

Page 21: Beautiful Web Typography (#5)

The intertubes today are

info-heavy.

Much of it is textual.

premise:

Much of it is a pain to read.

Beautiful Web Typography

Page 22: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 23: Beautiful Web Typography (#5)

Assumptions?

Beautiful Web Typography

Page 24: Beautiful Web Typography (#5)

Assumptions?It sucks? It’s boring?

Beautiful Web Typography

Page 25: Beautiful Web Typography (#5)

Assumptions?

Limited to sans-serif only for readability?1.

It sucks? It’s boring?

Beautiful Web Typography

Page 26: Beautiful Web Typography (#5)

Assumptions?

Limited to sans-serif only for readability?1.

Only ‘web-safe’ fonts?2.

It sucks? It’s boring?

Beautiful Web Typography

Page 27: Beautiful Web Typography (#5)

Assumptions?

Limited to sans-serif only for readability?1.

Only ‘web-safe’ fonts?2.

Limited control—resort to Flash and other non-

standard technologies?

3.

It sucks? It’s boring?

Beautiful Web Typography

Page 28: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 29: Beautiful Web Typography (#5)

Beautiful Web Typography

Not quite.

Page 30: Beautiful Web Typography (#5)

Beautiful Web Typography

Not quite.

(Yay!)

Page 31: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 32: Beautiful Web Typography (#5)

Letter (micro)1.

Beautiful Web Typography

Page 33: Beautiful Web Typography (#5)

Letter (micro)1.

Page or grid (macro)3.

Beautiful Web Typography

Page 34: Beautiful Web Typography (#5)

Letter (micro)1.

Text2.

Page or grid (macro)3.

Beautiful Web Typography

Page 35: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 36: Beautiful Web Typography (#5)

Reset0.

Beautiful Web Typography

Page 37: Beautiful Web Typography (#5)

Reset0.

All the browsers have their own default styling for

various (x)HTML elements. This makes it a pain for

cross-browser consistency.

Beautiful Web Typography

Page 38: Beautiful Web Typography (#5)

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {margin:0;padding:0;}table {border-collapse:collapse;border-spacing:0;}fieldset,img {border:0;}address,caption,cite,code,dfn,em,strong,th,var {font-style: normal;font-weight:normal;}ul,ol {list-style:none;}caption,th {text-align:left;}h1,h2,h3,h4,h5,h6 {font-size:100%;font-weight:normal;}q:before,q:after {content:'';}abbr,acronym {border:0;}

Googling “CSS reset stylesheets” should land you

with numerous examples. This one above is from

the Yahoo! UI library.

Beautiful Web Typography

Page 39: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 40: Beautiful Web Typography (#5)

Letter & Text

Beautiful Web Typography

Page 41: Beautiful Web Typography (#5)

Letter & Texttypeface (font) and style•

Beautiful Web Typography

Page 42: Beautiful Web Typography (#5)

Letter & Texttypeface (font) and style•

spacing (tracking/letter-spacing)•

Beautiful Web Typography

Page 43: Beautiful Web Typography (#5)

Letter & Texttypeface (font) and style•

spacing (tracking/letter-spacing)•

individual glyphs•

Beautiful Web Typography

Page 44: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 45: Beautiful Web Typography (#5)

serifBeautiful Web Typography

Page 46: Beautiful Web Typography (#5)

serifsans serif

Beautiful Web Typography

Page 47: Beautiful Web Typography (#5)

serifsans serifscript

Beautiful Web Typography

Page 48: Beautiful Web Typography (#5)

serifsans serifscript

blackletter

Beautiful Web Typography

Page 49: Beautiful Web Typography (#5)

serifsans serifscript

blacklettermonospace

Beautiful Web Typography

Page 50: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 51: Beautiful Web Typography (#5)

Mixing typefaces requires special attention. Try to

align x-heights and sizes. X-heights?

Beautiful Web Typography

Page 52: Beautiful Web Typography (#5)

Mixing typefaces requires special attention. Try to

align x-heights and sizes. X-heights?

Beautiful Web Typography

Helvetica Regular 96pt & Minion Pro Regular 96pt.

x-height x-height

Page 53: Beautiful Web Typography (#5)

Mixing typefaces requires special attention. Try to

align x-heights and sizes. X-heights?

Beautiful Web Typography

Helvetica Regular 96pt & Minion Pro Regular 96pt.

x-height x-height

Helvetica Regular 96pt & Minion Pro Regular 114pt.

x-heightx-height

Page 54: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 55: Beautiful Web Typography (#5)

Use a limited palette of type families. A common

and effective technique is to pair a serif and a

sans serif face together. E.g.:

Beautiful Web Typography

Page 56: Beautiful Web Typography (#5)

Use a limited palette of type families. A common

and effective technique is to pair a serif and a

sans serif face together. E.g.:

one sets the body, the other the headings;1.

Beautiful Web Typography

Page 57: Beautiful Web Typography (#5)

Use a limited palette of type families. A common

and effective technique is to pair a serif and a

sans serif face together. E.g.:

one sets the body, the other the headings;1.

one sets primary content, the other UI controls.2.

Beautiful Web Typography

Page 58: Beautiful Web Typography (#5)

Use a limited palette of type families. A common

and effective technique is to pair a serif and a

sans serif face together. E.g.:

one sets the body, the other the headings;1.

one sets primary content, the other UI controls.2.

We do this with the font-family property.

Beautiful Web Typography

Page 59: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 60: Beautiful Web Typography (#5)

…but only ‘web safe’ fonts?

Beautiful Web Typography

Page 61: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 62: Beautiful Web Typography (#5)

Beautiful Web Typography

ArialVerdanaCourier New

Times New RomanGeorgiaTrebuchet MS

Page 63: Beautiful Web Typography (#5)

Options for setting fonts:

Beautiful Web Typography

Page 64: Beautiful Web Typography (#5)

Options for setting fonts:

Beautiful Web Typography

Installed fonts (mostly web-safe)1.

Page 65: Beautiful Web Typography (#5)

Options for setting fonts:

Beautiful Web Typography

sIFR or other JS and Flash replacement2.

Installed fonts (mostly web-safe)1.

Page 66: Beautiful Web Typography (#5)

Options for setting fonts:

Beautiful Web Typography

Cufón et al. (http://tinyurl.com/git-cufon)3.

sIFR or other JS and Flash replacement2.

Installed fonts (mostly web-safe)1.

Page 67: Beautiful Web Typography (#5)

Options for setting fonts:

Beautiful Web Typography

Cufón et al. (http://tinyurl.com/git-cufon)3.

sIFR or other JS and Flash replacement2.

webfonts: EOT/EOT Lite via @font-face4.

Installed fonts (mostly web-safe)1.

Page 68: Beautiful Web Typography (#5)

Options for setting fonts:

webfonts: OT/TTF via @font-face5.

Beautiful Web Typography

Cufón et al. (http://tinyurl.com/git-cufon)3.

sIFR or other JS and Flash replacement2.

webfonts: EOT/EOT Lite via @font-face4.

Installed fonts (mostly web-safe)1.

Page 69: Beautiful Web Typography (#5)

Options for setting fonts:

webfonts: OT/TTF via @font-face5.

Beautiful Web Typography

Cufón et al. (http://tinyurl.com/git-cufon)3.

sIFR or other JS and Flash replacement2.

webfonts: EOT/EOT Lite via @font-face4.

Installed fonts (mostly web-safe)1.

Typekit, Fontdeck, Kernest, et al.6.

Page 70: Beautiful Web Typography (#5)

Options for setting fonts:

webfonts: OT/TTF via @font-face5.

Beautiful Web Typography

Cufón et al. (http://tinyurl.com/git-cufon)3.

sIFR or other JS and Flash replacement2.

webfonts: EOT/EOT Lite via @font-face4.

Installed fonts (mostly web-safe)1.

OpenType permissions extension?7.

Typekit, Fontdeck, Kernest, et al.6.

Page 71: Beautiful Web Typography (#5)

Options for setting fonts:

webfonts: OT/TTF via @font-face5.

Beautiful Web Typography

Cufón et al. (http://tinyurl.com/git-cufon)3.

sIFR or other JS and Flash replacement2.

webfonts: EOT/EOT Lite via @font-face4.

Installed fonts (mostly web-safe)1.

OpenType permissions extension?7.

Typekit, Fontdeck, Kernest, et al.6.

.webfont proposal?8.

Page 72: Beautiful Web Typography (#5)

Beautiful Web Typography

. Installed or web-safe fonts

Page 73: Beautiful Web Typography (#5)

Simply call upon them directly in your font stack

declarations, e.g.:

Beautiful Web Typography

. Installed or web-safe fonts

Page 74: Beautiful Web Typography (#5)

Simply call upon them directly in your font stack

declarations, e.g.:

font-family: Baskerville, Times,

'Times New Roman', serif;

Beautiful Web Typography

. Installed or web-safe fonts

Page 75: Beautiful Web Typography (#5)

Simply call upon them directly in your font stack

declarations, e.g.:

font-family: Baskerville, Times,

'Times New Roman', serif;

Beautiful Web Typography

. Installed or web-safe fonts

font-family: 'Helvetica Neue', Helvetica,

'Arial', sans-serif;

Page 76: Beautiful Web Typography (#5)
Page 77: Beautiful Web Typography (#5)

Font stacks:

Beautiful Web Typography

Page 78: Beautiful Web Typography (#5)

Font stacks:

desired•

Beautiful Web Typography

Page 79: Beautiful Web Typography (#5)

Font stacks:

desired•

fallback•

Beautiful Web Typography

Page 80: Beautiful Web Typography (#5)

Font stacks:

desired•

fallback•

Beautiful Web Typography

generic (e.g. serif, sans-serif, monospace)•

Page 81: Beautiful Web Typography (#5)

Flash text replacement that in unison with JS

replaces type using type from a Flash file.

Beautiful Web Typography

. s et al.

Page 82: Beautiful Web Typography (#5)

Flash text replacement that in unison with JS

replaces type using type from a Flash file.

Beautiful Web Typography

. s et al.

Not a feasible solution long-term:

Page 83: Beautiful Web Typography (#5)

Flash text replacement that in unison with JS

replaces type using type from a Flash file.

Beautiful Web Typography

. s et al.

Not a feasible solution long-term:

does subsetting;1.

Page 84: Beautiful Web Typography (#5)

Flash text replacement that in unison with JS

replaces type using type from a Flash file.

Beautiful Web Typography

. s et al.

Not a feasible solution long-term:

does subsetting;1.

non-standard solution—relies on both Flash and JS;2.

Page 85: Beautiful Web Typography (#5)

Flash text replacement that in unison with JS

replaces type using type from a Flash file.

Beautiful Web Typography

. s et al.

Not a feasible solution long-term:

does subsetting;1.

non-standard solution—relies on both Flash and JS;2.

high page load time—not feasible for body copy.3.

Page 86: Beautiful Web Typography (#5)

These were the first JS-only implementations.

Cufón converts font paths to VML paths stored in

JSON, then rendering the font paths using JS.

Beautiful Web Typography

. Cufón & other implementations

Page 87: Beautiful Web Typography (#5)

These were the first JS-only implementations.

Cufón converts font paths to VML paths stored in

JSON, then rendering the font paths using JS.

Beautiful Web Typography

. Cufón & other implementations

Various thoughts and concerns:

Page 88: Beautiful Web Typography (#5)

These were the first JS-only implementations.

Cufón converts font paths to VML paths stored in

JSON, then rendering the font paths using JS.

Beautiful Web Typography

. Cufón & other implementations

Various thoughts and concerns:

not accessible but works in most browsers;1.

Page 89: Beautiful Web Typography (#5)

These were the first JS-only implementations.

Cufón converts font paths to VML paths stored in

JSON, then rendering the font paths using JS.

Beautiful Web Typography

. Cufón & other implementations

Various thoughts and concerns:

not accessible but works in most browsers;1.

type foundries are/were skeptical—not a ‘service’;

limited palette of typefaces;

2.

Page 90: Beautiful Web Typography (#5)

These were the first JS-only implementations.

Cufón converts font paths to VML paths stored in

JSON, then rendering the font paths using JS.

Beautiful Web Typography

. Cufón & other implementations

Various thoughts and concerns:

not accessible but works in most browsers;1.

type foundries are/were skeptical—not a ‘service’;

limited palette of typefaces;

2.

converter is often proprietary;3.

Page 91: Beautiful Web Typography (#5)

Developed by Microsoft, Embedded OpenType

subsets, compresses, and encrypts OT and TTF. Can

be restricted a list of trusted roots. Uses webfonts.

Described as ‘DRM icing on an OpenType cake’.

Beautiful Web Typography

. webfonts: / Lite

Page 92: Beautiful Web Typography (#5)

Developed by Microsoft, Embedded OpenType

subsets, compresses, and encrypts OT and TTF. Can

be restricted a list of trusted roots. Uses webfonts.

Described as ‘DRM icing on an OpenType cake’.

Beautiful Web Typography

. webfonts: / Lite

Not feasible as-is currently:

Page 93: Beautiful Web Typography (#5)

Developed by Microsoft, Embedded OpenType

subsets, compresses, and encrypts OT and TTF. Can

be restricted a list of trusted roots. Uses webfonts.

Described as ‘DRM icing on an OpenType cake’.

Beautiful Web Typography

. webfonts: / Lite

Not feasible as-is currently:

non-standard, proprietary solution;1.

Page 94: Beautiful Web Typography (#5)

Developed by Microsoft, Embedded OpenType

subsets, compresses, and encrypts OT and TTF. Can

be restricted a list of trusted roots. Uses webfonts.

Described as ‘DRM icing on an OpenType cake’.

Beautiful Web Typography

. webfonts: / Lite

Not feasible as-is currently:

non-standard, proprietary solution;1.

requires a proprietary converter (WEFT) to use;2.

Page 95: Beautiful Web Typography (#5)

Developed by Microsoft, Embedded OpenType

subsets, compresses, and encrypts OT and TTF. Can

be restricted a list of trusted roots. Uses webfonts.

Described as ‘DRM icing on an OpenType cake’.

Beautiful Web Typography

. webfonts: / Lite

Not feasible as-is currently:

non-standard, proprietary solution;1.

requires a proprietary converter (WEFT) to use;2.

proposal rejected by W3C & only supported by IE.3.

Page 96: Beautiful Web Typography (#5)

Also uses webfonts CSS @font-face and links

directly via the src: declaration to an OT/TTF file

which is downloaded and used to render the type.

Beautiful Web Typography

. webfonts: /

Page 97: Beautiful Web Typography (#5)

Also uses webfonts CSS @font-face and links

directly via the src: declaration to an OT/TTF file

which is downloaded and used to render the type.

Beautiful Web Typography

. webfonts: /

Feasible but:

Page 98: Beautiful Web Typography (#5)

Also uses webfonts CSS @font-face and links

directly via the src: declaration to an OT/TTF file

which is downloaded and used to render the type.

Beautiful Web Typography

. webfonts: /

Feasible but:

OT/TTF files can easily be downloaded;1.

Page 99: Beautiful Web Typography (#5)

Also uses webfonts CSS @font-face and links

directly via the src: declaration to an OT/TTF file

which is downloaded and used to render the type.

Beautiful Web Typography

. webfonts: /

Feasible but:

OT/TTF files can easily be downloaded;1.

supported in Safari 3.1+, Firefox 3.5+ (planned for

Opera 10 and Chrome 2.0 beta);

2.

Page 100: Beautiful Web Typography (#5)

Also uses webfonts CSS @font-face and links

directly via the src: declaration to an OT/TTF file

which is downloaded and used to render the type.

Beautiful Web Typography

. webfonts: /

Feasible but:

OT/TTF files can easily be downloaded;1.

supported in Safari 3.1+, Firefox 3.5+ (planned for

Opera 10 and Chrome 2.0 beta);

2.

subsetting or compression comes down to author.3.

Page 101: Beautiful Web Typography (#5)
Page 102: Beautiful Web Typography (#5)
Page 103: Beautiful Web Typography (#5)
Page 104: Beautiful Web Typography (#5)

Generally foundry initiatives that are JS-based

(though not exclusively) and hosted, paid

subscription models: select, pay, inject; done.

Beautiful Web Typography

. Typekit, Fontdeck, Kernetst, et al.

Page 105: Beautiful Web Typography (#5)

Generally foundry initiatives that are JS-based

(though not exclusively) and hosted, paid

subscription models: select, pay, inject; done.

Beautiful Web Typography

. Typekit, Fontdeck, Kernetst, et al.

Thoughts:

Page 106: Beautiful Web Typography (#5)

Generally foundry initiatives that are JS-based

(though not exclusively) and hosted, paid

subscription models: select, pay, inject; done.

Beautiful Web Typography

. Typekit, Fontdeck, Kernetst, et al.

Thoughts:

deemed ‘the solution’ (though still in-the-works);1.

Page 107: Beautiful Web Typography (#5)

Generally foundry initiatives that are JS-based

(though not exclusively) and hosted, paid

subscription models: select, pay, inject; done.

Beautiful Web Typography

. Typekit, Fontdeck, Kernetst, et al.

Thoughts:

deemed ‘the solution’ (though still in-the-works);1.

2. standards-based, good browser support, and easy;

Page 108: Beautiful Web Typography (#5)

Generally foundry initiatives that are JS-based

(though not exclusively) and hosted, paid

subscription models: select, pay, inject; done.

Beautiful Web Typography

. Typekit, Fontdeck, Kernetst, et al.

Thoughts:

deemed ‘the solution’ (though still in-the-works);1.

subsetting and/or compression service-side.3.

2. standards-based, good browser support, and easy;

Page 109: Beautiful Web Typography (#5)
Page 110: Beautiful Web Typography (#5)
Page 111: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 112: Beautiful Web Typography (#5)
Page 113: Beautiful Web Typography (#5)

Proposed by David Burlow from Font Bureau as a

simple permissions table extension for OpenType

with a perm tag.

Beautiful Web Typography

. OpenType permissions extension?

Page 114: Beautiful Web Typography (#5)

Proposed by David Burlow from Font Bureau as a

simple permissions table extension for OpenType

with a perm tag.

Beautiful Web Typography

. OpenType permissions extension?

Thoughts:

Page 115: Beautiful Web Typography (#5)

Proposed by David Burlow from Font Bureau as a

simple permissions table extension for OpenType

with a perm tag.

Beautiful Web Typography

. OpenType permissions extension?

Thoughts:

simple: no change in the OT format, no wrapper;1.

Page 116: Beautiful Web Typography (#5)

Proposed by David Burlow from Font Bureau as a

simple permissions table extension for OpenType

with a perm tag.

Beautiful Web Typography

. OpenType permissions extension?

Thoughts:

simple: no change in the OT format, no wrapper;1.

2. standards-based, but no compression;

Page 117: Beautiful Web Typography (#5)

Proposed by David Burlow from Font Bureau as a

simple permissions table extension for OpenType

with a perm tag.

Beautiful Web Typography

. OpenType permissions extension?

Thoughts:

simple: no change in the OT format, no wrapper;1.

reverse-engineer-able (just edit the XML); 3.

2. standards-based, but no compression;

Page 118: Beautiful Web Typography (#5)

Proposed by Tal Leming & Erik van Blokland as an

alternative to EOT, compressing the font and an

accompanying meta-data XML file. Uses webfonts.

Beautiful Web Typography

. .webfont proposal

Page 119: Beautiful Web Typography (#5)

Proposed by Tal Leming & Erik van Blokland as an

alternative to EOT, compressing the font and an

accompanying meta-data XML file. Uses webfonts.

Beautiful Web Typography

. .webfont proposal

Considerations:

Page 120: Beautiful Web Typography (#5)

Proposed by Tal Leming & Erik van Blokland as an

alternative to EOT, compressing the font and an

accompanying meta-data XML file. Uses webfonts.

Beautiful Web Typography

. .webfont proposal

Considerations:

compact, simple, elegant, easily standards-based;1.

Page 121: Beautiful Web Typography (#5)

Proposed by Tal Leming & Erik van Blokland as an

alternative to EOT, compressing the font and an

accompanying meta-data XML file. Uses webfonts.

Beautiful Web Typography

. .webfont proposal

Considerations:

compact, simple, elegant, easily standards-based;1.

2. reverse-engineer-able; CORS in discussion;

Page 122: Beautiful Web Typography (#5)

Proposed by Tal Leming & Erik van Blokland as an

alternative to EOT, compressing the font and an

accompanying meta-data XML file. Uses webfonts.

Beautiful Web Typography

. .webfont proposal

Considerations:

compact, simple, elegant, easily standards-based;1.

…but (surprisingly) gaining huge support from

type designers and foundries alike.

3.

2. reverse-engineer-able; CORS in discussion;

Page 123: Beautiful Web Typography (#5)

Beautiful Web Typography

<fontdata> name, file name, format

<creationdate> creation data stamp of font file

<vendor> vendor info; attr.: name, URL

<designer> designer info; attr.: name, URL, role

<license> license; attr.: URL, ID

<licenseename> name for the licensee of the font

<description> description for the font

<copyright> copyright for the font

<trademark> trademark for the font

<privatedata> additional arbitrary, private info.

Page 124: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 125: Beautiful Web Typography (#5)

Beautiful Web Typography

Meanwhile:

Page 126: Beautiful Web Typography (#5)

Beautiful Web Typography

Webfonts aren’t the holy grail of web

typography problems…

Meanwhile:

Page 127: Beautiful Web Typography (#5)

– Jeff Cro

“Typography is not picking a ‘cool’ font.”

Beautiful Web Typography

Webfonts aren’t the holy grail of web

typography problems…

Meanwhile:

Page 128: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 129: Beautiful Web Typography (#5)

Beautiful Web Typography

Also remember, most fonts available from

type foundries are not optimised for screen

usage; they’re for print.

Page 130: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 131: Beautiful Web Typography (#5)

Use a combination of families, styles, weights and

to breath some fresh air into your web type.

Beautiful Web Typography

Page 132: Beautiful Web Typography (#5)

Use a combination of families, styles, weights and

to breath some fresh air into your web type.

font-weight controls weight and accepts

numerical and descriptive (e.g. normal) values.

Beautiful Web Typography

Page 133: Beautiful Web Typography (#5)

Use a combination of families, styles, weights and

to breath some fresh air into your web type.

font-weight controls weight and accepts

numerical and descriptive (e.g. normal) values.

font-style controls… style. Accepts the descrip-

tive values (normal, italic, and oblique).

Beautiful Web Typography

Page 134: Beautiful Web Typography (#5)

Use a combination of families, styles, weights and

to breath some fresh air into your web type.

font-weight controls weight and accepts

numerical and descriptive (e.g. normal) values.

font-style controls… style. Accepts the descrip-

tive values (normal, italic, and oblique).

font-variant controls case and accepts the

values normal and small-caps.

Beautiful Web Typography

Page 135: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 136: Beautiful Web Typography (#5)

roman (‘normal’)Beautiful Web Typography

Page 137: Beautiful Web Typography (#5)

roman (‘normal’)Beautiful Web Typography

Page 138: Beautiful Web Typography (#5)

roman (‘normal’)italic

Beautiful Web Typography

Page 139: Beautiful Web Typography (#5)

roman (‘normal’)italic oblique≠

Beautiful Web Typography

Page 140: Beautiful Web Typography (#5)

roman (‘normal’)italic oblique≠

Beautiful Web Typography

Page 141: Beautiful Web Typography (#5)

roman (‘normal’)italic oblique≠

Beautiful Web Typography

Page 142: Beautiful Web Typography (#5)

roman (‘normal’)italicultralight regular bold

oblique≠

Beautiful Web Typography

Page 143: Beautiful Web Typography (#5)

roman (‘normal’)italicultralight regular bold

oblique≠

Beautiful Web Typography

Page 144: Beautiful Web Typography (#5)

roman (‘normal’)italicultralight regular bold

& bold italic condensed

oblique≠

Beautiful Web Typography

Page 145: Beautiful Web Typography (#5)

roman (‘normal’)italicultralight regular bold

& bold italic condensed

oblique≠

Beautiful Web Typography

Page 146: Beautiful Web Typography (#5)

roman (‘normal’)italicultralight regular bold

& bold italic condensedSMALL-CAPITALS

oblique≠

Beautiful Web Typography

Page 147: Beautiful Web Typography (#5)

roman (‘normal’)italicultralight regular bold

& bold italic condensedSMALL-CAPITALS

oblique≠

Beautiful Web Typography

Page 148: Beautiful Web Typography (#5)
Page 149: Beautiful Web Typography (#5)

Web Typography

Page 150: Beautiful Web Typography (#5)

Web Typography

TRACKING

Page 151: Beautiful Web Typography (#5)

Web Typography

TRACKINGTRACKING

Page 152: Beautiful Web Typography (#5)

Web Typography

Letter-spacingTRACKINGTRACKING

Page 153: Beautiful Web Typography (#5)

Web Typography

Letter-spacingLetter-spacingTRACKINGTRACKING

Page 154: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 155: Beautiful Web Typography (#5)

Letʼs see some loose word-spacing in action…

Beautiful Web Typography

Page 156: Beautiful Web Typography (#5)

Letʼs see some loose word-spacing in action…

And now both loose word-spacing and tracking featured together.

Beautiful Web Typography

Page 157: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 158: Beautiful Web Typography (#5)

And finally, the recent popular trend of negative tracking.

Beautiful Web Typography

Page 159: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 160: Beautiful Web Typography (#5)

Tracking and word-spacing can help differentiate,

aiding readability by removing disruption.

Beautiful Web Typography

Page 161: Beautiful Web Typography (#5)

Tracking and word-spacing can help differentiate,

aiding readability by removing disruption.

E.g. setting acronyms or numerical tabular data.

Beautiful Web Typography

Page 162: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 163: Beautiful Web Typography (#5)

Full-capital acronyms, along with other full-cap-

sized glyphs can disturb the flow of the text:

Beautiful Web Typography

Page 164: Beautiful Web Typography (#5)

Full-capital acronyms, along with other full-cap-

sized glyphs can disturb the flow of the text:

Lorem ipsum dolor sit amet, NASA consectetur adipiscing et. Vestibulum elit pellentesque; habitant orci tristique senectus et 4,962 malesuada fames ac turpis egestas HTML sit lectus.

Beautiful Web Typography

Page 165: Beautiful Web Typography (#5)

Full-capital acronyms, along with other full-cap-

sized glyphs can disturb the flow of the text:

Lorem ipsum dolor sit amet, NASA consectetur adipiscing et. Vestibulum elit pellentesque; habitant orci tristique senectus et 4,962 malesuada fames ac turpis egestas HTML sit lectus.

Lorem ipsum dolor sit amet, NASA consectetur adipiscing et. Vestibulum elit pellentesque; habitant orci tristique senectus et , malesuada fames ac turpis egestas HTML sit lectus.

Beautiful Web Typography

Page 166: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 167: Beautiful Web Typography (#5)

letter-spacing and word-spacing controls

tracking and word-spacing respectively. Both take

numerical values and normal.

Beautiful Web Typography

Page 168: Beautiful Web Typography (#5)

letter-spacing and word-spacing controls

tracking and word-spacing respectively. Both take

numerical values and normal.

Sadly no property for controlling figure variants—

hopes set for CSS3. For now use Georgia which

(only) features hanging or ‘old-style’ figures.

Beautiful Web Typography

Page 169: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 170: Beautiful Web Typography (#5)

font-size controls… font sizes. Takes numerical

and descriptive values. Most user agents

(browsers) set default value at 16px.

Beautiful Web Typography

Page 171: Beautiful Web Typography (#5)

font-size controls… font sizes. Takes numerical

and descriptive values. Most user agents

(browsers) set default value at 16px.

Size font sizes relatively using ems or %.

Beautiful Web Typography

Page 172: Beautiful Web Typography (#5)

font-size controls… font sizes. Takes numerical

and descriptive values. Most user agents

(browsers) set default value at 16px.

Size font sizes relatively using ems or %.

An em is a relative unit best to be thought of as a

box. It is relative to the point size of a specific

font (i.e. 1 em in a 12 point typeface is 12 point).

Beautiful Web Typography

Page 173: Beautiful Web Typography (#5)

Why?

Beautiful Web Typography

Page 174: Beautiful Web Typography (#5)

Why?

Beautiful Web Typography

Some UAs don’t support font-resizing (Ctrl + +/-) or

page scaling when measurements are defined in

absolute terms.

Page 175: Beautiful Web Typography (#5)

Why?

Beautiful Web Typography

Some UAs don’t support font-resizing (Ctrl + +/-) or

page scaling when measurements are defined in

absolute terms.

JS-based text resize widgets ≠ text accessibility.•

Page 176: Beautiful Web Typography (#5)

Why?

Beautiful Web Typography

Some UAs don’t support font-resizing (Ctrl + +/-) or

page scaling when measurements are defined in

absolute terms.

JS-based text resize widgets ≠ text accessibility.•

Many devices and many user agents—be careful in

making assumptions.

Page 177: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 178: Beautiful Web Typography (#5)

Key: remember font sizes are inherited:

parents → children.

Beautiful Web Typography

Page 179: Beautiful Web Typography (#5)

Key: remember font sizes are inherited:

parents → children.

To calculate, find what one pixel is in ems and

then multiply by the desired font size (in pixels):

Beautiful Web Typography

Page 180: Beautiful Web Typography (#5)

Key: remember font sizes are inherited:

parents → children.

1 ÷ parent font-size × required pixel value= em value

To calculate, find what one pixel is in ems and

then multiply by the desired font size (in pixels):

Beautiful Web Typography

Page 181: Beautiful Web Typography (#5)

.% trick

Beautiful Web Typography

Page 182: Beautiful Web Typography (#5)

.% trickSimplify your calculations. Consider:

p { font-size: 80%; }blockquote { font-size: 80%; }

Beautiful Web Typography

Page 183: Beautiful Web Typography (#5)

80% of 16px is 12.8px, so p and blockquote

elements will be that size, but what happens

when we put a p element inside a blockquote

element? The parent (blockquote) is 12.8px so the

p will be rendered at 80% of that: 10.42px.

.% trickSimplify your calculations. Consider:

p { font-size: 80%; }blockquote { font-size: 80%; }

Beautiful Web Typography

Page 184: Beautiful Web Typography (#5)

.% trick (cont’d)

Beautiful Web Typography

In 2004 Richard Rutter wrote an article outlining a trick he used to make these calculations simpler:

Page 185: Beautiful Web Typography (#5)

.% trick (cont’d)

browsers have common default size of 16px; thus:•

Beautiful Web Typography

In 2004 Richard Rutter wrote an article outlining a trick he used to make these calculations simpler:

Page 186: Beautiful Web Typography (#5)

.% trick (cont’d)

browsers have common default size of 16px; thus:•

set body to 62.5% and reset all to 10px; thus:•

Beautiful Web Typography

In 2004 Richard Rutter wrote an article outlining a trick he used to make these calculations simpler:

Page 187: Beautiful Web Typography (#5)

.% trick (cont’d)

browsers have common default size of 16px; thus:•

set body to 62.5% and reset all to 10px; thus:•

from here calculations are simpler for direct

descendants of the body, e.g. 12px = 1.2em; 8px =

0.8em. Further nested elements are (still) relative.

Beautiful Web Typography

In 2004 Richard Rutter wrote an article outlining a trick he used to make these calculations simpler:

Page 188: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 189: Beautiful Web Typography (#5)

To find an element’s font size in absolute terms

(e.g. pixels) you can use the Firefox Web Develop

Extension, Information → Display Element

Information.

Beautiful Web Typography

Page 190: Beautiful Web Typography (#5)

Don’t just arbitrarily set type; use a scale:

Stick it to a scale

Beautiful Web Typography

Page 191: Beautiful Web Typography (#5)

Don’t just arbitrarily set type; use a scale:

Stick it to a scale

6, 7, 8, 9, 10, 11, 12, 14, 16, 18, 21, 24, 36, 48, 60, 72.the “classic scale”

9, 10, 11, 12, 13, 14, 18, 24, 36, 48, 64, 72, 96.another scale

8, 13, 21, 34, 55, 89.scale based on the Fibonacci sequence

Beautiful Web Typography

Page 192: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 193: Beautiful Web Typography (#5)

Beautiful Web Typography

At small sizes font-decoration: underline;

can render descender glyphs (g, j, p, q, y) difficult

to read: use border-bottom: 1px solid;

Page 194: Beautiful Web Typography (#5)

Beautiful Web Typography

At small sizes font-decoration: underline;

can render descender glyphs (g, j, p, q, y) difficult

to read: use border-bottom: 1px solid;

…consectetuer adipiscing elit…

…adipiscing elit…

Page 195: Beautiful Web Typography (#5)

Beautiful Web Typography

At small sizes font-decoration: underline;

can render descender glyphs (g, j, p, q, y) difficult

to read: use border-bottom: 1px solid;

…consectetuer adipiscing elit…

…adipiscing elit…

…consectetuer adipiscing elit…

…adipiscing elit…

Page 196: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 197: Beautiful Web Typography (#5)

Correct glyphs

Beautiful Web Typography

Page 198: Beautiful Web Typography (#5)

Correct glyphsConsider:

' "

Beautiful Web Typography

Page 199: Beautiful Web Typography (#5)

Correct glyphsConsider:

' "1'61"

Beautiful Web Typography

Page 200: Beautiful Web Typography (#5)

"is is a group of words surrounded by a bunch of tick marks."

Beautiful Web Typography

Page 201: Beautiful Web Typography (#5)

“is is a quotation!”- Jeff Cro

Beautiful Web Typography

Page 202: Beautiful Web Typography (#5)

‘ ’ “ ”’

Beautiful Web Typography

Page 203: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 204: Beautiful Web Typography (#5)

- hyphen Mary-Anne, Dominique Strauss-Kahn

– en dash April–May, ages –, pp. –

— em dash Phrase marker—not spaced—like this.

– minus 5–4=1

Beautiful Web Typography

Page 205: Beautiful Web Typography (#5)

Beautiful Web Typography

“ opening double quote &ldquo;” closing double quote &rdquo;‘ opening single quote &lsquo;’ closing single quote &rsquo;– en dash &ndash;— em dash &mdash;− minus &minus;× multiplication &times;… ellipsis &hellip;

Page 206: Beautiful Web Typography (#5)

Smartypants et al.

Beautiful Web Typography

Page 207: Beautiful Web Typography (#5)

Smartypants et al.‘Doing something repetitive? Likely you’re doing it wrong.’

Beautiful Web Typography

Page 208: Beautiful Web Typography (#5)

Smartypants et al. are scripts that translate plain

ASCII characters into “smart” typographic (x)HTML

entities (not just for punctuation).

Smartypants et al.‘Doing something repetitive? Likely you’re doing it wrong.’

Beautiful Web Typography

Page 209: Beautiful Web Typography (#5)

Smartypants et al. are scripts that translate plain

ASCII characters into “smart” typographic (x)HTML

entities (not just for punctuation).

Smartypants et al.‘Doing something repetitive? Likely you’re doing it wrong.’

Beautiful Web Typography

Smartypants (PHP, Perl, & Movable Type);•

Page 210: Beautiful Web Typography (#5)

Smartypants et al. are scripts that translate plain

ASCII characters into “smart” typographic (x)HTML

entities (not just for punctuation).

Smartypants et al.‘Doing something repetitive? Likely you’re doing it wrong.’

Beautiful Web Typography

Smartypants (PHP, Perl, & Movable Type);•

Typogrify (Python/Django);•

Page 211: Beautiful Web Typography (#5)

Smartypants et al. are scripts that translate plain

ASCII characters into “smart” typographic (x)HTML

entities (not just for punctuation).

Smartypants et al.‘Doing something repetitive? Likely you’re doing it wrong.’

Beautiful Web Typography

Smartypants (PHP, Perl, & Movable Type);•

Typogrify (Python/Django);•

wp-typogrify (WordPress);•

Page 212: Beautiful Web Typography (#5)

Smartypants et al. are scripts that translate plain

ASCII characters into “smart” typographic (x)HTML

entities (not just for punctuation).

Smartypants et al.‘Doing something repetitive? Likely you’re doing it wrong.’

Beautiful Web Typography

Smartypants (PHP, Perl, & Movable Type);•

Typogrify (Python/Django);•

wp-typogrify (WordPress);•

Markdown et al., …•

Page 213: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 214: Beautiful Web Typography (#5)

Give ampersands love

Beautiful Web Typography

Page 215: Beautiful Web Typography (#5)

Give ampersands love

Beautiful Web Typography

Italic ampersand variants are often much prettier

than their common roman counterparts:

Page 216: Beautiful Web Typography (#5)

Give ampersands love

& & & & &

Beautiful Web Typography

Italic ampersand variants are often much prettier

than their common roman counterparts:

Page 217: Beautiful Web Typography (#5)

Give ampersands love

& & & & &

Beautiful Web Typography

& & & & &

Italic ampersand variants are often much prettier

than their common roman counterparts:

Page 218: Beautiful Web Typography (#5)

Marking paragraphs

Beautiful Web Typography

Page 219: Beautiful Web Typography (#5)

Don’t be afraid to mark new paragraphs with

indents, outdents, a plain white-line, a pilcrow (¶)

or other ornament, versal and/or headers…

Marking paragraphs

Beautiful Web Typography

Page 220: Beautiful Web Typography (#5)

Don’t be afraid to mark new paragraphs with

indents, outdents, a plain white-line, a pilcrow (¶)

or other ornament, versal and/or headers…

Marking paragraphs

Beautiful Web Typography

…or a combination thereof.

Page 221: Beautiful Web Typography (#5)

Don’t be afraid to mark new paragraphs with

indents, outdents, a plain white-line, a pilcrow (¶)

or other ornament, versal and/or headers…

Marking paragraphs

Beautiful Web Typography

…or a combination thereof.

See: http://tinyurl.com/para-typography.

Page 222: Beautiful Web Typography (#5)

Beautiful Web Typography

MeasuresThe measure is the length of a single line. It is important to select a good measure for running text. Do this with the width property.

Page 223: Beautiful Web Typography (#5)

Beautiful Web Typography

MeasuresThe measure is the length of a single line. It is important to select a good measure for running text. Do this with the width property.

Ideally these should be relative to the font size, such that the type scales proportionately to the measure; use ems or percentages.

Page 224: Beautiful Web Typography (#5)

Beautiful Web Typography

Measures (cont’d)

Page 225: Beautiful Web Typography (#5)

Beautiful Web Typography

Measures (cont’d)

Web type generally benefits from smaller measures than those in print. A good ballpark is 10–15 words/75–100 characters per line for body copy, single column.

Page 226: Beautiful Web Typography (#5)

Beautiful Web Typography

Measures (cont’d)

Web type generally benefits from smaller measures than those in print. A good ballpark is 10–15 words/75–100 characters per line for body copy, single column.

Generally use flush-left (text-align: left;) for

running text, particularly when set in a narrow

measure. Justification can work at ample

measures and better with serif typefaces.

Page 227: Beautiful Web Typography (#5)

Beautiful Web Typography

Leading (line-height)

Page 228: Beautiful Web Typography (#5)

Beautiful Web Typography

Leading (line-height)Don’t forget to set an ample leading for running text! Done using the line-height property and

you can use a unit-less number (e.g. 1.5 which acts as a multiplier of the font size);

Page 229: Beautiful Web Typography (#5)

Beautiful Web Typography

Leading (line-height)Don’t forget to set an ample leading for running text! Done using the line-height property and

you can use a unit-less number (e.g. 1.5 which acts as a multiplier of the font size);

Leading spans from baseline to baseline… and I

need some more text to illustrate the point. :)

Page 230: Beautiful Web Typography (#5)

Beautiful Web Typography

Hanging punctuationTraditionally punctuation marks, bullets, lists, hyphens, and brackets all hang in the margin.

Page 231: Beautiful Web Typography (#5)

Beautiful Web Typography

Hanging punctuationTraditionally punctuation marks, bullets, lists, hyphens, and brackets all hang in the margin.

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Integer a odio. Vivamus placerat felis id risus. Cras mollis est. Suspendisse molestie et imperdiet libero. Etiam mollis libero vulputate lorem nullam ut leo. Etiam at turpis non massa rhoncus sodales.)”

(

Page 232: Beautiful Web Typography (#5)

Beautiful Web Typography

Hanging punctuation (cont’d)

Simply with lists by setting their margins to zero.

Page 233: Beautiful Web Typography (#5)

Beautiful Web Typography

Hanging punctuation (cont’d)

Simply with lists by setting their margins to zero.

Possible for opening punctuation marks using background-image or a negative text-indent.

CSS3 will hopefully support hanging punctuation with a proposed hanging-punctuation property.

Page 234: Beautiful Web Typography (#5)

Beautiful Web Typography

Hanging punctuation (cont’d)

Simply with lists by setting their margins to zero.

Possible for opening punctuation marks using background-image or a negative text-indent.

CSS3 will hopefully support hanging punctuation with a proposed hanging-punctuation property.

See: http://tinyurl.com/w3c-hanging-punct.

Page 235: Beautiful Web Typography (#5)

Beautiful Web Typography

Web: text = UI

Distinguish content elements from application controls (e.g. a user’s username and description from a logout link or text-field title).

Page 236: Beautiful Web Typography (#5)

Beautiful Web Typography

Web: text = UI

Distinguish content elements from application controls (e.g. a user’s username and description from a logout link or text-field title).

Often done with colour (e.g. setting controls gray), size (making them smaller) and typefaces.

Page 237: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 238: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 239: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 240: Beautiful Web Typography (#5)

Page (grid).

Beautiful Web Typography

Page 241: Beautiful Web Typography (#5)

Page (grid).

Beautiful Web Typography

Grids bring order to your page and help specify

where things should go.

Page 242: Beautiful Web Typography (#5)

Page (grid).

Beautiful Web Typography

Grids bring order to your page and help specify

where things should go.

Remember to put in apt “gutters” (margins

between columns) to separate your columns.

Page 243: Beautiful Web Typography (#5)

Page (grid).

Beautiful Web Typography

Grids bring order to your page and help specify

where things should go.

Remember to put in apt “gutters” (margins

between columns) to separate your columns.

Ruler guides help enormously: use the Web

Developer extension for Firefox or ruler

background images (also see the YUI library).

Page 244: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 245: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 246: Beautiful Web Typography (#5)

Beautiful Web Typography

Page 247: Beautiful Web Typography (#5)

Addendum

Beautiful Web Typography

Page 248: Beautiful Web Typography (#5)

Addendum

Beautiful Web Typography

Please don’t use Comic Sans unless you have a

very, very good reason.

Page 249: Beautiful Web Typography (#5)

: ---

Page 251: Beautiful Web Typography (#5)

Beautiful Web Typography

• http://webtypography.net

• http://alistapart.com/topics/design/typography

• http://ilovetypography.com

• http://usabletype.org

• http://www.papress.com/other/thinkingwithtype/

Resources & reading

Page 252: Beautiful Web Typography (#5)

[email protected]

@klepas

klepas.org

Licensed CC BY-NC-ND

http://creativecommons.org/licenses/by-nc-nd/2.5/au/