issue88:command_conquer
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
issue88:command_conquer [2015/01/15 22:52] – [1] fredphil91 | issue88:command_conquer [2015/01/19 17:06] (Version actuelle) – [8] auntiee | ||
---|---|---|---|
Ligne 7: | Ligne 7: | ||
SASS stands for Syntactically Awesome Style-Sheets, | SASS stands for Syntactically Awesome Style-Sheets, | ||
- | L' | + | L' |
- | Qu' | + | Qu' |
- | SASS signifie « Syntactically Awesome Style Sheets » [Ndt : feuilles de style syntaxiquement impressionnantes], | + | SASS signifie « Syntactically Awesome Style Sheets » [Ndt : feuilles de style syntaxiquement impressionnantes], |
====== 2 ====== | ====== 2 ====== | ||
Ligne 28: | Ligne 28: | ||
ul.menu { li { a{ text-decoration: | ul.menu { li { a{ text-decoration: | ||
+ | |||
+ | Imbrication | ||
+ | |||
+ | Imaginez que vous avez deux types de liens sur votre site Web - un style « par défaut » qui devrait être bleu et souligné (les valeurs standard), mais vous avez aussi des liens dans votre menu pour lesquels vous souhaitez supprimer les décorations et ajuster le paramètre :hover pour assombrir la couleur du bouton. En CSS normal, cela pourrait ressembler à ceci : | ||
+ | |||
+ | ul.menu li a { text-decoration: | ||
+ | |||
+ | ul.menu li a:hover { background-color: | ||
+ | |||
+ | Avec SASS, vous pouvez faire ce qui suit : | ||
+ | |||
+ | $bg-color: #0000FF; | ||
+ | |||
+ | ul.menu { li { a{ text-decoration: | ||
====== 3 ====== | ====== 3 ====== | ||
Ligne 37: | Ligne 51: | ||
• Using a SASS function called darken, which calculates the value for a darker version of the supplied color. SASS offers many functions, such as the ability to create color values based on hue, saturation and lightness (hsl). | • Using a SASS function called darken, which calculates the value for a darker version of the supplied color. SASS offers many functions, such as the ability to create color values based on hue, saturation and lightness (hsl). | ||
• &:hover - the ampersand essentially places the following text directly behind the parent when nesting. For example ul { .menu{}} would result in ul .menu in normal CSS (in other words, find an element with the class menu after a ul element), and ul { & | • &:hover - the ampersand essentially places the following text directly behind the parent when nesting. For example ul { .menu{}} would result in ul .menu in normal CSS (in other words, find an element with the class menu after a ul element), and ul { & | ||
+ | |||
+ | Cela semble un peu moins lisible quand on l' | ||
+ | |||
+ | Quelques autres choses que je fais dans cet exemple : | ||
+ | • Définir une variable (c' | ||
+ | • Utiliser une fonction SASS appelée darken, qui calcule la valeur pour une version plus sombre de la couleur fournie. SASS propose de nombreuses fonctions, offrant la possibilité de créer des valeurs de couleur en fonction de la teinte, la saturation et la luminosité (HSL). | ||
+ | • &:hover - l' | ||
====== 4 ====== | ====== 4 ====== | ||
Ligne 44: | Ligne 65: | ||
Now, this does look a bit like gibberish. However, the second background: line can safely be ignored if you don’t want to use an SVG colored background in IE9. Everything else is commented to indicate which version of the browser it supports, and the colors supplied in the parameters of the mixin ensure that every gradient looks the same. This is the defined mixin - as such, you need to type it only once. I typically put variables, functions and mixins at the top of the SASS file, but it doesn’t really matter.** | Now, this does look a bit like gibberish. However, the second background: line can safely be ignored if you don’t want to use an SVG colored background in IE9. Everything else is commented to indicate which version of the browser it supports, and the colors supplied in the parameters of the mixin ensure that every gradient looks the same. This is the defined mixin - as such, you need to type it only once. I typically put variables, functions and mixins at the top of the SASS file, but it doesn’t really matter.** | ||
+ | |||
+ | Mixins | ||
+ | |||
+ | Les mixins sont essentiellement des macros, ou des fonctions, qui ne font aucun calcul, mais transforment plutôt une ligne SASS en plusieurs lignes CSS. Un bel exemple est l' | ||
+ | |||
+ | Oui, cela ressemble à du charabia. Cependant, le deuxième background: line peut être ignoré si vous ne voulez pas utiliser un fond de couleur SVG dans IE9. Tout le reste est commenté pour indiquer quelle version du navigateur cela supporte, et les couleurs fournies dans les paramètres du mixin assurent que chaque gradient se ressemble. C'est le mixin défini - ainsi, vous n'avez à le saisir qu'une seule fois. Je place généralement les variables, fonctions et mixins en haut du fichier SASS, mais cela n'a pas vraiment d' | ||
====== 5 ====== | ====== 5 ====== | ||
Ligne 61: | Ligne 88: | ||
And to use it in your SASS: name($param1, | And to use it in your SASS: name($param1, | ||
+ | |||
+ | Pour effectivement utiliser le mixin de gradient (pour créer un gradient en CSS), il vous suffit de taper : @include gradient($couleur1, | ||
+ | |||
+ | Exemple : | ||
+ | @include gradient(# | ||
+ | |||
+ | donnera la CSS présentée à droite. | ||
+ | |||
+ | Fonctions | ||
+ | |||
+ | Les fonctions sont similaires aux mixins. Définissez votre fonction avec : | ||
+ | |||
+ | @function nom($param1, | ||
+ | |||
+ | Et pour l' | ||
====== 6 ====== | ====== 6 ====== | ||
Ligne 82: | Ligne 124: | ||
color: red; | color: red; | ||
}** | }** | ||
+ | |||
+ | Mathématiques | ||
+ | |||
+ | SASS ajoute également des options pour utiliser les opérateurs mathématiques (tels que *, +, /, -). Vous devez toujours définir les unités de vos nombres, ou bien utiliser une fonction pour vous assurer que SASS sait quelle unité utiliser. Sinon, cela se traduira par un CSS valide (par exemple width: 150, au lieu de width: 150px). | ||
+ | |||
+ | Héritage | ||
+ | |||
+ | Cela vous permet d' | ||
+ | |||
+ | .message { | ||
+ | border: 1px solid #ccc; | ||
+ | padding: 10px; | ||
+ | color: #333; | ||
+ | } | ||
+ | |||
+ | .error { | ||
+ | @extend .message; | ||
+ | color: red; | ||
+ | } | ||
====== 7 ====== | ====== 7 ====== | ||
Ligne 94: | Ligne 155: | ||
_variables.scss - to contain your variables | _variables.scss - to contain your variables | ||
app.scss - the main file, that only contains imports for each of the other files listed.** | app.scss - the main file, that only contains imports for each of the other files listed.** | ||
+ | |||
+ | Importation | ||
+ | |||
+ | Enfin, SASS vous permet également de créer des fichiers séparés et de les importer dans un fichier principal. Quelque chose comme ceci : | ||
+ | |||
+ | _mobile.scss - pour les tailles d' | ||
+ | _desktop.scss - pour des écrans plus grands ; | ||
+ | _mixins.scss - pour contenir tous vos mixins ; | ||
+ | _variables.scss - pour contenir vos variables ; | ||
+ | app.scss - le fichier principal, qui ne contient que les importations de chacun des autres fichiers répertoriés. | ||
====== 8 ====== | ====== 8 ====== | ||
Ligne 105: | Ligne 176: | ||
http:// | http:// | ||
@** | @** | ||
+ | |||
+ | Si vous recherchez un environnement SASS compatible avec diverses fonctionnalités utiles (par exemple une grille, un accordéon, un carrousel, etc.), j'ai utilisé l' | ||
+ | |||
+ | Si quelqu' | ||
+ | |||
+ | Pour aller plus loin : | ||
+ | |||
+ | http:// | ||
issue88/command_conquer.1421358741.txt.gz · Dernière modification : 2015/01/15 22:52 de fredphil91