Nicolas Hoffmann / @Nico3333fr
Codeurs en Seine 2017
<input type="tel" …/>
// si non supporté ?
=> Dégradation gracieuse, approche top-down
background: #f7fbfc;
background: rgba(247, 251, 252, 0.40);
/* #f7fbfc66 */
@supports (display: flex) {
.form-wrapper { display:flex; }
}
Exemple : un formulaire avec alignement vertical
<html class="no-js" lang="fr">
Modernizr appliqué…
<html class="js svg" lang="fr">
.js .hidden-with-js,
.no-js .hidden-without-js {
display: none;
}
if (navigator.geolocation) { // …
if (el.classList) { // …
if (el.fireEvent) { // …
// on améliore pour ceux qui supportent
etc.
@supports (display: grid) {
.grid-container-pplus {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-auto-rows: 1fr;
grid-column-gap: 30px;
grid-row-gap: 30px;
}
}
if('querySelector' in document
&& 'localStorage' in window
&& 'addEventListener' in window) {
// bootstrap the javascript application
}
Cutting the mustard
if ('serviceWorker' in navigator) {
PWA, ça commence par (amélioration) Progressive !
Vraiment jamais ?
You + PE = ♥
Pour discuter :
Nicolas Hoffmann / @Nico3333fr