Nicolas Hoffmann / @Nico3333fr
We Love Speed 2019
[…] The knock-on effects of slow CSS are far bigger than most developers realise.
— Harry Roberts (@csswizardry)
August 2, 2019
I ♥ performance :)
I ♥ surtout la penser en amont.
Réduire le poids de manière drastique !
Et réduire aussi le nombre de requêtes.
Sur la v3… 😧
600ko de CSS 😨. Minifiés. 😱
110ko gzippés. 😥
Et impossibles à manœuvrer. 😫
alt="Association de malfaiteurs tueurs de performances"
Et ses copains ☢️☢️☢️
#pm_composer { /* ! */
.composer { /* !! */
h1 { … }
.flex { … } /* !!!!! */
.attachmentBar { /* ALERT: inception level 4 */
i {
&.embedded { … }
}
.previews {
.preview-close { … }
.attachment {
.fa {
&.embedded {
/* kill me. Now. */
RY = Repeat Yourself
alt="méthodologiser/ranger/organiser/structurer/réutiliser"
[class*="badgeLabel"] {
// global
}
.badgeLabel-success {
// spécifique
}
Les requêtes les plus performantes… sont celles que l’on ne fait pas - Moi (mais pas que)
Font-icons/SVG/images/formats/viewboxes
Sur v4 : SVG, le seul et l’unique
<defs>
<g id="shape-account">
<path d="…"/>
</g>
<g id="shape-add">
<path d="…"/>
</g>
…
<svg viewBox="0 0 16 16" role="img" aria-hidden="true" focusable="false">
<use xlink:href="#shape-account"></use>
</svg>
<symbol id="symbol-caret"><path d="…" /></symbol>
<use id="css-caret" xlink:href="#symbol-caret"
class="black" />
<use id="css-greater" xlink:href="#symbol-caret"
class="black rotated-right" />
background-image: url(sprite-css.svg#css-caret)
Des questions ?