notes_sur_sass-guidelines
Differences
This shows you the differences between two versions of the page.
notes_sur_sass-guidelines [2016/08/10 18:46] – created leo | notes_sur_sass-guidelines [2016/08/12 15:45] (current) – leo | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ===== règles ===== | ||
+ | |||
^Domaine^Règle| | ^Domaine^Règle| | ||
^Encodage|// | ^Encodage|// | ||
Line 15: | Line 17: | ||
^ listes| listes toujours entre parenthèses | | ^ listes| listes toujours entre parenthèses | | ||
^ listes| utilisez append et prepend (l'API prévue quoi) pour ajouter des éléments à une liste | | ^ listes| utilisez append et prepend (l'API prévue quoi) pour ajouter des éléments à une liste | | ||
- | ^ | | | + | ^ maps | chaque entrée sur sa propre ligne | |
- | ^ | | | + | ^ ensemble de règles| variables locales au début de l' |
- | ^ | | | + | ^ @include| @includes sans @content avant les déclarations, |
- | ^ | | | + | ^ imbrication| éviter, sauf pour les pseudo-classes avec le sélecteur courant & | |
- | ^ | | | + | ^ constantes| en majuscules + snake case COMME_CECITTE |
+ | ^ namespace| pour SASS < 4.0 utiliser un préfixe court pour code distribué| | ||
+ | ^ documentation| utiliser SassDoc | | ||
+ | ^ composants| responsabilité unique, réutilisables, | ||
+ | ^ | éviter de référencer un composant dans un autre| | ||
+ | ^ architecture | le fichier principal main.scss devrait être le seul à ne pas commencer par un _, et ne devrait commencer que par des @import et des commentaires. | | ||
+ | ^ | l' | ||
+ | ^ | pour fichier principal : un fichier par @import / un @import par ligne / pas de saut de ligne entre 2 imports provenant du même dossier / un saut de ligne après le dernier import d’un dossier / les extensions fichiers et les underscores initiaux doivent être omis| | ||
+ | ^ Fichier de la honte | ranger toutes les déclarations CSS, les hacks et tout ce dont on n’est pas vraiment fier dans un fichier de la honte, importé après tous les autres fichiers, à la toute fin de la feuille de style. | | ||
+ | ^ points de rupture | les nommer mais pas en fonction de terminaux mais d' | ||
+ | ^ | media-queries-dans-les-sélecteurs | | ||
+ | ^ variables | utiliser le flag !default pour les variables de conf destinées à être écrasées - elles ne redéfiniront pas une variable existante à l' | ||
+ | ^ @extend | n'est pas forcément préconisée | | ||
+ | ^ | n' | ||
+ | ^ | étendre un placeholder aussi peu de fois que possible| | ||
+ | ^ | n' | ||
+ | ^ @mixin | si une mixin dépasse 20 lignes, elle doit probablement être divisée ou réécrite | | ||
+ | ^ | utiliser pour regrouper des déclarations qui apparaissent souvent en semble pour une bonne raison et pas par hasard | | ||
+ | ^ | ne pas inclure les parenthèses pour une mixin sans arguments| | ||
+ | ^ | utiliser une arglist plutôt qune liste d' | ||
+ | ^préfixes | utiliser Autoprefixer | | ||
+ | ^ linting| utiliser SCSS-lint | | ||
+ | |||
+ | Notes : | ||
+ | |||
+ | approches des media-queries en SASS : | ||
+ | |||
+ | - https:// | ||
+ | - https:// | ||
+ | |||
+ | ===== architecture 7-1 ====== | ||
+ | |||
+ | ^dossier^usage^ | ||
+ | | abstractions | outils et helpers sass, ne devrait jamais retourner la moindre ligne de CSS| | ||
+ | | vendor | Tout le CSS externe, de bibliothèques ou framework externes | | ||
+ | | vendor-extensions | votre css qui overriderait du css vendor (plutôt que de modifier directement le css vendor ce qui est déconseillé | | ||
+ | | base | le code standard (boilerplate) du projet + reset + styles standards pour élément html les plus employés| | ||
+ | | layout | ce qui concerne la mise en page, et les feuilles de styles pour éléments principaux (footer, header, navigation, sidebar, etc.)| | ||
+ | | composants | plus petits composants | | ||
+ | | pages | styles spécifiques à certaines pages | | ||
+ | | thèmes | si plusieurs thèmes dans un même site | | ||
+ | |||
+ | |||
+ | |||
+ | ==== visualisation ==== | ||
+ | |||
+ | < | ||
+ | sass/ | ||
+ | | | ||
+ | |– abstracts/ | ||
+ | | |– _variables.scss | ||
+ | | |– _functions.scss | ||
+ | | |– _mixins.scss | ||
+ | | |– _placeholders.scss # Sass Placeholders | ||
+ | | | ||
+ | |– base/ | ||
+ | | |– _reset.scss | ||
+ | | |– _typography.scss | ||
+ | | | ||
+ | | | ||
+ | |– components/ | ||
+ | | |– _buttons.scss | ||
+ | | |– _carousel.scss | ||
+ | | |– _cover.scss | ||
+ | | |– _dropdown.scss | ||
+ | | | ||
+ | | | ||
+ | |– layout/ | ||
+ | | |– _navigation.scss | ||
+ | | |– _grid.scss | ||
+ | | |– _header.scss | ||
+ | | |– _footer.scss | ||
+ | | |– _sidebar.scss | ||
+ | | |– _forms.scss | ||
+ | | | ||
+ | | | ||
+ | |– pages/ | ||
+ | | |– _home.scss | ||
+ | | |– _contact.scss | ||
+ | | | ||
+ | | | ||
+ | |– themes/ | ||
+ | | |– _theme.scss | ||
+ | | |– _admin.scss | ||
+ | | | ||
+ | | | ||
+ | |– vendors/ | ||
+ | | |– _bootstrap.scss | ||
+ | | |– _jquery-ui.scss | ||
+ | | | ||
+ | | | ||
+ | `– main.scss | ||
+ | </ |
notes_sur_sass-guidelines.1470847593.txt.gz · Last modified: 2016/08/10 18:46 by leo