SlideShare une entreprise Scribd logo
1  sur  27
Télécharger pour lire hors ligne
Aperçu rapide du CSS et du CSS3




Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   1
Principes des CSS

Feuilles de styles en cascade
Depuis plus de dix ans, il est d'usage de séparer le fond (HTML) de la forme (CSS). Les avantages de cette
séparation sont importants, ils permettent notamment de pouvoir agir sur des éléments du site présents sur
toutes les pages en agissant sur un seul fichier.
Pour comprendre comment agissent les CSS, il est indispensable de connaître le HTML.

Il existe plusieurs méthodes pour utiliser les CSS :
 Insérer les CSS directement dans la balise souhaitée. Cette méthode est déconseillée mais peut être utile
     lors des phases de développement.
     <h1 style="color: red; font-size: 2em;">Mon titre</h1>
 Insérer les CSS directement dans le <head>.
     <style>
             h1 {
                        color: red;
                        font-size: 2em;
             }
     </style>
 Appeler un fichier styles.css dans le <head>.
     <link rel="stylesheet" media="screen" type="text/css" href="styles.css" /> (en xHTML)
     <link rel="stylesheet" media="print" href="styles.css> (en HTML5)
 Utiliser la règle @import soit dans le <head> via la balise <style>, soit dans une autre feuille de style.
     <style>@import url(styles.css) media;</style> (voir : http://www.w3.org/TR/css3-cascade/#at-import)


                 Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   2
CSS


Les propriétés du CSS
Les éléments en CSS sont généralement des blocs (éléments qui prennent une largeur comme un cadre, un
titre) ou des lignes (ils s'intègrent dans une ligne comme les gras, les italiques). Il existe des éléments
hybrides qui sont à la fois inline et block (inline-block).
Font
Gestion des polices, des tailles de caractères…
 Font-family pour définir la ou les polices (http://css.mammouthland.net/font-css-polices-caracteres.php)
 Font-size pour définir la taille (de préférence en % ou en em)
 Font-weight pour définir l'épaisseur (bold ou normal)
 Font-style pour définir l'italique (italic, oblique ou normal)
 Font-variant pour définir les capitales (small-caps ou normal)
 Font-stretch ne semble pas fonctionner sur les navigateurs les plus courants
Text
Gestion des zones de texte.
 Text-align pour définir l'alignement (left, right, center, justify)
 Text-decoration pour les soulignements (none, underline, overline, line-throught, blink / cette dernière
    est à éviter)
 Text-transform pour la gestion des minuscules et majuscules (none, capitalize, uppercase, lowercase)

                 Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   3
CSS

Line
Gestion des lignes.
 Line-height pour gérer la hauteur de la ligne (normal, % ou nombre) – pour centrer reprendre la hauteur
    du bloc
 Line-break pour gérer le saut de ligne pour un texte en japonais (normal, strict)
Word
Gestion des mots.
 Word-spacing pour gérer l'espacement des mots (normal, inherit, nombre en px ou en em)
 Word-wrap pour gérer le comportement d'un mot dépassant le cadre (normal, break-word)
Letter-spacing
Gestion de l'espacement des lettres en em ou px.
@font-face
Gestion des polices importées.
Voir :
 http://css.mammouthland.net/css3/font-face.php (didactitiel)
 http://www.fontsquirrel.com/fontface/generator (générateur de @fontface)




                 Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   4
CSS

Background
Gestion des fonds pour les blocs.
Voir http://www.alsacreations.com/tuto/lire/808-arriere-plans-css3-background.html
 Background-color définit une couleur d'arrière-plan pour un bloc.
 Background-image définit une image en arrière plan. Elle sera appelé avec une url().
 Background-position définit une position de l'image (left, center, right, bottom, top ou valeurs en %, em
   ou px)
 Background-repeat définit si une image se répète si le cadre est plus grand (repeat, no-repeat)
 Background-attachment définit si l'image est fixe ou non (fixed ou scroll)
 Background-size définit la taille de l'image en arrière plan (taille en valeurs %, em ou px, cover pour
   adapter) – voir les préfixes pour utiliser cette propriété sur tous les navigateurs
 Background-clip définit les limites de l'image à l'intérieur du bloc (content-box, padding-box ou border-
   box) – voir les préfixes pour utiliser cette propriété sur tous les navigateurs
 Background-origin définit le point d'origine de l'image (content-box, padding-box ou border-box) – voir
   les préfixes pour utiliser cette propriété sur tous les navigateurs
Width et height
Pour donner une largeur et une hauteur aux éléments blocs.




                 Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   5
CSS

Display
Gestion de l'affichage d'un élément.
 None pour cacher un élément
 Inline définit un élément en ligne
 Block définit un élément en bloc
 Inline-block définit un élément en ligne avec certains comportement d'un bloc
 List-item définit des blocs sous forme de liste
Voir http://www.zonecss.fr/style_css/feuille_css_display.html et
http://www.alsacreations.com/actu/lire/111-display-vous-connaissez.html
Border
Gestion des bordures pour des blocs.
 Border-width définit la largeur de la bordure (généralement en px)
 Border-style définit le style de la bordure (dashed, dotted,double, groove, hidden, inset, outset, none,
   ridge ou solid)
 Border-color définit la couleur
 Border-bottom, border-top, border-left et border-right définissent un côté spécifique (il est alors possible
   de définir border-top-color etc.)



                 Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   6
CSS

Padding
Gestion des marges intérieures à un bloc. Il est possible de s'adresser à une marge spécifique (padding-right
par exemple) ou à toutes (padding: 10px; toutes les marges sont à 10px – padding: 10px 0; les marges en
haut et en bas sont à 10px – padding: top right bottom left; pour séparer les 4 valeurs de la marge).
Margin
Gestion des marges extérieures d'un bloc. Mêmes propriétés que pour padding.
Pour centrer un élément bloc vous pouvez utiliser "margin: 0 auto;".
Vertical-align
Gestion de l'alignement d'un élément en ligne avec un autre élément en ligne. Ce n'est pas fait pour aligner
vertcalement un élément en ligne dans un bloc (voir line-height). Il est aussi possible de l'utiliser dans des
tableaux (<table> ou élément en "display: table-cell;")
Visibility
Gestion de la visibilité d'un bloc sans le faire disparaître du flux à la différence de "display: none;".
Exemple : visibility: hidden; (voir aussi collapse)
List
Gestion des listes ul ol.
 List-style-image permet d'utiliser une image pour remplacer les puces par défaut en appelant une url()
 List-style-type définit le type de puce (decimal, decimal-leading-zero, lower-roman, upper-roman, lower-
     alpha, upper-alpha, disc, circle, square, none, inherit, etc.)
 List-style-position définit l'alignement de la puce (inside, outside ou inherit)


                 Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   7
CSS

Color
Gestion de la couleur des textes.
Les couleurs dans le web sont définies en RGB (rouge, vert et bleu). La traduction se fait soit en rgb(x, y, z)
soit en #xyz.
Voir : http://stylescss.free.fr/couleurs.php
Il existe aussi le hsl(x, y%, z%) : http://www.w3.org/TR/css3-color/#hsl-color
Float
Gestion du flottement des éléments blocs (none, left, right). Attention, un élément en float sort de flux, il est
donc possible d'avoir des alignements d'éléments qui déconstruisent la page.
Clear
Gestion des éléments blocs pour retrouver le flux.
 None
 Left permet de se mettre en-dessous d'un élément si celui-ci est à gauche
 Right permet de se mettre en-dessous d'un élément si celui-ci est à droite
 Both permet de se mettre en-dessous d'un élément que celui-ci soit à droite ou à gauche




                  Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   8
CSS


Les positions
Les positions sont un des éléments les plus importants en CSS. Vous avez bien entendu la possibilité de jouer
avec le flottement des blocs mais les positions vous permettront d'aller plus loin ou de le compléter.
Voir http://openweb.eu.org/articles/initiation_absolue/
 Position: static, c'est la valeur par défaut
 Position: relative positionne l'élément par rapport à l'élément précédent
 Position: fixed positionne l'élément par rapport aux bords de la page (indifférent au scroll)
 Position: absolute positionne l'élément par rapport aux bords de la page ou un élément parent
     positionné et reste sensible au défilement (scroll) – pour centrer un bloc dans un autre il suffira de
     mettre un "left: 50%;" et une margin-left d'une valeur de moitié celle de la largeur du bloc à centrer. Pour
     l'aligement vertical, utilisez top et margin-top suivant le même principe.
Vous pourrez placer les éléments positionnés avec les propriétés left, right, top et bottom.
Il est important de comprendre ce qu'est la notion de flux dans un document. Les éléments positionnés en
absolute ou en fixed sortent du flux, leur place initiale n'est plus prise en compte. Les éléments en relative
garde l'emplacement initial visible même s'ils sont décalés.
Z-index
Dans les situations de positionnement, il peut y avoir des chevauchements ou superpositions de blocs. Avec
z-index vous aller pouvoir définir un ordre de profondeur. Un "z-index: 1000;" passera devant un "z-index:
800;".

                  Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   9
Les sprites CSS

Gagner du temps dans le chargement des images
Avec les sprites CSS, vous allez pouvoir charger une image composée de plusieurs images et n'afficher que la partie
intéressante en fonction de la page ou de la position dans la page. L'avantage est de ne charger qu'une seule image !
 http://www.alsacreations.com/tuto/lire/1068-sprites-css-background-position.html
 Exemples http://blog.voyelle.me/dewplayer/sprites.html

#sprites{
            display: block;
            width: 108px;
            height: 229px;
            background: url(images/sprites.png) -1030px -958px no-repeat;
}
#sprites:hover, #sprites:active, #sprites:focus{
             background-position: -1030px -37px;
}
#sprites span {
             display: inline-block;
             text-indent: -5000px;
}

Dimension de l'image utilisée : 1286px par 1778px



                    Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr     10
Les propriétés CSS3 déjà en place

Les propriétés les plus connues

Border-radius
Cette fonction arrondit les coins. La ou les données en pixel définissent le rayon.
{border-radius: 10px;} les quatre coins seront arrondis avec un rayon de 10px
{border-radius: 10px 0 5px 4px;} le coin en haut à gauche aura un arrondi de 10px, celui de droite n'en
aura pas, celui en bas à droite un arrondi de 5px et le dernier en bas à gauche de 4px

Text-shadow et box-shadow
Cette fonction ajoute une ombre à un texte ou un élément.
{text-shadow: 1px 1px 5px #333}
Les deux premières options définissent la direction horizontale et verticale (les valeurs peuvent être
négatives), la troisième la quantité de flou (0px correspond à l'absence de flou) et la dernière la
couleur.
Attention text-shadow n'est pas supporté par IE9 et ses prédécesseurs.

Box-sizing
Cette fonction permet de forcer la largeur d'un cadre malgré des bordures ou des marges.
{box-sizing: border-box;}

                Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   11
Les propriétés déjà en place

Les arrière-plans multiples
Vous avez la possibilité de placer plusieurs images en arrière-plan dans un background ! Ça
allègera le code. Vous avez 9 positions possible avec top, center, bottom, left et right en
associant avec no-repeat. On retrouve les options proposées pour le background comme repeat-
x, repeat-y…
{background: url(covers/0.jpg) no-repeat top left, url(covers/1.jpg) no-repeat top right,
url(covers/2.jpg) no-repeat bottom right, url(covers/3.jpg) no-repeat bottom left,
url(mobile/logo.gif) center left repeat-x, url(mobile/logo.gif) center top repeat-y;}

Opacity
Cette fonction assez simple d'utilisation ne s'applique qu'aux éléments, il n'est pas possible de
jouer sur l'opacité d'un texte. Pour rendre un texte translucide, il faudra changer l'opacité du
bloc le contenant. Les valeurs vont de 0 (invisible) à 1 (opaque).
{opacity: .5;}

hyphens: auto;
Pour générer des césures plus travaillées qu’avec word-wrap.
Voir http://www.alsacreations.com/tuto/lire/1038-gerer-debordement-contenu-et-cesures-
css.html#hyphens

                Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   12
Les propriétés déjà en place

RGBA
Vous avez comme option pour les couleurs un modèle qui permet de reprendre les références
RGB d'une couleur et de lui ajouter une opacité (sur le même principe qu'opacity de 0 à 1).
{color: rgba(0, 0, 0, .5);} cela correspond à du noir avec une opacité à 50%
Il est aussi possible de n'utiliser que rgb().

Certaines propriétés ne sont pas complètement implantées. Vous devrez utiliser les préfixes
pour chacun des navigateurs.

            Navigateurs                                        Préfixes
            Safari (webkit)                                    -webkit-
            Firefox (mozilla)                                  -moz-
            Opéra                                              -o-
            Konqueror                                          -khtml-
            IE (microsoft)                                     -ms-
            Chrome                                             -chrome- ou –webkit-

               Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   13
Les propriétés déjà en place

HSLA
Il existe une autre syntaxe pour générer une couleur et de la transparence. HSL signifie
Teinte(Hue), Saturation et Luminosité(Lightness).
La première valeur doit être un nombre entre 0 et 359 et il détermine la teinte. Les deux autres
valeurs sont en pourcentage %.
Voir : http://www.w3.org/TR/css3-color/#hsl-examples




               Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   14
Les propriétés déjà en place

Column
Avec les préfixes, vous pourrez afficher des colonnes dans un bloc.
{-webkit-column-width: 20em;} définit une largeur pour les colonnes (ça permet d'être flexible
et responsive)
{-webkit-column-gap: 1em;} définit une marge entre les colonnes
{-webkit-column-rule: 1px solid #333;} fait apparaître une séparation de 1px
{-moz-column-count: 3;} ou {-moz-columns: 2;} permet d'imposer un nombre précis de colonnes
Voir plus précisément : http://www.w3.org/TR/css3-multicol/

Linear-gradient et radial-gradient
Comme la précédente propriété, il vous faudra utiliser des préfixes pour qu'elles fonctionnent.
Ces fonctions a pour but de créer un dégradé sur un ligne ou en cercle. Information importante :
elles sont une option de background-image.
{background-image: -moz-linear-gradient(left top, #d60f0f 0%, #ffdd00 100%);}
{background-image: -moz-radial-gradient(50% 50%, ellipse closest-side, #53B8EB, #B8FB97
50%);}
Pour Safari et Chrome nous aurons –webkit-gradient (voir page suivante).
Voir plus précisément : http://www.html5-css3.fr/css3/degrades-couleurs-css3-gradient

               Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   15
Les propriétés déjà en place

Comme pour le moment les navigateurs interprètent assez mal les dégradés, Il existe des outils
en ligne qui permettent de générer les dégradés, il ne reste alors plus qu'à copier le code :
http://www.westciv.com/tools/gradients/index-moz.html
L'écriture du CSS est différente que celle présentée avant mais fonctionne.

Exemple :
-webkit-gradient(linear, 0% 75%, 0% 19%, from(#ABABAB), to(#C9C9C9))
-moz-linear-gradient(19% 75% 90deg,#ABABAB, #C9C9C9)




               Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   16
Les propriétés déjà en place

La fonction calc()
Introduite avec CSS3, la fonction calc() permet de faire de simples calculs sur les tailles dans
votre fichier CSS, qui sont parfois incalculables d’avance lorsque l’on mélange pourcentages et
pixels.

{ width: calc(100% - 100px); }

Source : http://maxime.sh/2013/02/css-calc/
Compatibilités des navigateurs : http://caniuse.com/calc




                Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   17
Les propriétés déjà en place

Propriété                                                       Navigateurs
Border-radius                                                   Safari 3+, Chrome 3+, Firefoc 1+, Opéra 10.5+,
                                                                IE 9+
Text-shadow                                                     Safari 1,1+, Chrome 2+, Firefox 3.1+, Opéra
                                                                9.5+
Box-shadow                                                      Safari 3+, Chrome 3+, Firefox 3.5+, Opéra
                                                                10.5+, IE 9+
Arrière-plan multiples pour les images                          Safari 1.3+, Chrome 2+, Firefox 3.6+, Opéra
                                                                10.5+, IE 9+
Opacity                                                         Safari 1.2+, Chrome 1+, Firefox 1.5+, Opéra 9+,
                                                                IE 9+
RGBA                                                            Safari 3.2+, Chrome 3+, Firefox 3+, Opéra 10+,
                                                                IE 9+




                Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   18
Les sélecteurs et les pseudo-éléments


Les pseudo-éléments sont un des aspects les plus intéressants du CSS et sont en place depuis
longtemps pour certaines fonctions. Avant de voir les tableaux des sélecteurs d'attribut et de tous
les pseudo-éléments, voyons à partir d'un exemple, les possibilités offertes.
Pour compléter, vous trouveres des informations sur ces sites :
http://www.yoyodesign.org/doc/w3c/css2/selector.html
http://www.tomsyweb.com/component/content/article/48-css/101-les-30-selecteurs-css-a-
connaître

Que signifie en css cette ligne de code : a:not([rel*="lightbox"]){text-transform: uppercase;} ?
Pour commencer, nous nous adressons ici au lien (<a…>). Cependant, avec :not(), nous excluons
tous les liens qui auraient le terme "lightbox" dans les informations données à l'attribut rel (ex
"lightbox effet", "effet-lightbox" ou "effetlightbox3"). Si nous avions mis rel="lightbox", nous
aurions ciblé uniquement les liens avec l'information exacte "lightbox".




                  Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   19
Les sélecteurs et les pseudo-éléments

Sélecteurs d'attribut                                                Fonctions
[rel]                                                                Cible les éléments qui contiennent un attribut "rel"
                                                                     qu'importe sa valeur
[class="effet"] ou [class=effet]                                     Cible les éléments qui contiennent une classe dont la
                                                                     valeur exacte est "effet"
[id|="header"]                                                       Cible les éléments qui contiennet une ID dont les valeurs
                                                                     séparées par des tirets "-" commenceraient par header
[rel~=mavaleur]                                                      Cible les éléments qui contiennent un attribut rel
                                                                     contenant "mavaleur" dans une liste de valeurs séparées
                                                                     par des espaces
[href^=http]                                                         Cible les éléments qui ont un attribut "href" qui comment
                                                                     par "http" – ici tous les liens et non les mails par exemple
[src$=.png]                                                          Cible les éléments dont l'attribut "src" se termine par
[href$=.pdf]                                                         ".png"
                                                                     Pour cibler toutes les images, il pourrait être ajouter un
                                                                     attribut "data-filetype=image"
[rel*=lightbox]                                                      Cible un élément qui contient l'atrribut "rel" dont les
                                                                     valeurs comportes au moins le terme "lightbox" (avec ou
                                                                     sans séparateur par opposition à ~)



                     Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr                20
Les pseudo-éléments

Sélecteurs CSS                                                            Fonctions
*                                                                         Cible tous les éléments
E                                                                         Cible uniquement les élément E
html:root ou :root                                                        Cible tous les éléments qui sont à la racine html
E:nth-child(n)                                                            Cible les éléments numéro n par rapports à leurs frères dans
                                                                          un élément parent (pour cibler une ligne sur deux, vous
                                                                          utiliserez even pour les lignes paires et odd impaires)
E:nth-last-child(n)                                                       Idem mais en commençant par la fin
E:nth-of-type(n) et :nth-last-of-type(n)                                  Cibler dans des listes d'éléments frères le numéro "n" en
                                                                          partant du début ou de la fin de la liste
E:first-child et E:last-child                                             Cibler le premier ou le dernier élément enfant d'un parent

E:first-of-type et E:last-of-type                                         Identique à :nth-of-type(1) et :nth-last-of-type(1)
E:only-child                                                              Cibler les éléments enfants uniques de leur parent
E:only-of-type                                                            Cibler tous les éléments qui n'ont pas de frères
E:empty                                                                   Cibler les éléments vides
E:link                                                                    Cibler les éléments liens non visités


                          Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr                21
Les pseudo-éléments

Sélecteurs CSS                                                                               Fonctions
E:visited                                                                                    Cibler les éléments (liens) qui ont été visités
E:active                                                                                     Cibler les éléments cliqués
E:hover                                                                                      Cibler un élément survolé par la souris (limite sous IE6 aux
                                                                                             éléments <a>)
E:focus                                                                                      http://www.web-petit.com/css-focus
E:target                                                                                     Cibler un élément comme une ancre qui serait appelée lors
                                                                                             d'un click
E:lang(fr)                                                                                   Cibler un élément dont l'attribut langue est "fr"
E:enabled et E:disabled                                                                      Cibler les éléments actifs ou inactifs par exemple dans des
                                                                                             formulaires (balises input, select…)
E:checked                                                                                    Cibler les éléments "input" de type checkbox lorsque qu'ils
                                                                                             sélectionnés
E::first-line                                                                                Cibler la première ligne d'un élément
E::first-letter                                                                              Cibler la première lettre d'un élément
E::before                                                                                    Cibler des éléments et ajouter du contenu avant celui-ci
Pour récupérer des contenus d'attributs, on peut faire ainsi :
{content: attr(href);} pour afficher le l'url du lien par exemple.                           (image, texte…) et lui appliquer des styles
E::after                                                                                     Idem mais en fin

                                             Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr                22
Les pseudo-éléments

Sélecteurs CSS                                                       Fonctions
E#monId et E.maclasse                                                Cibler les éléments qui ont une ID (rappel : les ID sont
                                                                     uniques) ou une classe
E:not(selecteur)                                                     Cibler les éléments sauf le sélecteur indiqué
EF                                                                   Cibler les éléments F dont le parent sont les éléments E
E>F                                                                  Cibler les éléments F descendants directs de E
E+F                                                                  Cibler le premier élément F qui suit immédiatement les
                                                                     éléments E
E~F                                                                  Cibler les éléments F qui suivent les éléments E (moins strict
                                                                     que E + F)



Vous avez maintenant la possibilité non seulement d'utiliser ces sélecteurs mais de les associer les uns aux autres
pour être le plus précis dans la mise en place de vos styles.




                     Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr                  23
Et aussi


Les transitions
Pour créer des transitions plus douces, il existe les fonctions "transition". Par exemple, vous souhaitez créer
une transition de couleur via un :hover. Les préfixes sont indispensables pour le moment.
À partir d'un lien :                                                                         Les fonctions du timing :
<a href="#" class="transition">Ma transition</a>                                                                     Ease
Nous aurions en CSS :                                                                                                Linear
                                                                                                                     Ease-in
a.transition{                                                                                                        Ease-out
padding: 5px 10px;                                                                                                   Ease-in-out
                                                                                                                     Cubic-bezier
background: purple;
-webkit-transition-property: background; (on définit la propriété sur laquelle nous voulons faire une transition)
-webkit-transition-duration: 1s; (on définit une durée en seconde)
-webkit-transition-timing-function: ease; (on définit une courbe de vitesse)
…} ou {-webkit-transition: background 1s ease;}
a.transition:hover {background: yellow;} (ne pas oublier de définir aussi la couleur du :hover)
D'autres options sont possibles :
 Transition-delay pour définir un temps entre ce qui déclenche la transition et la transition (en seconde)
 Sur plusieurs propriétés : {transition: background 1s ease, color 1s linear;}
 Sur toutes les propriétés : {transition: all 1.5s ease;}



                    Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr                  24
Et aussi


Les transformations
De même que pour les transitions, cette fonction exige les préfixes.
Elle se présente sous cette forme :
transform: (vos options);
Les options possibles :
 Modifier la taille : transform: scale(x);
    la valeur x représente le zoom que vous voulez effectuer, la valeur 1 étant la valeur sans modification
 Modifier l'angle : transform: rotate(xdeg);
    la valeur x représente les degrés et cette valeur peut être négative (ex: -15deg)
 Placer l'image : transform-origin: bottom top left right center…;
    par défaut vous aurez center center pour l'alignement vertical et horisontal
 Déformer l'image : transform: skew(-10deg, 30deg);
 Déplacer l'image : transform: transalte(xpx, ypx);
Pour créer une animation comme faire tourner un soleil, il faudra ajouter du javascript ou du jquery.




                  Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   25
Et aussi


Le parallaxe
Le principe du parallaxe est de déplacer des images en fonction du défilement vertical et/ou horizontal, ou
du redimensionnement de la page.
Exemple de parallaxe dans un redimensionnement : http://silverbackapp.com/
Pour que cela fonctionne, il faut que vos images soit en transparence (gif ou png) ou en opacité.
Vous pouvez suivre les didacticiels suivant pour des effets plus complexes :
 http://www.creativejuiz.fr/blog/tutoriels/css3-effet-parallaxe-sans-javascript
 http://www.alsacreations.com/astuce/lire/1417-effet-parallaxe.html avec jQuery

Pour les effets de redimensionnent, c'est assez simple à mettre en place.
Vous placez vos 3 images de fond dans le <body>.
background: url(images/body2.png) repeat-x scroll 70% 0, url(images/body3.png) repeat-x scroll 300% 0,
url(images/body1.gif) repeat-x scroll -10% 0;
La dernière image doit être celle qui se place le plus en arrière (celle qui peut être opaque par exemple).
Ensuite, vous devez informer quelques options pour placer les éléments en haut de page, pour faire une
répétition horizontale avec repeat-x, puis un scroll pour que celles-ci ne suivent pas le déplacement
verticale de la fenêtre (sinon fixed pour imposer la présence des images en haut de page. Les valeurs en %
vont agir sur les images lorsque la fenêtre est redimensionner en les animant à des vitesses différentes.


                 Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   26
Quelques liens

   Tutoriels et démonstrations HTML5 et CSS3 http://www.html5-css3.fr/
   http://www.yoyodesign.org/doc/w3c/css2/selector.html
   http://www.tomsyweb.com/component/content/article/48-css/101-les-30-selecteurs-css-a-
    connaitre
   http://css.4design.tl/css-selecteur-frere-adjacent
   http://www.vanseodesign.com/css/combinators-pseudo-classes/
   http://blog.voyelle.me/langages/petit-tour-des-fonctions-en-css3
   http://www.webdesignweb.fr/web/css-3-transform-rotation-et-echelle-766
   http://thinkvitamin.com/design/how-to-recreate-silverbacks-parallax-effect/

Nos exemples
 Sprites http://blog.voyelle.me/dewplayer/sprites.html
 HTML5 et CSS3 http://blog.voyelle.me/dewplayer/html5css3.html
 Transitions http://blog.voyelle.me/dewplayer/transitions.html
 Parallaxe http://blog.voyelle.me/dewplayer/parallaxe.html et
  http://blog.voyelle.me/dewplayer/parallaxe2.html



               Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr   27

Contenu connexe

En vedette

Stratégie Product Listing Ads Google AdWords (2013)
Stratégie Product Listing Ads Google AdWords (2013)Stratégie Product Listing Ads Google AdWords (2013)
Stratégie Product Listing Ads Google AdWords (2013)Damien Marchois
 
Optimisez votre référencement sur Internet pour améliorer la visibilité de vo...
Optimisez votre référencement sur Internet pour améliorer la visibilité de vo...Optimisez votre référencement sur Internet pour améliorer la visibilité de vo...
Optimisez votre référencement sur Internet pour améliorer la visibilité de vo...polenumerique33
 
Conseils et outils gratuits pour démarrer
Conseils et outils gratuits pour démarrer Conseils et outils gratuits pour démarrer
Conseils et outils gratuits pour démarrer Needeo
 
Amen.fr - Choisir le nom de domaine le mieux adapté pour votre identité numér...
Amen.fr - Choisir le nom de domaine le mieux adapté pour votre identité numér...Amen.fr - Choisir le nom de domaine le mieux adapté pour votre identité numér...
Amen.fr - Choisir le nom de domaine le mieux adapté pour votre identité numér...Amen.fr
 
Amen.fr - Afnic Nouveaux GTLD
Amen.fr - Afnic Nouveaux GTLDAmen.fr - Afnic Nouveaux GTLD
Amen.fr - Afnic Nouveaux GTLDAmen.fr
 
Les applications iOS (iPhone & iPad) et Android
Les applications iOS (iPhone & iPad) et AndroidLes applications iOS (iPhone & iPad) et Android
Les applications iOS (iPhone & iPad) et AndroidNeedeo
 
Amen.fr - Webinar avec l'Afnic : Nouveaux GTLD
Amen.fr - Webinar avec l'Afnic : Nouveaux GTLDAmen.fr - Webinar avec l'Afnic : Nouveaux GTLD
Amen.fr - Webinar avec l'Afnic : Nouveaux GTLDAmen.fr
 
Découvrez le nouveau plugin pour la solution ecommerce Shopware
Découvrez le nouveau plugin pour la solution ecommerce ShopwareDécouvrez le nouveau plugin pour la solution ecommerce Shopware
Découvrez le nouveau plugin pour la solution ecommerce ShopwareLengow
 
présentation wordpress
présentation wordpressprésentation wordpress
présentation wordpressmonsieurpixel
 
Améliorez votre présence en ligne pour attirer vos clients
Améliorez votre présence en ligne pour attirer vos clientsAméliorez votre présence en ligne pour attirer vos clients
Améliorez votre présence en ligne pour attirer vos clientspolenumerique33
 
Amen - Introduction au référencement (SEO)
Amen - Introduction au référencement (SEO)Amen - Introduction au référencement (SEO)
Amen - Introduction au référencement (SEO)Amen.fr
 
I tourisme amen donuts webinar july 15
I tourisme amen donuts webinar july 15I tourisme amen donuts webinar july 15
I tourisme amen donuts webinar july 15Amen.fr
 
Conférence semestrielle Syntec numérique 2012
Conférence semestrielle Syntec numérique 2012Conférence semestrielle Syntec numérique 2012
Conférence semestrielle Syntec numérique 2012Needeo
 
Comment choisir son nom de domaine avec Amen
Comment choisir son nom de domaine avec AmenComment choisir son nom de domaine avec Amen
Comment choisir son nom de domaine avec AmenAmen.fr
 
Adobe Digital Index "Best of the Best Benchmark 2014"
Adobe Digital Index "Best of the Best Benchmark 2014"Adobe Digital Index "Best of the Best Benchmark 2014"
Adobe Digital Index "Best of the Best Benchmark 2014"polenumerique33
 

En vedette (18)

Css
CssCss
Css
 
Stratégie Product Listing Ads Google AdWords (2013)
Stratégie Product Listing Ads Google AdWords (2013)Stratégie Product Listing Ads Google AdWords (2013)
Stratégie Product Listing Ads Google AdWords (2013)
 
Optimisez votre référencement sur Internet pour améliorer la visibilité de vo...
Optimisez votre référencement sur Internet pour améliorer la visibilité de vo...Optimisez votre référencement sur Internet pour améliorer la visibilité de vo...
Optimisez votre référencement sur Internet pour améliorer la visibilité de vo...
 
Conseils et outils gratuits pour démarrer
Conseils et outils gratuits pour démarrer Conseils et outils gratuits pour démarrer
Conseils et outils gratuits pour démarrer
 
Amen.fr - Choisir le nom de domaine le mieux adapté pour votre identité numér...
Amen.fr - Choisir le nom de domaine le mieux adapté pour votre identité numér...Amen.fr - Choisir le nom de domaine le mieux adapté pour votre identité numér...
Amen.fr - Choisir le nom de domaine le mieux adapté pour votre identité numér...
 
Amen.fr - Afnic Nouveaux GTLD
Amen.fr - Afnic Nouveaux GTLDAmen.fr - Afnic Nouveaux GTLD
Amen.fr - Afnic Nouveaux GTLD
 
Les applications iOS (iPhone & iPad) et Android
Les applications iOS (iPhone & iPad) et AndroidLes applications iOS (iPhone & iPad) et Android
Les applications iOS (iPhone & iPad) et Android
 
Amen.fr - Webinar avec l'Afnic : Nouveaux GTLD
Amen.fr - Webinar avec l'Afnic : Nouveaux GTLDAmen.fr - Webinar avec l'Afnic : Nouveaux GTLD
Amen.fr - Webinar avec l'Afnic : Nouveaux GTLD
 
Découvrez le nouveau plugin pour la solution ecommerce Shopware
Découvrez le nouveau plugin pour la solution ecommerce ShopwareDécouvrez le nouveau plugin pour la solution ecommerce Shopware
Découvrez le nouveau plugin pour la solution ecommerce Shopware
 
Initiation html css
Initiation html cssInitiation html css
Initiation html css
 
présentation wordpress
présentation wordpressprésentation wordpress
présentation wordpress
 
Améliorez votre présence en ligne pour attirer vos clients
Améliorez votre présence en ligne pour attirer vos clientsAméliorez votre présence en ligne pour attirer vos clients
Améliorez votre présence en ligne pour attirer vos clients
 
Amen - Introduction au référencement (SEO)
Amen - Introduction au référencement (SEO)Amen - Introduction au référencement (SEO)
Amen - Introduction au référencement (SEO)
 
Lecture 03 HTML&CSS Part 2
Lecture 03   HTML&CSS Part 2Lecture 03   HTML&CSS Part 2
Lecture 03 HTML&CSS Part 2
 
I tourisme amen donuts webinar july 15
I tourisme amen donuts webinar july 15I tourisme amen donuts webinar july 15
I tourisme amen donuts webinar july 15
 
Conférence semestrielle Syntec numérique 2012
Conférence semestrielle Syntec numérique 2012Conférence semestrielle Syntec numérique 2012
Conférence semestrielle Syntec numérique 2012
 
Comment choisir son nom de domaine avec Amen
Comment choisir son nom de domaine avec AmenComment choisir son nom de domaine avec Amen
Comment choisir son nom de domaine avec Amen
 
Adobe Digital Index "Best of the Best Benchmark 2014"
Adobe Digital Index "Best of the Best Benchmark 2014"Adobe Digital Index "Best of the Best Benchmark 2014"
Adobe Digital Index "Best of the Best Benchmark 2014"
 

Similaire à CSS et CSS3

seance3-1 CSS.ppt
seance3-1 CSS.pptseance3-1 CSS.ppt
seance3-1 CSS.pptAmineReal
 
initiation-dvptWEB-ericacademy.pdf
initiation-dvptWEB-ericacademy.pdfinitiation-dvptWEB-ericacademy.pdf
initiation-dvptWEB-ericacademy.pdfEricKeita
 
Intégrateurs, bousculez vos habitudes
Intégrateurs, bousculez vos habitudesIntégrateurs, bousculez vos habitudes
Intégrateurs, bousculez vos habitudesRaphaël Goetter
 
Cours css niveau debutant
Cours css niveau debutantCours css niveau debutant
Cours css niveau debutantTheBest Icanbe
 
technologie web - part2
technologie web - part2technologie web - part2
technologie web - part2Benoît Simard
 
Les bases du responsive design
Les bases du responsive designLes bases du responsive design
Les bases du responsive designVoyelle Voyelle
 
Trois avancées majeures en CSS3 : Media Queries, Grid Layout et Animations
Trois avancées majeures en CSS3 : Media Queries, Grid Layout et AnimationsTrois avancées majeures en CSS3 : Media Queries, Grid Layout et Animations
Trois avancées majeures en CSS3 : Media Queries, Grid Layout et AnimationsMicrosoft
 
Html & Css #5 : positionement
Html & Css #5 : positionementHtml & Css #5 : positionement
Html & Css #5 : positionementJean Michel
 
Trois avancées majeures en CSS3 : Mediaqueries, Grid Layout et Animations (MS...
Trois avancées majeures en CSS3 : Mediaqueries, Grid Layout et Animations (MS...Trois avancées majeures en CSS3 : Mediaqueries, Grid Layout et Animations (MS...
Trois avancées majeures en CSS3 : Mediaqueries, Grid Layout et Animations (MS...Raphaël Goetter
 
Atelier CSS ParisWeb 2007
Atelier CSS ParisWeb 2007Atelier CSS ParisWeb 2007
Atelier CSS ParisWeb 2007Mammouthland
 
HTML5 & CSS3
HTML5 & CSS3HTML5 & CSS3
HTML5 & CSS3JDerrien
 

Similaire à CSS et CSS3 (20)

Les bases du CSS3
Les bases du CSS3Les bases du CSS3
Les bases du CSS3
 
html-css-casuhal.pdf
html-css-casuhal.pdfhtml-css-casuhal.pdf
html-css-casuhal.pdf
 
seance3-1 CSS.ppt
seance3-1 CSS.pptseance3-1 CSS.ppt
seance3-1 CSS.ppt
 
initiation-dvptWEB-ericacademy.pdf
initiation-dvptWEB-ericacademy.pdfinitiation-dvptWEB-ericacademy.pdf
initiation-dvptWEB-ericacademy.pdf
 
Intégrateurs, bousculez vos habitudes
Intégrateurs, bousculez vos habitudesIntégrateurs, bousculez vos habitudes
Intégrateurs, bousculez vos habitudes
 
Cascade Style Sheets
Cascade Style SheetsCascade Style Sheets
Cascade Style Sheets
 
Html
HtmlHtml
Html
 
Cours css niveau debutant
Cours css niveau debutantCours css niveau debutant
Cours css niveau debutant
 
Initiation à Bootstrap
Initiation à BootstrapInitiation à Bootstrap
Initiation à Bootstrap
 
technologie web - part2
technologie web - part2technologie web - part2
technologie web - part2
 
Les dessous de html+ccs+js
Les dessous de html+ccs+jsLes dessous de html+ccs+js
Les dessous de html+ccs+js
 
Les bases du responsive design
Les bases du responsive designLes bases du responsive design
Les bases du responsive design
 
Trois avancées majeures en CSS3 : Media Queries, Grid Layout et Animations
Trois avancées majeures en CSS3 : Media Queries, Grid Layout et AnimationsTrois avancées majeures en CSS3 : Media Queries, Grid Layout et Animations
Trois avancées majeures en CSS3 : Media Queries, Grid Layout et Animations
 
HTML5, le nouveau buzzword
HTML5, le nouveau buzzwordHTML5, le nouveau buzzword
HTML5, le nouveau buzzword
 
Initiation au css
Initiation au cssInitiation au css
Initiation au css
 
Html & Css #5 : positionement
Html & Css #5 : positionementHtml & Css #5 : positionement
Html & Css #5 : positionement
 
Trois avancées majeures en CSS3 : Mediaqueries, Grid Layout et Animations (MS...
Trois avancées majeures en CSS3 : Mediaqueries, Grid Layout et Animations (MS...Trois avancées majeures en CSS3 : Mediaqueries, Grid Layout et Animations (MS...
Trois avancées majeures en CSS3 : Mediaqueries, Grid Layout et Animations (MS...
 
Initiation au html
Initiation au htmlInitiation au html
Initiation au html
 
Atelier CSS ParisWeb 2007
Atelier CSS ParisWeb 2007Atelier CSS ParisWeb 2007
Atelier CSS ParisWeb 2007
 
HTML5 & CSS3
HTML5 & CSS3HTML5 & CSS3
HTML5 & CSS3
 

Plus de Voyelle Voyelle

Construire mon plan d'action webmarketing en 5 étapes
Construire mon plan d'action webmarketing en 5 étapesConstruire mon plan d'action webmarketing en 5 étapes
Construire mon plan d'action webmarketing en 5 étapesVoyelle Voyelle
 
Le digital pour se developper à l'international 2
Le digital pour se developper à l'international 2Le digital pour se developper à l'international 2
Le digital pour se developper à l'international 2Voyelle Voyelle
 
La publicité digital pour tester son marché à l'international
La publicité digital pour tester son marché à l'internationalLa publicité digital pour tester son marché à l'international
La publicité digital pour tester son marché à l'internationalVoyelle Voyelle
 
Etablir une stratégie réseaux sociaux à l’international
Etablir une stratégie réseaux sociaux à l’internationalEtablir une stratégie réseaux sociaux à l’international
Etablir une stratégie réseaux sociaux à l’internationalVoyelle Voyelle
 
Développer l’export en qualifiant vos prospects et en les convertissant avec...
Développer l’export en qualifiant vos prospects et en les convertissant avec...Développer l’export en qualifiant vos prospects et en les convertissant avec...
Développer l’export en qualifiant vos prospects et en les convertissant avec...Voyelle Voyelle
 
Essentiel medias et reseaux sociaux
Essentiel medias et reseaux sociauxEssentiel medias et reseaux sociaux
Essentiel medias et reseaux sociauxVoyelle Voyelle
 
Prezi community management par Pierre AVRIL
Prezi community management par Pierre AVRILPrezi community management par Pierre AVRIL
Prezi community management par Pierre AVRILVoyelle Voyelle
 
Edo2016 démarrer son activité les outils de communication c. guezou
Edo2016  démarrer son activité les outils de communication c. guezouEdo2016  démarrer son activité les outils de communication c. guezou
Edo2016 démarrer son activité les outils de communication c. guezouVoyelle Voyelle
 
Conférence : Et si l’avenir de mon magasin passait par Internet ?
Conférence : Et si l’avenir de mon magasin passait par Internet ? Conférence : Et si l’avenir de mon magasin passait par Internet ?
Conférence : Et si l’avenir de mon magasin passait par Internet ? Voyelle Voyelle
 
Les outils pour animer votre site web
Les outils pour animer votre site webLes outils pour animer votre site web
Les outils pour animer votre site webVoyelle Voyelle
 
Présentation des modules de Yahoo! Pipes
Présentation des modules de Yahoo! PipesPrésentation des modules de Yahoo! Pipes
Présentation des modules de Yahoo! PipesVoyelle Voyelle
 
Pour créer un bandeau de vignettes qui ouvre une lightbox
Pour créer un bandeau de vignettes qui ouvre une lightboxPour créer un bandeau de vignettes qui ouvre une lightbox
Pour créer un bandeau de vignettes qui ouvre une lightboxVoyelle Voyelle
 
Création & Gestion de fan page Facebook
Création & Gestion de fan page FacebookCréation & Gestion de fan page Facebook
Création & Gestion de fan page FacebookVoyelle Voyelle
 
Présentation Yahoo pipes
Présentation Yahoo pipesPrésentation Yahoo pipes
Présentation Yahoo pipesVoyelle Voyelle
 

Plus de Voyelle Voyelle (20)

Construire mon plan d'action webmarketing en 5 étapes
Construire mon plan d'action webmarketing en 5 étapesConstruire mon plan d'action webmarketing en 5 étapes
Construire mon plan d'action webmarketing en 5 étapes
 
Le digital pour se developper à l'international 2
Le digital pour se developper à l'international 2Le digital pour se developper à l'international 2
Le digital pour se developper à l'international 2
 
La publicité digital pour tester son marché à l'international
La publicité digital pour tester son marché à l'internationalLa publicité digital pour tester son marché à l'international
La publicité digital pour tester son marché à l'international
 
Etablir une stratégie réseaux sociaux à l’international
Etablir une stratégie réseaux sociaux à l’internationalEtablir une stratégie réseaux sociaux à l’international
Etablir une stratégie réseaux sociaux à l’international
 
Développer l’export en qualifiant vos prospects et en les convertissant avec...
Développer l’export en qualifiant vos prospects et en les convertissant avec...Développer l’export en qualifiant vos prospects et en les convertissant avec...
Développer l’export en qualifiant vos prospects et en les convertissant avec...
 
Essentiel medias et reseaux sociaux
Essentiel medias et reseaux sociauxEssentiel medias et reseaux sociaux
Essentiel medias et reseaux sociaux
 
Prezi community management par Pierre AVRIL
Prezi community management par Pierre AVRILPrezi community management par Pierre AVRIL
Prezi community management par Pierre AVRIL
 
Edo2016 facebook
Edo2016  facebookEdo2016  facebook
Edo2016 facebook
 
Edo2016 twitter
Edo2016  twitterEdo2016  twitter
Edo2016 twitter
 
Edo2016 démarrer son activité les outils de communication c. guezou
Edo2016  démarrer son activité les outils de communication c. guezouEdo2016  démarrer son activité les outils de communication c. guezou
Edo2016 démarrer son activité les outils de communication c. guezou
 
Conférence : Et si l’avenir de mon magasin passait par Internet ?
Conférence : Et si l’avenir de mon magasin passait par Internet ? Conférence : Et si l’avenir de mon magasin passait par Internet ?
Conférence : Et si l’avenir de mon magasin passait par Internet ?
 
Les outils pour animer votre site web
Les outils pour animer votre site webLes outils pour animer votre site web
Les outils pour animer votre site web
 
Google analytics
Google analyticsGoogle analytics
Google analytics
 
Présentation des modules de Yahoo! Pipes
Présentation des modules de Yahoo! PipesPrésentation des modules de Yahoo! Pipes
Présentation des modules de Yahoo! Pipes
 
Mailjet
MailjetMailjet
Mailjet
 
Pour créer un bandeau de vignettes qui ouvre une lightbox
Pour créer un bandeau de vignettes qui ouvre une lightboxPour créer un bandeau de vignettes qui ouvre une lightbox
Pour créer un bandeau de vignettes qui ouvre une lightbox
 
Création & Gestion de fan page Facebook
Création & Gestion de fan page FacebookCréation & Gestion de fan page Facebook
Création & Gestion de fan page Facebook
 
Présentation Yahoo pipes
Présentation Yahoo pipesPrésentation Yahoo pipes
Présentation Yahoo pipes
 
Brochure 2012
Brochure 2012Brochure 2012
Brochure 2012
 
Jquery mobile
Jquery mobileJquery mobile
Jquery mobile
 

CSS et CSS3

  • 1. Aperçu rapide du CSS et du CSS3 Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 1
  • 2. Principes des CSS Feuilles de styles en cascade Depuis plus de dix ans, il est d'usage de séparer le fond (HTML) de la forme (CSS). Les avantages de cette séparation sont importants, ils permettent notamment de pouvoir agir sur des éléments du site présents sur toutes les pages en agissant sur un seul fichier. Pour comprendre comment agissent les CSS, il est indispensable de connaître le HTML. Il existe plusieurs méthodes pour utiliser les CSS :  Insérer les CSS directement dans la balise souhaitée. Cette méthode est déconseillée mais peut être utile lors des phases de développement. <h1 style="color: red; font-size: 2em;">Mon titre</h1>  Insérer les CSS directement dans le <head>. <style> h1 { color: red; font-size: 2em; } </style>  Appeler un fichier styles.css dans le <head>. <link rel="stylesheet" media="screen" type="text/css" href="styles.css" /> (en xHTML) <link rel="stylesheet" media="print" href="styles.css> (en HTML5)  Utiliser la règle @import soit dans le <head> via la balise <style>, soit dans une autre feuille de style. <style>@import url(styles.css) media;</style> (voir : http://www.w3.org/TR/css3-cascade/#at-import) Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 2
  • 3. CSS Les propriétés du CSS Les éléments en CSS sont généralement des blocs (éléments qui prennent une largeur comme un cadre, un titre) ou des lignes (ils s'intègrent dans une ligne comme les gras, les italiques). Il existe des éléments hybrides qui sont à la fois inline et block (inline-block). Font Gestion des polices, des tailles de caractères…  Font-family pour définir la ou les polices (http://css.mammouthland.net/font-css-polices-caracteres.php)  Font-size pour définir la taille (de préférence en % ou en em)  Font-weight pour définir l'épaisseur (bold ou normal)  Font-style pour définir l'italique (italic, oblique ou normal)  Font-variant pour définir les capitales (small-caps ou normal)  Font-stretch ne semble pas fonctionner sur les navigateurs les plus courants Text Gestion des zones de texte.  Text-align pour définir l'alignement (left, right, center, justify)  Text-decoration pour les soulignements (none, underline, overline, line-throught, blink / cette dernière est à éviter)  Text-transform pour la gestion des minuscules et majuscules (none, capitalize, uppercase, lowercase) Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 3
  • 4. CSS Line Gestion des lignes.  Line-height pour gérer la hauteur de la ligne (normal, % ou nombre) – pour centrer reprendre la hauteur du bloc  Line-break pour gérer le saut de ligne pour un texte en japonais (normal, strict) Word Gestion des mots.  Word-spacing pour gérer l'espacement des mots (normal, inherit, nombre en px ou en em)  Word-wrap pour gérer le comportement d'un mot dépassant le cadre (normal, break-word) Letter-spacing Gestion de l'espacement des lettres en em ou px. @font-face Gestion des polices importées. Voir :  http://css.mammouthland.net/css3/font-face.php (didactitiel)  http://www.fontsquirrel.com/fontface/generator (générateur de @fontface) Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 4
  • 5. CSS Background Gestion des fonds pour les blocs. Voir http://www.alsacreations.com/tuto/lire/808-arriere-plans-css3-background.html  Background-color définit une couleur d'arrière-plan pour un bloc.  Background-image définit une image en arrière plan. Elle sera appelé avec une url().  Background-position définit une position de l'image (left, center, right, bottom, top ou valeurs en %, em ou px)  Background-repeat définit si une image se répète si le cadre est plus grand (repeat, no-repeat)  Background-attachment définit si l'image est fixe ou non (fixed ou scroll)  Background-size définit la taille de l'image en arrière plan (taille en valeurs %, em ou px, cover pour adapter) – voir les préfixes pour utiliser cette propriété sur tous les navigateurs  Background-clip définit les limites de l'image à l'intérieur du bloc (content-box, padding-box ou border- box) – voir les préfixes pour utiliser cette propriété sur tous les navigateurs  Background-origin définit le point d'origine de l'image (content-box, padding-box ou border-box) – voir les préfixes pour utiliser cette propriété sur tous les navigateurs Width et height Pour donner une largeur et une hauteur aux éléments blocs. Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 5
  • 6. CSS Display Gestion de l'affichage d'un élément.  None pour cacher un élément  Inline définit un élément en ligne  Block définit un élément en bloc  Inline-block définit un élément en ligne avec certains comportement d'un bloc  List-item définit des blocs sous forme de liste Voir http://www.zonecss.fr/style_css/feuille_css_display.html et http://www.alsacreations.com/actu/lire/111-display-vous-connaissez.html Border Gestion des bordures pour des blocs.  Border-width définit la largeur de la bordure (généralement en px)  Border-style définit le style de la bordure (dashed, dotted,double, groove, hidden, inset, outset, none, ridge ou solid)  Border-color définit la couleur  Border-bottom, border-top, border-left et border-right définissent un côté spécifique (il est alors possible de définir border-top-color etc.) Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 6
  • 7. CSS Padding Gestion des marges intérieures à un bloc. Il est possible de s'adresser à une marge spécifique (padding-right par exemple) ou à toutes (padding: 10px; toutes les marges sont à 10px – padding: 10px 0; les marges en haut et en bas sont à 10px – padding: top right bottom left; pour séparer les 4 valeurs de la marge). Margin Gestion des marges extérieures d'un bloc. Mêmes propriétés que pour padding. Pour centrer un élément bloc vous pouvez utiliser "margin: 0 auto;". Vertical-align Gestion de l'alignement d'un élément en ligne avec un autre élément en ligne. Ce n'est pas fait pour aligner vertcalement un élément en ligne dans un bloc (voir line-height). Il est aussi possible de l'utiliser dans des tableaux (<table> ou élément en "display: table-cell;") Visibility Gestion de la visibilité d'un bloc sans le faire disparaître du flux à la différence de "display: none;". Exemple : visibility: hidden; (voir aussi collapse) List Gestion des listes ul ol.  List-style-image permet d'utiliser une image pour remplacer les puces par défaut en appelant une url()  List-style-type définit le type de puce (decimal, decimal-leading-zero, lower-roman, upper-roman, lower- alpha, upper-alpha, disc, circle, square, none, inherit, etc.)  List-style-position définit l'alignement de la puce (inside, outside ou inherit) Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 7
  • 8. CSS Color Gestion de la couleur des textes. Les couleurs dans le web sont définies en RGB (rouge, vert et bleu). La traduction se fait soit en rgb(x, y, z) soit en #xyz. Voir : http://stylescss.free.fr/couleurs.php Il existe aussi le hsl(x, y%, z%) : http://www.w3.org/TR/css3-color/#hsl-color Float Gestion du flottement des éléments blocs (none, left, right). Attention, un élément en float sort de flux, il est donc possible d'avoir des alignements d'éléments qui déconstruisent la page. Clear Gestion des éléments blocs pour retrouver le flux.  None  Left permet de se mettre en-dessous d'un élément si celui-ci est à gauche  Right permet de se mettre en-dessous d'un élément si celui-ci est à droite  Both permet de se mettre en-dessous d'un élément que celui-ci soit à droite ou à gauche Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 8
  • 9. CSS Les positions Les positions sont un des éléments les plus importants en CSS. Vous avez bien entendu la possibilité de jouer avec le flottement des blocs mais les positions vous permettront d'aller plus loin ou de le compléter. Voir http://openweb.eu.org/articles/initiation_absolue/  Position: static, c'est la valeur par défaut  Position: relative positionne l'élément par rapport à l'élément précédent  Position: fixed positionne l'élément par rapport aux bords de la page (indifférent au scroll)  Position: absolute positionne l'élément par rapport aux bords de la page ou un élément parent positionné et reste sensible au défilement (scroll) – pour centrer un bloc dans un autre il suffira de mettre un "left: 50%;" et une margin-left d'une valeur de moitié celle de la largeur du bloc à centrer. Pour l'aligement vertical, utilisez top et margin-top suivant le même principe. Vous pourrez placer les éléments positionnés avec les propriétés left, right, top et bottom. Il est important de comprendre ce qu'est la notion de flux dans un document. Les éléments positionnés en absolute ou en fixed sortent du flux, leur place initiale n'est plus prise en compte. Les éléments en relative garde l'emplacement initial visible même s'ils sont décalés. Z-index Dans les situations de positionnement, il peut y avoir des chevauchements ou superpositions de blocs. Avec z-index vous aller pouvoir définir un ordre de profondeur. Un "z-index: 1000;" passera devant un "z-index: 800;". Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 9
  • 10. Les sprites CSS Gagner du temps dans le chargement des images Avec les sprites CSS, vous allez pouvoir charger une image composée de plusieurs images et n'afficher que la partie intéressante en fonction de la page ou de la position dans la page. L'avantage est de ne charger qu'une seule image !  http://www.alsacreations.com/tuto/lire/1068-sprites-css-background-position.html  Exemples http://blog.voyelle.me/dewplayer/sprites.html #sprites{ display: block; width: 108px; height: 229px; background: url(images/sprites.png) -1030px -958px no-repeat; } #sprites:hover, #sprites:active, #sprites:focus{ background-position: -1030px -37px; } #sprites span { display: inline-block; text-indent: -5000px; } Dimension de l'image utilisée : 1286px par 1778px Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 10
  • 11. Les propriétés CSS3 déjà en place Les propriétés les plus connues Border-radius Cette fonction arrondit les coins. La ou les données en pixel définissent le rayon. {border-radius: 10px;} les quatre coins seront arrondis avec un rayon de 10px {border-radius: 10px 0 5px 4px;} le coin en haut à gauche aura un arrondi de 10px, celui de droite n'en aura pas, celui en bas à droite un arrondi de 5px et le dernier en bas à gauche de 4px Text-shadow et box-shadow Cette fonction ajoute une ombre à un texte ou un élément. {text-shadow: 1px 1px 5px #333} Les deux premières options définissent la direction horizontale et verticale (les valeurs peuvent être négatives), la troisième la quantité de flou (0px correspond à l'absence de flou) et la dernière la couleur. Attention text-shadow n'est pas supporté par IE9 et ses prédécesseurs. Box-sizing Cette fonction permet de forcer la largeur d'un cadre malgré des bordures ou des marges. {box-sizing: border-box;} Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 11
  • 12. Les propriétés déjà en place Les arrière-plans multiples Vous avez la possibilité de placer plusieurs images en arrière-plan dans un background ! Ça allègera le code. Vous avez 9 positions possible avec top, center, bottom, left et right en associant avec no-repeat. On retrouve les options proposées pour le background comme repeat- x, repeat-y… {background: url(covers/0.jpg) no-repeat top left, url(covers/1.jpg) no-repeat top right, url(covers/2.jpg) no-repeat bottom right, url(covers/3.jpg) no-repeat bottom left, url(mobile/logo.gif) center left repeat-x, url(mobile/logo.gif) center top repeat-y;} Opacity Cette fonction assez simple d'utilisation ne s'applique qu'aux éléments, il n'est pas possible de jouer sur l'opacité d'un texte. Pour rendre un texte translucide, il faudra changer l'opacité du bloc le contenant. Les valeurs vont de 0 (invisible) à 1 (opaque). {opacity: .5;} hyphens: auto; Pour générer des césures plus travaillées qu’avec word-wrap. Voir http://www.alsacreations.com/tuto/lire/1038-gerer-debordement-contenu-et-cesures- css.html#hyphens Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 12
  • 13. Les propriétés déjà en place RGBA Vous avez comme option pour les couleurs un modèle qui permet de reprendre les références RGB d'une couleur et de lui ajouter une opacité (sur le même principe qu'opacity de 0 à 1). {color: rgba(0, 0, 0, .5);} cela correspond à du noir avec une opacité à 50% Il est aussi possible de n'utiliser que rgb(). Certaines propriétés ne sont pas complètement implantées. Vous devrez utiliser les préfixes pour chacun des navigateurs. Navigateurs Préfixes Safari (webkit) -webkit- Firefox (mozilla) -moz- Opéra -o- Konqueror -khtml- IE (microsoft) -ms- Chrome -chrome- ou –webkit- Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 13
  • 14. Les propriétés déjà en place HSLA Il existe une autre syntaxe pour générer une couleur et de la transparence. HSL signifie Teinte(Hue), Saturation et Luminosité(Lightness). La première valeur doit être un nombre entre 0 et 359 et il détermine la teinte. Les deux autres valeurs sont en pourcentage %. Voir : http://www.w3.org/TR/css3-color/#hsl-examples Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 14
  • 15. Les propriétés déjà en place Column Avec les préfixes, vous pourrez afficher des colonnes dans un bloc. {-webkit-column-width: 20em;} définit une largeur pour les colonnes (ça permet d'être flexible et responsive) {-webkit-column-gap: 1em;} définit une marge entre les colonnes {-webkit-column-rule: 1px solid #333;} fait apparaître une séparation de 1px {-moz-column-count: 3;} ou {-moz-columns: 2;} permet d'imposer un nombre précis de colonnes Voir plus précisément : http://www.w3.org/TR/css3-multicol/ Linear-gradient et radial-gradient Comme la précédente propriété, il vous faudra utiliser des préfixes pour qu'elles fonctionnent. Ces fonctions a pour but de créer un dégradé sur un ligne ou en cercle. Information importante : elles sont une option de background-image. {background-image: -moz-linear-gradient(left top, #d60f0f 0%, #ffdd00 100%);} {background-image: -moz-radial-gradient(50% 50%, ellipse closest-side, #53B8EB, #B8FB97 50%);} Pour Safari et Chrome nous aurons –webkit-gradient (voir page suivante). Voir plus précisément : http://www.html5-css3.fr/css3/degrades-couleurs-css3-gradient Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 15
  • 16. Les propriétés déjà en place Comme pour le moment les navigateurs interprètent assez mal les dégradés, Il existe des outils en ligne qui permettent de générer les dégradés, il ne reste alors plus qu'à copier le code : http://www.westciv.com/tools/gradients/index-moz.html L'écriture du CSS est différente que celle présentée avant mais fonctionne. Exemple : -webkit-gradient(linear, 0% 75%, 0% 19%, from(#ABABAB), to(#C9C9C9)) -moz-linear-gradient(19% 75% 90deg,#ABABAB, #C9C9C9) Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 16
  • 17. Les propriétés déjà en place La fonction calc() Introduite avec CSS3, la fonction calc() permet de faire de simples calculs sur les tailles dans votre fichier CSS, qui sont parfois incalculables d’avance lorsque l’on mélange pourcentages et pixels. { width: calc(100% - 100px); } Source : http://maxime.sh/2013/02/css-calc/ Compatibilités des navigateurs : http://caniuse.com/calc Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 17
  • 18. Les propriétés déjà en place Propriété Navigateurs Border-radius Safari 3+, Chrome 3+, Firefoc 1+, Opéra 10.5+, IE 9+ Text-shadow Safari 1,1+, Chrome 2+, Firefox 3.1+, Opéra 9.5+ Box-shadow Safari 3+, Chrome 3+, Firefox 3.5+, Opéra 10.5+, IE 9+ Arrière-plan multiples pour les images Safari 1.3+, Chrome 2+, Firefox 3.6+, Opéra 10.5+, IE 9+ Opacity Safari 1.2+, Chrome 1+, Firefox 1.5+, Opéra 9+, IE 9+ RGBA Safari 3.2+, Chrome 3+, Firefox 3+, Opéra 10+, IE 9+ Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 18
  • 19. Les sélecteurs et les pseudo-éléments Les pseudo-éléments sont un des aspects les plus intéressants du CSS et sont en place depuis longtemps pour certaines fonctions. Avant de voir les tableaux des sélecteurs d'attribut et de tous les pseudo-éléments, voyons à partir d'un exemple, les possibilités offertes. Pour compléter, vous trouveres des informations sur ces sites : http://www.yoyodesign.org/doc/w3c/css2/selector.html http://www.tomsyweb.com/component/content/article/48-css/101-les-30-selecteurs-css-a- connaître Que signifie en css cette ligne de code : a:not([rel*="lightbox"]){text-transform: uppercase;} ? Pour commencer, nous nous adressons ici au lien (<a…>). Cependant, avec :not(), nous excluons tous les liens qui auraient le terme "lightbox" dans les informations données à l'attribut rel (ex "lightbox effet", "effet-lightbox" ou "effetlightbox3"). Si nous avions mis rel="lightbox", nous aurions ciblé uniquement les liens avec l'information exacte "lightbox". Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 19
  • 20. Les sélecteurs et les pseudo-éléments Sélecteurs d'attribut Fonctions [rel] Cible les éléments qui contiennent un attribut "rel" qu'importe sa valeur [class="effet"] ou [class=effet] Cible les éléments qui contiennent une classe dont la valeur exacte est "effet" [id|="header"] Cible les éléments qui contiennet une ID dont les valeurs séparées par des tirets "-" commenceraient par header [rel~=mavaleur] Cible les éléments qui contiennent un attribut rel contenant "mavaleur" dans une liste de valeurs séparées par des espaces [href^=http] Cible les éléments qui ont un attribut "href" qui comment par "http" – ici tous les liens et non les mails par exemple [src$=.png] Cible les éléments dont l'attribut "src" se termine par [href$=.pdf] ".png" Pour cibler toutes les images, il pourrait être ajouter un attribut "data-filetype=image" [rel*=lightbox] Cible un élément qui contient l'atrribut "rel" dont les valeurs comportes au moins le terme "lightbox" (avec ou sans séparateur par opposition à ~) Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 20
  • 21. Les pseudo-éléments Sélecteurs CSS Fonctions * Cible tous les éléments E Cible uniquement les élément E html:root ou :root Cible tous les éléments qui sont à la racine html E:nth-child(n) Cible les éléments numéro n par rapports à leurs frères dans un élément parent (pour cibler une ligne sur deux, vous utiliserez even pour les lignes paires et odd impaires) E:nth-last-child(n) Idem mais en commençant par la fin E:nth-of-type(n) et :nth-last-of-type(n) Cibler dans des listes d'éléments frères le numéro "n" en partant du début ou de la fin de la liste E:first-child et E:last-child Cibler le premier ou le dernier élément enfant d'un parent E:first-of-type et E:last-of-type Identique à :nth-of-type(1) et :nth-last-of-type(1) E:only-child Cibler les éléments enfants uniques de leur parent E:only-of-type Cibler tous les éléments qui n'ont pas de frères E:empty Cibler les éléments vides E:link Cibler les éléments liens non visités Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 21
  • 22. Les pseudo-éléments Sélecteurs CSS Fonctions E:visited Cibler les éléments (liens) qui ont été visités E:active Cibler les éléments cliqués E:hover Cibler un élément survolé par la souris (limite sous IE6 aux éléments <a>) E:focus http://www.web-petit.com/css-focus E:target Cibler un élément comme une ancre qui serait appelée lors d'un click E:lang(fr) Cibler un élément dont l'attribut langue est "fr" E:enabled et E:disabled Cibler les éléments actifs ou inactifs par exemple dans des formulaires (balises input, select…) E:checked Cibler les éléments "input" de type checkbox lorsque qu'ils sélectionnés E::first-line Cibler la première ligne d'un élément E::first-letter Cibler la première lettre d'un élément E::before Cibler des éléments et ajouter du contenu avant celui-ci Pour récupérer des contenus d'attributs, on peut faire ainsi : {content: attr(href);} pour afficher le l'url du lien par exemple. (image, texte…) et lui appliquer des styles E::after Idem mais en fin Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 22
  • 23. Les pseudo-éléments Sélecteurs CSS Fonctions E#monId et E.maclasse Cibler les éléments qui ont une ID (rappel : les ID sont uniques) ou une classe E:not(selecteur) Cibler les éléments sauf le sélecteur indiqué EF Cibler les éléments F dont le parent sont les éléments E E>F Cibler les éléments F descendants directs de E E+F Cibler le premier élément F qui suit immédiatement les éléments E E~F Cibler les éléments F qui suivent les éléments E (moins strict que E + F) Vous avez maintenant la possibilité non seulement d'utiliser ces sélecteurs mais de les associer les uns aux autres pour être le plus précis dans la mise en place de vos styles. Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 23
  • 24. Et aussi Les transitions Pour créer des transitions plus douces, il existe les fonctions "transition". Par exemple, vous souhaitez créer une transition de couleur via un :hover. Les préfixes sont indispensables pour le moment. À partir d'un lien : Les fonctions du timing : <a href="#" class="transition">Ma transition</a>  Ease Nous aurions en CSS :  Linear  Ease-in a.transition{  Ease-out padding: 5px 10px;  Ease-in-out  Cubic-bezier background: purple; -webkit-transition-property: background; (on définit la propriété sur laquelle nous voulons faire une transition) -webkit-transition-duration: 1s; (on définit une durée en seconde) -webkit-transition-timing-function: ease; (on définit une courbe de vitesse) …} ou {-webkit-transition: background 1s ease;} a.transition:hover {background: yellow;} (ne pas oublier de définir aussi la couleur du :hover) D'autres options sont possibles :  Transition-delay pour définir un temps entre ce qui déclenche la transition et la transition (en seconde)  Sur plusieurs propriétés : {transition: background 1s ease, color 1s linear;}  Sur toutes les propriétés : {transition: all 1.5s ease;} Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 24
  • 25. Et aussi Les transformations De même que pour les transitions, cette fonction exige les préfixes. Elle se présente sous cette forme : transform: (vos options); Les options possibles :  Modifier la taille : transform: scale(x); la valeur x représente le zoom que vous voulez effectuer, la valeur 1 étant la valeur sans modification  Modifier l'angle : transform: rotate(xdeg); la valeur x représente les degrés et cette valeur peut être négative (ex: -15deg)  Placer l'image : transform-origin: bottom top left right center…; par défaut vous aurez center center pour l'alignement vertical et horisontal  Déformer l'image : transform: skew(-10deg, 30deg);  Déplacer l'image : transform: transalte(xpx, ypx); Pour créer une animation comme faire tourner un soleil, il faudra ajouter du javascript ou du jquery. Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 25
  • 26. Et aussi Le parallaxe Le principe du parallaxe est de déplacer des images en fonction du défilement vertical et/ou horizontal, ou du redimensionnement de la page. Exemple de parallaxe dans un redimensionnement : http://silverbackapp.com/ Pour que cela fonctionne, il faut que vos images soit en transparence (gif ou png) ou en opacité. Vous pouvez suivre les didacticiels suivant pour des effets plus complexes :  http://www.creativejuiz.fr/blog/tutoriels/css3-effet-parallaxe-sans-javascript  http://www.alsacreations.com/astuce/lire/1417-effet-parallaxe.html avec jQuery Pour les effets de redimensionnent, c'est assez simple à mettre en place. Vous placez vos 3 images de fond dans le <body>. background: url(images/body2.png) repeat-x scroll 70% 0, url(images/body3.png) repeat-x scroll 300% 0, url(images/body1.gif) repeat-x scroll -10% 0; La dernière image doit être celle qui se place le plus en arrière (celle qui peut être opaque par exemple). Ensuite, vous devez informer quelques options pour placer les éléments en haut de page, pour faire une répétition horizontale avec repeat-x, puis un scroll pour que celles-ci ne suivent pas le déplacement verticale de la fenêtre (sinon fixed pour imposer la présence des images en haut de page. Les valeurs en % vont agir sur les images lorsque la fenêtre est redimensionner en les animant à des vitesses différentes. Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 26
  • 27. Quelques liens  Tutoriels et démonstrations HTML5 et CSS3 http://www.html5-css3.fr/  http://www.yoyodesign.org/doc/w3c/css2/selector.html  http://www.tomsyweb.com/component/content/article/48-css/101-les-30-selecteurs-css-a- connaitre  http://css.4design.tl/css-selecteur-frere-adjacent  http://www.vanseodesign.com/css/combinators-pseudo-classes/  http://blog.voyelle.me/langages/petit-tour-des-fonctions-en-css3  http://www.webdesignweb.fr/web/css-3-transform-rotation-et-echelle-766  http://thinkvitamin.com/design/how-to-recreate-silverbacks-parallax-effect/ Nos exemples  Sprites http://blog.voyelle.me/dewplayer/sprites.html  HTML5 et CSS3 http://blog.voyelle.me/dewplayer/html5css3.html  Transitions http://blog.voyelle.me/dewplayer/transitions.html  Parallaxe http://blog.voyelle.me/dewplayer/parallaxe.html et http://blog.voyelle.me/dewplayer/parallaxe2.html Voyelle – 40 rue du Bignon, forum de la rocade, bâtiment Oméga à Chantepie - contact@voyelle.fr 27