Pour rendre un élément, un bloc, un fond transparent, on fait appel à plusieurs propriétés. En effet, afin qui l'affichage se passe bien dans Internet Explorer, dans mozilla et Firefox, voici comment procéder pour obtenir une transparence de 50%:
Ce qui donne :
-moz-opacity:0.5; opacity: 0.5; filter:alpha(opacity=50);
Les CSS3 permettent de réaliser des bords arrondis comme ceux-ci :
border-radius:10px; -moz-border-radius:10px; -webkit-border-radius:10px;
L'ombre portée, c'est possible avec CSS3. Par exemple sur une image :
box-shadow: 0px 2px 5px #1c1a19; -moz-box-shadow: 0px 2px 5px #1c1a19; -webkit-box-shadow: 0px 2px 5px #1c1a19;
La première valeur indique le décalage horizontal vers la droite (ici 0px)
La deuxième valeur indique le décalage vertical vers le bas (ici 2px)
La troisième valeur précise la force du dégradé (ici 5px)
Enfin, la couleur est écrite en dernier (#1C1A19)
CSS3 permet de réaliser des texte ombrés :
text-shadow: 2px 2px 4px #999;
Les quatre valeurs correspondent à :
Les dégradés peuvent se dessiner de manière radiale ou linéaire (en ligne): radial-gradient ou linear-gradient.
Les valeurs, comme toujours pour les CSS3, doivent être déclarées pour les différents navigateurs.
Pour bien réussir, pensez à bien respecter ces différentes étapes :
La syntaxe de ce dégradé est la suivante : background-image: linear-gradient(direction, couleur-début, couleur-fin);
Voici un exemple de dégradé linéaire, jaune (#f8fc8b) à bleu (#2b9ad3)avec les valeurs pour tous les navigateurs qui supportent cette propriété :
.degrade { background-image: -webkit-linear-gradient(#f8fc8b, #2b9ad3); /* Chrome, Safari */ background-image: -o-linear-gradient(#f8fc8b, #2b9ad3); /* Opera */ background-image: -moz-linear-gradient(#f8fc8b, #2b9ad3); /* Firefox */ background-image: linear-gradient(#f8fc8b, #2b9ad3); /* Norme W3C */ }
Ce lien permet d'avoir des précisions sur cette propriété : http://www.w3schools.com/css/css3_gradients.asp
La syntaxe de ce dégradé est la suivante : background-image: radial-gradient(centre, forme taille, couleur de début, ..., couleur de fin);
Voici un exemple de dégradéradial, gris pâle(#e6e6e6) à bleu (#406d84)avec les valeurs pour tous les navigateurs qui supportent cette propriété :
.degrade { background-image: -webkit-radial-gradient(#e6e6e6,#406d84); /* Safari */
background-image: -o-radial-gradient(#e6e6e6, #406d84); /* Opera */
background-image: -moz-radial-gradient(#e6e6e6, #406d84); /* Firefox */
background-image: radial-gradient(#e6e6e6, #406d84); /* Norme W3C */ }
Voici la méthode à suivre :
div { background-color: greenyellow; background-image: linear-gradient( white, rgba(255,255,255,0)); background-image: -moz-linear-gradient( white, rgba(255,255,255,0)); background-image: -o-linear-gradient( white, rgba(255,255,255,0)); background-image: -webkit-linear-gradient( white, rgba(255,255,255,0)); transition: background-color linear 2s; } div:hover{background-color: deepskyblue; }
Les pseudo-classes permettent de préciser un style appliqué à certaines balises en définissant une réaction à un événement ou à la position de la balise par rapport à d'autres balises.
Le nom des pseudo-classes est prédéfini, on ne peut pas créer ses propres nom de pseudo-classes.
Attention de ne pas confondre les pseudo-class et les pseudo-element.
Les pseudo-class ciblent un élément sans ajouter une class. C'est le cas de :first-child
Les pseudo-class se rédigent avec un seul : Voici la syntaxe :
selector:pseudo-class {propriété : valeur;}
ul li:first-child{ background-color:#4b94f7;}
Le style colore le premier élément en bleu foncé
ul li:last-child{ background-color:#f5ad21;}
Le style colore le dernier élément en jaune
Au survol, l'élément se modifie
a:hover{ color:#fff;}
La pseudo-class :link agit sur tous les liens non visités
La pseudo-class :visited agit sur tous les liens visités
La pseudo-class :active agit sur tous les liens actifs
Ma liste n'est pas exhaustive.
Les pseudo éléments sont employés pour ajouter des effets particuliers à certains sélecteurs. Un pseudo-element est un élément que l’on n’aurait pas pu cibler autrement qu’en rajoutant une balise assortie d'une nouvelle class.
Exemple ::first-letter, on aurait dû ajouter un élément span sur la première lettre de l’élément ciblé.
Voici la syntaxe :
selector::pseudo-element {propriété : valeur;}
Pour créer une lettrine à chaque nouveau paragraphe, on emploie ce pseudo-élément.
Voici un exemple :
p::first-letter { font-size:200%; color:#aa2d18;}
On peut styliser la première ligne d'un paragraphe, en petite capitale par exemple.
p::first-line{font-variant:small-caps;color:#70e268;}
Il existe deux autres pseudo-element ::after et ::before. Ils permettent d'insérer par exemple des images en début ou en fin de paragraphe.