Description de la formation HTML5 CSS3
La formation HTML5 est destinée aux développeurs et intégrateurs souhaitant mettre à jour leurs connaissances pour créer des sites Internet performants et robustes utilisant les technologies de pointe du web apportées par les nouvelles spécifications. Ce cours s’adresse aussi aux débutants qui veulent commencer directement par les bonnes pratiques.
Les développements seront adaptés aux différents supports (responsive design) et permettront aussi de créer des applications (mobiles, tablettes, etc.). Au cours de 5 jours de formation, nous aborderons ensemble les nouveautés vastes et puissantes apportées conjointement par le HTML5, le CSS3, le puissant module CSS Grid et les nouvelles versions de JavaScript et AJAX.
Objectifs
Objectif opérationnel :
Mettre en œuvre les nouveautés de HTML5, CSS3, CSS Grid et les nouvelles versions de JavaScript et AJAX lors du développement et l’intégration de sites et applications web.
Objectifs pédagogiques :
- Utiliser dès maintenant les nouveautés du web, en restant rétro-compatible
- Tirer partie des nouveautés et ainsi alléger les besoins en JavaScript
- Faire de la vidéo, du son et des animations, sans Flash
- Faire du graphisme avancé et certaines images, sans Photoshop
- Créer des mises en page avec les CSS Grid
- Améliorer son référencement dans les moteurs de recherche
- Adapter l’affichage des versions mobile / tablette (responsive design)
- Proposer des services géolocalisés
- Faciliter la communication entre le serveur et le navigateur
- Proposer des applications hors ligne (mobile, tablette).
À qui s’adresse cette formation ?
Public :
Cette formation HTML5 est destinée aux développeurs web ainsi qu’aux intégrateurs HTML.
Prérequis :
Des connaissances générales du web et des bases en HTML, CSS et JavaScript sont nécessaires pour suivre ce cours.
Contenu du cours HTML5 CSS3
Présentation des technologies ( HTML5 )
HTML5, standards et (rétro-)compatibilité
Navigateurs et outils de travail
HTML5 vs Flash
Applications HTML5 vs applications natives
Sémantique, référencement et accessibilité en HTML5
DOCTYPE, encodage, règles de syntaxe
Les nouvelles balises sémantiques
Relations, micro-formats et micro-données
HTML5 Forms ( Web Forms )
Vue d’ensemble des formulaires nouvelle génération
Les nouveaux éléments : progress, meter, datalist, keygen, output
Nouveaux types de champs : tel, url, email, search, number, etc.
Nouveaux attributs : autofocus, placeholder, form, required, etc.
Validation par le navigateur : required, pattern, formnovalidate
Suggestions automatiques
Exemple récapitulatif
JavaScript nouvelle génération
Mode strict et chargement asynchrone
DOM Level 3 : agir sur la page
Gestion dynamique des évènements
Debug et détection du support du HTML5
JSON et initiation au modèle objet
Initiation à jQuery
Vidéo et audio
Codecs et formats (H264/MP4, OGG/theora, WebM/VP8)
Compatibilité et navigateurs
Les outils de conversion (rapide)
Savoir utiliser les services existants : Dailymotion, Youtube, Viemo
Les balises video, audio
Proposer plusieurs sources dans plusieurs formats
Pré-requis (type MIME et .htaccess)
Les attributs : controls, preload, autoplay, poster
Test de téléchargement d’une vidéo selon plusieurs formats depuis plusieurs navigateurs
Traitements en JavaScript
Les nouveaux sélecteurs CSS3
Les pseudo-classes et pseudo-éléments
Les sélecteurs d’attributs (^, $, *)
Exemple d’application de style « intelligente » combinant les nouveautés
Mise en page et box model
Les positionnements (absolu, fixe, naturel)
Mise en page avec float
Mise en page avec Flex : box-sizing, border box, etc.
Système de grid
Disposition en colonnes
Régions et exclusions
Limites et apports des frameworks (bootstrap, etc.)
CSS Grid
Limites des tableaux et apports des CSS Grid
Positionnement explicite et implicite des objets sur une grille CSS
Alignement des boîtes avec les grilles CSS
Utiliser les lignes ou les zones de la grille ?
Complémentarité Flexbox et Grid
Compatibilité avec les anciens navigateurs
Graphisme avancé
Polices de caractères personnalisées
Couleurs avancées et dégradés
Ombres et opacité
Bordures et arrière-plans avancés
Responsive design
Problèmes techniques posés par l’hétérogénéité (PC, téléphone, tablette)
Solutions apportées par le Responsive Design
Pré-requis pour faire du Responsive Design
Media-queries : s’adapter à la résolution d’écran et à l’orientation
Viewport
Déterminer la valeur d’une propriété CSS (calc)
Positionnement colonnes, tailles fluides et media queries
Disposition adaptative des grilles CSS (grid-template-areas)
Compatibilité des navigateurs avec HTML5/CSS3
Etat des lieux
La détection des capacités des navigateurs
Recommandations
Les outils et les méthodes du développeur WEB
Quels outils pour développer et debugguer ?
Les outils pour améliorer la productivité et la rapidité de codage
Les outils d’une bonne veille technique
Les méthodes de codage moderne pour un code maintenable
Les tendances à venir
AJAX nouvelle génération
XMLHttpRequest 2
Fichiers joints et progression
Requêtes cross-domain
Historique et navigation
AJAX avec historique
Navigation par ancres
Communication entre onglets
Géolocalisation
Obtenir et suivre la position de l’utilisateur
Images : canvas et SVG
Images vectorielles
Création dynamique d’images en JavaScript
Stockage local et contenu hors ligne
Attributs data- personnalisés
localStorage et sessionStorage
manifest.
indexedDB : base de données locale
Communication serveur nouvelle génération
SPDY : le HTTP accéléré
Server-sent events
Websockets : communication permanente
Initiation à node.js
Performances et optimisation
Webworkers: scripts simultanés et partagés
Page Visibility API
Battery API
Navigation Timing AP
Travaux Pratiques
Utilisation des nouvelles balises HTML5 et des nouveautés graphiques du CSS3, intégration d’une vidéo sans Flash, exemple de responsive design, animation sans Flash, tests des nouveautés JavaScript, exemple de la géolocalisation avec Google Maps, mise en place de la structure d’une application, chevauchement d’éléments avec les CSS Grid, etc.