====== TD5 Approfondissement CSS ====== ===== Manier les selecteurs comme personne ===== L'objectif de cet exercice est de vous aider à manier avec précision les selecteurs et les propriétés CSS. * Votre mission si vous l'acceptez est de modifier la page web du TD précédent en suivant les 3 points ci-dessous : * supprimer tous les classes ou id (O_o). * appliquer les styles uniquement via les selecteurs (http://www.w3schools.com/cssref/css_selectors.asp). * obtenir exactement le même résultat. Et oui, c'est possible M. Hunt. Allez, une petite aide : http://www.w3schools.com/cssref/sel_firstchild.asp ===== Les formulaires 2.0 ===== L'objectif de cet exercice est de travailler le rendu d'un formulaire. * Nous voulons créer un formulaire d'inscription, celui contiendra les informations suivantes : * Nom (obligatoire) * Prénom (obligatoire) * Adresse de messagerie (obligatoire) * Téléphone * Mot de passe (obligatoire) * Confirmation du mot de passe (obligatoire) * Offre d'inscription (liste déroulante : Free, Premium, Ultimate, Chuck Norris) * Recevoir la newsletter (case à cocher) * Bouton "Valider" * Bouton "Effacer" * Utiliser toutes les balises HTML5 nécessaires à l'obtention de ce formulaire. * Mettre en forme ce formulaire avec du CSS dans l'objectif : * D'obtenir quelque chose qui s'approche de ça : http://en.blog.files.wordpress.com/2010/11/grunion-form-builder.png * D'obtenir quelque chose qui ne ressemble surtout pas à ça : http://wiki.lws-hosting.com/lib/exe/fetch.php/formail1.jpg * Et c'est pas fini, veiller à : * Lorsqu'un champs est en train d'être modifié, appliquer "une mise en surbrillance" de ce dernier. * Les champs contenant du texte (excepté Mot de passe) doivent être pré-rempli. * Quiz final : * Quelles limites sont atteintes avec le HTML5/CSS3 pour les formulaires ? * Quelles solutions sont disponibles ? Un peu d'aide ? * Pseudos-formats : :required, :invalid, :focus * Type de champs HTML5 : email, tel, number, url, range, color, date, search (http://www.alsacreations.com/tuto/lire/1372-formulaires-html5-nouveaux-types-champs-input.html) ===== Transformations, Translations, Animations, ... ===== * Dans ce qui suit, amusez-vous en animant votre page personnelle en introduisant des animations. ==== Déplacement au survol de l'image ==== img:hover { -webkit-transform: translate(0, -20px); /* -moz-transform: translate(0, -20px); -ms-transform: translate(0, -20px); -o-transform: translate(0, -20px); transform: translate(0, -20px); /* déclenchement de la transition au survol */ */ } (source : http://www.alsacreations.com/tuto/lire/1333-osez-html5-et-css3.html) ==== Changement de couleur d'un lien doucement ==== a { font-size: 3em; font-weight: bold; color: #789; text-decoration: none; -webkit-transition-property: color; -webkit-transition-duration: 3s; /* Pour Firefox */ /* -moz-transition-property: color; -moz-transition-duration: 2s; */ /* … et lorsque ce sera standardisé transition-property: color; transition-duration: 1s; */ } (source : http://www.alsacreations.com/xmedia/tuto/exemples/transitions/transition1.htm) ==== Amusez-vous ==== http://www.alsacreations.com/xmedia/tuto/exemples/transitions/transition1.htm Regardez et amusez vous à partir du [[ http://animateyourhtml5.appspot.com/pres/index.html#5|site ci-après]]. Par exemple : .move {-webkit-animation: anim2 ease-in-out 3s infinite alternate; } @-webkit-keyframes anim2 { from {left: 0px; -webkit-transform: scale(1.0) rotate(0deg) } 50% {left: 600px; -webkit-transform: scale(0.5) rotate(10deg) } to {left: 1000px; -webkit-transform: scale(1.8) rotate(-20deg) } } Et un peu plus : http://html5demo.braincracking.org/, caractéristique par caractéristique.