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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Gunnar Bittersmann
June 28, 2018
Design
1.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
FOIT, FOUT, FUCK
Wie Webfonts auf Webseiten kommen
Typostammtisch Berlin, Pecha-Kucha-Abend
Gunnar Bittersmann
June 28, 2018
More Decks by Gunnar Bittersmann
See All by Gunnar Bittersmann
Responsive typography 2
gunnarbittersmann
0
170
Go home, Prettifier, you’re drunk!!
gunnarbittersmann
0
120
3 Fehler sind zu finden
gunnarbittersmann
0
200
TIL that the future :has already begun
gunnarbittersmann
0
130
TIL how to clear floats
gunnarbittersmann
0
140
TIL about showModal (from small things big things one day come)
gunnarbittersmann
0
140
Inclusive Design 24 2022 – Gunnar’s picks
gunnarbittersmann
0
110
The color rebeccapurple
gunnarbittersmann
0
200
Mehrsprachige Websites
gunnarbittersmann
0
120
Other Decks in Design
See All in Design
プロダクトデザイナーに学ぶ、『見る気が起きる』ダッシュボードの作り方 / Creating Engaging Dashboards: Lessons from Product Designers
yamamotoyuta
3
860
Connpass-Xperia_Camera_App_by_HCD.pdf
sony
1
660
つくり方を変えていく | change-how-we-build
mottox2
2
1.3k
Figma MCPを活用するためのデザインハンドブック
vivion
7
18k
デザイナーとエンジニアで 同じ山に登ろう
moco1013
0
260
AIでデザインをつくる:基礎編
kenichiota0711
4
3.2k
The Art of Caring
klemens
0
350
タイル紹介サイト「タイルだもんで」
calpin
0
150
全員がアウトプットを出せる時代、 誰を採用する?
nishame
0
580
改正JISを見据えた、企業のアクセシビリティ対応ロードマップ
securecat
1
390
20260309_3月ICTデザイン勉強会_地域創生2.0
a2k
0
130
「親切なオンボーディング」 が招く罠 ー AI時代のUXデザイン
godlingkogami
1
130
Featured
See All Featured
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
450
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
720
Prompt Engineering for Job Search
mfonobong
0
340
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
Facilitating Awesome Meetings
lara
57
7k
How to Ace a Technical Interview
jacobian
281
24k
So, you think you're a good person
axbom
PRO
2
2.1k
A Tale of Four Properties
chriscoyier
163
24k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Building Applications with DynamoDB
mza
96
7.1k
Believing is Seeing
oripsolob
1
140
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
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