Company Workshop
managing support across the platform
workshops.oddbird.net/kc24/resilient/
;
}
color-mix()
Mozilla Developer Network
If you have to entirely re-engineer for IE… you’re Doing It Wrong.
— Natalie Downe, CSS Systems
Not identical, but equivalent
There is a difference between support and optimization.
— Brad Frost, support vs optimization (2011)
Identify core functionality. Make that functionality available using the simplest possible technology. Enhance!
— Jeremy Keith, Resilient Web Design
You can use it and not use it at the same time, because it works and it doesn’t work at the same time. It’s Quantum CSS! It’s Magic!
— Jen Simmons, Intro to Resilient CSS
And parse-time validation
.ಠ_ಠ { --(╯°□°)╯: ︵┻━┻; }
Unlike other CSS properties, custom property names are not ASCII case-insensitive.
— CSS Custom Properties Level 1
<custom-ident>
.ಠ_ಠ { color: ︵┻━┻; }
.ಠ_ಠ { color: var(--(╯°□°)╯); }
color
.ಠ_ಠ { --(╯°□°)╯: ︵┻━┻; color: red; color: var(--(╯°□°)╯, green); }
red
green
unset
if()
@supports
:has()
light | dark | no-preference
light
dark
no-preference
low | high | no-preference
low
high
reduce | no-preference
reduce
Not reduced animation
/* touch screens */ @media (hover: none) and (pointer: coarse) { } /* stylus-based screens */ @media (hover: none) and (pointer: fine) { } /* gesture-based screens */ @media (hover: hover) and (pointer: coarse) { } /* mouse & touch pad */ @media (hover: hover) and (pointer: fine) { }
It’s just the job we do
Content should be viewable and accessible by default.
— W3C, Platform Design Principles
Navigate slides using the arrow-keys.