Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
FOIT, FOUT, FUCK
Search
Gunnar Bittersmann
June 28, 2018
Design
0
1.1k
FOIT, FOUT, FUCK
Wie Webfonts auf Webseiten kommen
Typostammtisch Berlin, Pecha-Kucha-Abend
Gunnar Bittersmann
June 28, 2018
Tweet
Share
More Decks by Gunnar Bittersmann
See All by Gunnar Bittersmann
Responsive typography 2
gunnarbittersmann
0
160
Go home, Prettifier, you’re drunk!!
gunnarbittersmann
0
110
3 Fehler sind zu finden
gunnarbittersmann
0
190
TIL that the future :has already begun
gunnarbittersmann
0
120
TIL how to clear floats
gunnarbittersmann
0
120
TIL about showModal (from small things big things one day come)
gunnarbittersmann
0
130
Inclusive Design 24 2022 – Gunnar’s picks
gunnarbittersmann
0
100
The color rebeccapurple
gunnarbittersmann
0
180
Mehrsprachige Websites
gunnarbittersmann
0
110
Other Decks in Design
See All in Design
2026の目標「もっと定量的に事業、会社へ貢献する!」
yuri_ohashi
0
680
はじめての演奏会フライヤーデザイン
chorkaichan
1
220
kintone Style Book
kintone
6
10k
Storyboard Assignment: Storyboard from Comic Strip
lynteo
3
180
maki setoguchi
maki_setoguchi
0
660
TWCP#21 UXデザインと哲学のはなし
shinn
0
270
Ralph Penel Portfolio
ralphpenel
PRO
0
260
爆速開発でAIプロダクトが40万インプレッションになった話
tsubura
0
160
コムデマネージャーがプロダクトデザインに挑戦した。むずかしくて楽しかった。
payatsusan213
0
200
Diverse Design Team Deck
diverse
0
620
OJTで学んだ 「心を動かす」ファシリテーション
saki822
1
240
Figmaレクチャー会Part1 基本のき編@千株式会社 社内勉強会
designer_no_pon
2
250
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Scaling GitHub
holman
464
140k
The Invisible Side of Design
smashingmag
302
51k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
The Cult of Friendly URLs
andyhume
79
6.8k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.1k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Chasing Engaging Ingredients in Design
codingconduct
0
110
Six Lessons from altMBA
skipperchong
29
4.2k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
0
3.4k
Transcript
FOIT FOUT FUCK
@font-face { font-family: 'What The Font'; font-weight: normal; font-style: normal;
src: url('wtf.eot'); src: url('wtf.eot?#iefix') format('embedded-opentype'), url('wtf.woff2') format('woff2'), url('wtf.woff') format('woff'), url('wtf.ttf') format('truetype'), url('wtf.svg#wtf') format('svg') }
WOFF Weg mit den ollen Font-Formaten!
None
FOIT Flash of invisible text
FOUT Flash of unstyled text
None
ist Webfont im localStorage? render Text in Webfont lade Webfont
aus localStorage ja nein
ist Webfont im localStorage? render Text in Systemschrift render Text
in Webfont lade Webfont aus localStorage download Webfont im Hintergrund, speicher in localStorage ja nein
block swap FOIT FOUT ≈3s
block swap swap ≈0.1s ≈3s font-display: block swap
block swap swap swap fallback fallback ≈0.1s ≈3s font-display: block
swap fallback optional
@font-face { font-family: 'What The Font'; font-weight: normal; font-style: normal;
src: url('wtf.woff2') format('woff2'), url('wtf.woff') format('woff'); font-display: optional; }
CSS Font Loading API var wtfFace = new FontFace("What the
Font", "url(wtf.woff)", {}); wtfFace.load().then(function (loadedFace) { document.fonts.add(loadedFace); document.body.style.fontFamily = "What the Font, sans-serif"; });
None
Flash of faux text
LiebeGerda-Regular.woff 893 KB LiebeGerda-RegularItalic.woff 974 KB LiebeGerda-Bold.woff 1.3 MB LiebeGerda-BoldItalic.woff
1.3 MB Liebe Gerda, wir müssen reden.
<img src="LiebeGerda-600.png" srcset="LiebeGerda-1200.png 1200w, LiebeGerda-900.png 900w" alt="Liebe Gerda, wir müssen
reden."/> LiebeGerda-1200.png 27.3 KB LiebeGerda-900.png 18.4 KB LiebeGerda-750.png 14.4 KB LiebeGerda-600.png 10.8 KB
FOCS Flash of Comic Sans
Die Art des Inhalts und der Interaktionen setzen gewisse Grenzen;
die Bedürfnisse und Ziele der Nutzer setzen andere. Die Tätigkeit des Webdesigns besteht nun darin, diese Grenzen auszuloten und in Einklang zu bringen. — Laura Kalbag, Accessibility for Everyone