Compare commits

...

470 commits

Author SHA1 Message Date
Raphael Goetter
87b3d7c784
Update README.md 2023-01-09 19:06:15 +01:00
Raphael Goetter
a6163e34fc
Update README.md 2023-01-09 19:06:01 +01:00
Raphaël Goetter
cd2b9e87da Fix font-size: bigger; to larger 2022-05-24 16:51:04 +02:00
Raphael Goetter
fc749045b9
Merge pull request #344 from swiing/patch-1
supprime une dépendance inutilisée
2022-02-25 08:06:11 +01:00
swiing
1c392fb2d8
supprime une dépendance inutilisée 2022-02-24 16:16:45 +01:00
swiing
dc2331ded2
supprime une dépendance inutilisée 2022-02-24 16:10:04 +01:00
Raphaël Goetter
6e13e8bc48 corrections sur radio / checkbox 2022-01-24 17:03:36 +01:00
Raphaël Goetter
d9833fe12c refonte des variables d'espacement 2022-01-19 17:10:53 +01:00
Raphaël Goetter
59f02b6c57 refonte des variables de couleurs 2022-01-05 17:34:13 +01:00
Raphaël Goetter
8e95e4cdd9 Suppression min-height: 0 par défaut 2021-07-09 14:12:15 +02:00
Raphaël Goetter
cddc2d472a Correction valeur "inherit" 2021-05-18 23:17:17 +02:00
Raphaël Goetter
4d8ce9b36e taille de base 100% (et non plus 62.5%) et corrections Grillade 2021-04-26 10:52:10 +02:00
Raphaël Goetter
b9f1adc09a gouttières de Grillade 2021-03-11 10:21:11 +01:00
Raphaël Goetter
ad3b8c2081 Valeurs de breakpoints 2021-03-11 10:06:39 +01:00
Raphaël Goetter
ca247b2a5d ajout des utilitaires font-sizes 2021-03-11 08:20:15 +01:00
Raphaël Goetter
4993abacca disclaimer : encore en test 2021-03-11 07:45:06 +01:00
Raphaël Goetter
d125d2a407 Priorité des breakpoints dans les classes utilitaires #338
Priorité des breakpoints dans les classes utilitaires #338
2021-03-05 20:17:01 +01:00
Raphaël Goetter
19362135c4 https 2021-01-25 13:53:06 +01:00
Raphaël Goetter
0fb306a79c Doc 2021-01-25 13:52:11 +01:00
Raphaël Goetter
c2eb2707a7 v8.0.2 2021-01-25 13:45:35 +01:00
Raphaël Goetter
c9ce349b9f typo 2021-01-25 13:27:27 +01:00
Raphaël Goetter
c718dd4992 typo 2021-01-25 13:24:51 +01:00
Raphaël Goetter
35677cb139 infos du package 2021-01-25 13:22:43 +01:00
Raphaël Goetter
dcf44e2f24 Merge branch 'v8'
# Conflicts:
#	.sass-lint.yml
#	README.md
#	bower.json
#	changelog.md
#	css/grillade-flex.css
#	css/grillade-grid.css
#	css/knacss-unminified.css
#	css/knacss.css
#	package-lock.json
#	package.json
#	sass/abstracts/_mixins.scss
#	sass/abstracts/_variables.scss
#	sass/base/_responsive.scss
#	sass/base/_utilities.scss
#	sass/base/_wordpress.scss
#	sass/base/grillade-flex.scss
#	sass/base/grillade-grid.scss
#	sass/components/_alerts.scss
#	sass/components/_arrows.scss
#	sass/components/_badges.scss
#	sass/components/_buttons.scss
#	sass/components/_forms.scss
#	sass/components/_media.scss
#	sass/components/_skip-links.scss
#	sass/components/_tables.scss
#	sass/components/_tabs.scss
#	sass/components/_tags.scss
#	sass/knacss.scss
#	yarn.lock
2021-01-25 12:34:49 +01:00
Raphaël Goetter
baa2977073 Modulaire 2021-01-25 12:29:56 +01:00
Raphaël Goetter
e3e57665a0 Transfert des fichiers Reborn vers branche v8 2021-01-25 12:28:12 +01:00
Raphaël Goetter
f14b1294cf Changelog Reborn 2021-01-25 12:22:26 +01:00
Raphaël Goetter
b75ca3d471 v8 = Reborn 2021-01-25 12:20:21 +01:00
Raphaël Goetter
3f43b046e6 mise à jour 2021-01-25 12:15:24 +01:00
Raphaël Goetter
f5b8183ee3 Merge branch 'v8'
# Conflicts:
#	README.md
#	changelog.md
#	css/knacss-unminified.css
#	css/knacss.css
#	package-lock.json
#	package.json
2021-01-25 12:12:03 +01:00
Raphael Goetter
bed7ee67fd
Merge pull request #335 from alsacreations/v6
Update README.md
2021-01-25 12:07:38 +01:00
Raphael Goetter
b494626529
Merge pull request #334 from alsacreations/v7
Update README.md
2021-01-25 12:07:20 +01:00
Raphael Goetter
3c51500720
Update README.md 2021-01-25 12:05:58 +01:00
Raphael Goetter
1254a0aeef
Update README.md 2021-01-25 12:05:35 +01:00
Raphaël Goetter
d73b9bfb2b Doc et liens à jour 2021-01-25 12:02:19 +01:00
Raphaël Goetter
e113db976e LONG LIVE KNACSS REBORN! 2020-11-26 08:48:55 +01:00
Raphaël Goetter
fa7b0853e7 Long live KNACSS Reborn 2020-11-26 08:46:55 +01:00
Raphael
43ae752103 correctifs du tag (le 7.1.3 annule le 7.1.2 erroné) 2020-02-12 11:35:23 +01:00
Raphael Goetter
feac71ac60
Merge pull request #320 from STudio26/patch-1
Fix a typo in Changelog v7.0.1
2019-10-25 16:30:10 +02:00
Raphael
3b908aef7d Merge branch 'master' of https://github.com/alsacreations/KNACSS 2019-10-25 16:29:42 +02:00
Raphael Goetter
36d65eadf3 Merge pull request #305 from parnissolle/patch-1
Fixing some deprecation warning while using KNACSS in a Laravel project
2019-10-25 16:29:29 +02:00
Raphael Goetter
89801bb885
Merge pull request #305 from parnissolle/patch-1
Fixing some deprecation warning while using KNACSS in a Laravel project
2019-10-25 16:25:29 +02:00
Raphael
bb849b884d Merge branch 'v8' of https://github.com/alsacreations/KNACSS into v8
# Conflicts:
#	package-lock.json
2019-10-25 10:07:43 +02:00
Rodolphe
d7214f2fdd Update package 2019-10-25 10:05:49 +02:00
Alain
b44e200970
Fix a typo in Changelog v7.0.1 2019-10-23 23:10:19 +02:00
Rodolphe
3a2848c87b Fix package.json use gulp 3.x 2019-09-19 16:38:42 +02:00
Rodolphe
1e21f9f3d2 Update package 2019-08-28 10:24:32 +02:00
Raphael
e6dcf97f60 mise à jour du support à >0.25% not op_mini all 2019-08-16 14:32:15 +02:00
Raphael
4e4f0247b7 plus de "latest" ou presque dans package.json 2019-08-14 16:03:07 +02:00
Raphael
86ddd7398c visually-hidden devient un mixin 2019-08-14 12:30:26 +02:00
Raphael
65711b271f modification de l'ordre d'import des fichiers utilitaires 2019-08-14 11:27:03 +02:00
Raphael
47f025409b suppression de browserslist dans gulpfile 2019-08-12 17:00:21 +02:00
Raphael
7249492817 correction typo dans le chemin de grillade 2019-08-12 16:58:11 +02:00
Raphael
debcf103f8 gulp 4.0.0 dans package.json 2019-08-12 16:55:38 +02:00
Raphael
0a7c069bbf aucune idée 2019-08-12 16:53:14 +02:00
Rodolphe
409ffb49e3 Gulpfile jump to v4 2019-08-12 16:48:08 +02:00
Raphael
e71db133ec @import interdit dans un @if... 2019-07-19 11:14:35 +02:00
Raphael
75644329fd renommage des classes grid- en grillade- pour éviter tout conflit 2019-07-19 10:46:41 +02:00
Raphael
271ff3acd5 variable $utilities 2019-07-19 10:37:17 +02:00
Raphael
3182e3088f variable $wordpress 2019-07-19 10:27:01 +02:00
Raphael
18e7b3698e fichiers gulpés 2019-07-17 17:32:39 +02:00
Raphael
96437493cf browserslist devenu .browserslistrc 2019-07-17 16:21:59 +02:00
Raphael
57b13b909b mise à jour du reset (suppression reset vendor) 2019-07-17 15:58:20 +02:00
Raphael
ab7adc8a14 mise à jour du reset (partie 2) 2019-07-17 12:24:47 +02:00
Raphael
f4c8ef9c37 mise à jour du reset (partie 1) 2019-07-17 11:57:00 +02:00
Raphael
8292b542f2 renommage dossiers 2019-07-17 11:15:55 +02:00
Raphael
365d221431 mise à jour browserslist (IE11 mini) 2019-07-17 10:59:19 +02:00
Raphael
0d68702dea typos 2019-07-17 10:32:01 +02:00
Pierre Arnissolle
467fd8e5f6
Fixing some deprecation warning while using KNACSS in a Laravel project
DEPRECATION WARNING: As of Dart Sass 2.0.0, !global assignments won't be able to
declare new variables. Consider adding `$gutter: null` at the top level.

   ╷
24 │       $gutter: $grid-gutters !global;
   │       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   ╵
    node_modules/knacss/sass/_library/grillade-grid.scss 24:7  @import
    node_modules/knacss/sass/knacss.scss 51:9                  @import
    stdin 6:9                                                  root stylesheet
2019-04-07 15:11:23 +02:00
Raphael Goetter
3b40b8af06
Merge pull request #304 from wdelenclos/patch-1
[ADD] LICENSE file
2019-02-14 15:54:10 +01:00
Wladimir Delenclos
d4f83324f7
[ADD] LICENSE file 2019-02-13 14:40:03 +01:00
Rodolphe
19c7ff24ac
Merge pull request #302 from alsacreations/patch
Fichiers md un peu plus valides
2019-02-09 00:33:02 +01:00
Rodolphe R
dd5bb4e313 Markdownlint 2019-02-09 00:26:48 +01:00
Rodolphe R
88962291a5 Markdown lint 2019-02-09 00:22:21 +01:00
Raphael Goetter
5e90fdb583 ajout de @supports (display: grid) dans le mixin de grille 2019-01-30 22:06:31 +01:00
Raphael Goetter
4782f69f44 Ajout de @media (prefers-reduced-motion: reduce) 2019-01-30 21:54:32 +01:00
Raphael Goetter
32ad91f29a Patch version 7.1.1 2018-12-10 17:17:32 +01:00
Raphael Goetter
8d5ce8fa6c
Merge pull request #293 from el-cms/add-default-flag
Ajout du flag !default sur toutes les variables
2018-11-04 11:47:08 +01:00
Olivier
3beb5270b6 Add !default flag on variables 2018-11-04 11:17:27 +01:00
Raphael Goetter
9a5ed3c989 # changelog v7.1.0 (31 octobre 2018)
- mise à jour et meilleure intégration de gulp / postCSS : 
  - autoprefixer version postCSS (avec browserslist officielle),
  - unprefix : pour supprimer les vieux préfixes inutiles
  - flexbox-fixes : pour corriger les erreurs connues sur IE
  - gap-properties : polyfill de gap -> grid-gap
  - minification CSS avec CSSnano
- application de `white-space: pre-rap` sur les textarea
2018-10-31 15:24:17 +01:00
Raphael Goetter
ad24c2fd51
Merge pull request #292 from el-cms/typo
Suppression d'une typo
2018-10-31 14:11:11 +01:00
Manuel Tancoigne
098840a039 Suppression d'une typo 2018-10-31 08:18:22 +01:00
Raphael Goetter
5bd082dfef correction d'alignement vertical de .nav-button 2018-10-24 10:14:52 +02:00
Raphael Goetter
a85af1ee32
Merge pull request #289 from ml-uni/master
Add columns number variable
2018-09-25 11:06:23 +02:00
ml-uni
e3d7ba689f
Change comment for grid number 2018-09-24 09:22:43 +02:00
ml-uni
62a36ee160
Add $cols for grillade-flex 2018-09-24 09:18:37 +02:00
ml-uni
98d49f1f58
Add $cols to grid system 2018-09-24 09:14:03 +02:00
ml-uni
60dfa8a772
Adding cols number variable for grid system 2018-09-24 09:07:25 +02:00
Raphael Goetter
245992c566 suppression de white-space: nowrap sur les éléments de formulaire 2018-09-20 14:08:38 +02:00
Raphael Goetter
d8cd5eedd3 Fixing error in json 2018-07-27 15:06:51 +02:00
Raphael Goetter
c6ac6326a8 package.json à jour (7.0.7) 2018-07-27 12:46:49 +02:00
Raphael Goetter
602fa5128a suppression commentaire sourcemap 2018-07-11 10:19:07 +02:00
Raphael Goetter
41e3be1278 v7.0.7 (3 juillet 2018)
cohérence de renommage pour les classes utilitaires (ajout du préfixe `.u-` uniformément)
2018-07-03 16:01:52 +02:00
Raphael Goetter
93a59d5446 URL cheatsheet 2018-06-21 15:21:14 +02:00
Raphael Goetter
ae3addebdb URL de la doc 2018-06-21 15:19:39 +02:00
Raphael Goetter
3ecebd8871 7.0.6 + npm publish 2018-05-30 07:43:32 +02:00
Raphael Goetter
815f54f919
Merge pull request #283 from PhilippeVay/bugfix/libsass-reboot
Renaming reboot.css as a _partial (_reboot.scss)
2018-05-29 21:03:29 +02:00
philippe
e9cb1682fb reboot.css renamed and imported as an Scss _partial because of libsass deprecation warning 2018-05-29 14:57:50 +02:00
Raphael Goetter
1671256272 checkbox fix 2018-05-26 11:53:48 +02:00
Raphael Goetter
c59a02ff10 mise à jour des styles, et variables des checkbox, radio et switches 2018-05-25 11:54:13 +02:00
Raphael Goetter
acbfc58573
Merge pull request #281 from PhilippeVay/typos-1805
Typos + ligne vide entre règles
2018-05-16 13:23:13 +02:00
PhilippeVay
d943099ca0 Typos un peu partout 2018-05-11 19:53:09 +02:00
Raphael Goetter
9a8875c64d
Merge pull request #280 from TweetPressFr/master
typo in CSS property
2018-05-11 09:45:38 +02:00
Julien Maury
0d84dd667a
bold instead of bolder in source _reboot 2018-05-09 22:57:44 +02:00
Julien Maury
19ff8636c0
bold instead of bolder in minified file too 2018-05-09 22:49:51 +02:00
Julien Maury
cd0b6876f8
bold instead of bolder 2018-05-09 22:48:59 +02:00
Raphael Goetter
9584249ca4 version 7.0.4
ajout de ::placeholder
2018-04-04 10:40:39 +02:00
Raphael Goetter
c3586f909a
Merge pull request #274 from aerogus/aerogus-missing-quotes
Update _checkbox.scss
2018-03-05 14:44:44 +01:00
Guillaume Seznec
e9fa432c3a
Update _checkbox.scss
brunch plante à la compilation de feuilles de style basées sur knacss7

La cause est sans doute dûe à l'absence de guillemets entourant les svg inline des .radio et .checkbox :checked
Tous les autres bacgkround-image : url() ont bien les guillemets entourant leur valeur.


```
11:52:03 - error: Compiling of app/styles/app.styl failed. L2485:47 app/styles/_knacss-
      2481|   transition: background-color .15s;
      2482| }
      2483|
      2484| .radio:checked {
      2485|   background-image: url(data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20standalone%3D%22no%22%3F%3E%3Csvg%20version%3D%221.1%22%20width%3D%2240%22%20height%3D%2240%22%0AviewBox%3D%220%200%2080%2080%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Ccircle%20cx%3D%2240%22%20cy%3D%2240%22%20r%3D%2224%22%20style%3D%22fill%3A%23ffffff%22/%3E%3C/svg%3E);
   -------------------------------------------------------^
      2486|   background-size: 80% 80%;
      2487|   background-position: center;
      2488|   background-repeat: no-repeat;

   illegal unary "%", missing left-hand operand
```
2018-03-04 12:07:36 +01:00
Raphael Goetter
a37552439d version 7.0.2 2018-03-01 09:57:41 +01:00
Raphael Goetter
e580d2e311 intégration de (auto)grid dans Grillade 2018-01-04 11:10:34 +01:00
Raphael Goetter
383160ac70
Merge pull request #264 from PhilippeVay/autogrid-fix
(Auto)grid : typo => colonnes inégales
2018-01-01 13:59:50 +01:00
PhilippeVay
24aea51226 (Auto)grid : bugfix typo grid-auto-columnS, des colonnes égales 2017-12-27 00:57:18 +01:00
Raphael Goetter
f0e2f699ff version 7.0.1 2017-12-22 09:55:10 +01:00
Raphael Goetter
e1451f2de6 Better handling hyphenations 2017-12-22 09:53:01 +01:00
Raphael Goetter
88373ffc63 SVG fix on IE is now commented 2017-12-22 09:34:24 +01:00
Raphael Goetter
10a6b31380 Quotes enhancement 2017-12-19 15:20:17 +01:00
Raphael Goetter
1bdbb434c0 shortening filenames 2017-12-19 15:15:52 +01:00
Raphael Goetter
48139afd7d accessibilisation des couleurs 2017-12-18 17:44:07 +01:00
Raphael Goetter
9c03462a52 deleting non used variables in Grid 2017-12-18 12:24:39 +01:00
Raphael Goetter
9daae666df Grid number start with 2, not 1 2017-12-18 12:22:18 +01:00
Raphael Goetter
2490a5dfe5 date and version number 2017-12-11 15:43:30 +01:00
Raphael Goetter
23cf3768fd link typo 2017-12-11 15:34:08 +01:00
Raphael Goetter
c1b5f89c6e Merge branch 'v7' 2017-12-11 15:26:28 +01:00
Raphael Goetter
0287831286 icon-arrow BEM naming 2017-12-11 10:02:56 +01:00
Raphael Goetter
8f61160426 links variables translated from colors to components 2017-12-07 14:50:01 +01:00
Raphael Goetter
5da87c3e99 file reordering 2017-12-06 09:40:30 +01:00
Raphael Goetter
e2fde95ba5 before / after with box-sizing 2017-12-06 09:32:12 +01:00
Raphael Goetter
a481f65367 little typo 2017-12-04 17:54:43 +01:00
Raphael Goetter
7c4ef6ebb4 Grillade variables little rework 2017-12-04 17:11:58 +01:00
Raphael Goetter
54f95cab40 .grid alias to .autogrid 2017-12-04 15:48:16 +01:00
Raphael Goetter
7bc7e0fb42 font variables error fix 2017-12-04 15:46:29 +01:00
Raphael Goetter
ff1ef5fb7e utilites typo helpers 2017-11-13 15:50:06 +01:00
Raphael Goetter
92f9b1354c indent 2017-11-02 16:08:50 +01:00
Raphael Goetter
21a5996ee3 renommage des variables d'espacement ($tiny-value -> $spacer-tiny) 2017-11-02 16:07:27 +01:00
Raphael Goetter
3003f4a62f li margin-bottom fix 2017-10-31 12:39:18 +01:00
Raphael Goetter
fce8bfc3f4 nav button :focus fix 2017-10-31 12:33:55 +01:00
Raphael Goetter
d5bb107788 reordering variables 2017-10-31 12:01:39 +01:00
Raphael Goetter
e5f4647542 maps for font-sizes 2017-10-30 18:23:28 +01:00
Raphael Goetter
2862bbff9c mixant de font-size responsive 2017-10-30 15:42:32 +01:00
Raphael Goetter
7426519638 vertical alignment for arrows 2017-10-24 16:35:00 +02:00
Raphael Goetter
2a403d0acb mise à jour de gulp-css-minify et suppression des underscores 2017-10-24 15:07:13 +02:00
Raphael Goetter
2fe096dc77 alternate font sizes 2017-10-23 14:55:37 +02:00
Raphael Goetter
8f2d7c8eba margin fix on switches 2017-10-20 12:37:15 +02:00
Raphael Goetter
41fdb8ce1c vertical rythm 2017-10-18 08:40:26 +02:00
Raphael Goetter
86c5ab4d22 build 2017-10-18 08:26:01 +02:00
Raphael Goetter
7a2cca515b Bootstrap reboot 2017-10-18 08:24:39 +02:00
Raphael Goetter
d23ef90a0c refonte des variables, première couche 2017-10-17 17:06:15 +02:00
Raphael Goetter
1a05e71249 switches design 2017-10-16 17:32:26 +02:00
Raphael Goetter
31940244a9 z-indexes variables 2017-10-16 16:23:56 +02:00
Raphael Goetter
8fc558370f font weights variables 2017-10-16 16:15:03 +02:00
Raphael Goetter
973a5e6d64 grillade files renamed 2017-10-16 16:13:08 +02:00
Raphael Goetter
d908eec7d4 line-height variables 2017-10-16 16:11:53 +02:00
Raphael Goetter
327e384643 min-height: 0 2017-10-16 16:05:16 +02:00
Raphael Goetter
9ab034471c flex naming 2017-10-16 16:03:25 +02:00
Raphael Goetter
71b0d7e745 fonts variables comments 2017-10-16 15:56:19 +02:00
Raphael Goetter
ce17704435 table footer variables 2017-10-16 15:53:36 +02:00
Raphael Goetter
ad9d1c1890 checkbox border-radius 2017-10-16 15:50:42 +02:00
Raphael Goetter
d2d84ca192 reorder variables 2017-10-13 17:06:38 +02:00
Raphael Goetter
acc7de48ed reorder variables 2017-10-13 17:05:37 +02:00
Raphael Goetter
513851c5c8 color naming convention 2017-10-13 10:59:40 +02:00
Raphael Goetter
21755f2c58 debug ::before 2017-10-03 11:12:59 +02:00
Raphael Goetter
5d94bd2501 tags added 2017-10-03 11:09:14 +02:00
Raphael Goetter
e460c7f2cb ajout des badges. Distinction badges / tags 2017-10-03 11:03:48 +02:00
Raphael Goetter
5af73cab2b typo 2017-10-03 10:54:50 +02:00
Raphael Goetter
3a377e30dd typo 2017-10-03 10:50:44 +02:00
Raphael Goetter
45db345081 mise à jour readme.md 2017-10-03 10:50:02 +02:00
Raphael Goetter
c417239696 breakpoints doc 2017-10-02 18:21:14 +02:00
Raphael Goetter
0fd83b0844 edit readme 2017-10-02 15:57:40 +02:00
Raphael Goetter
de3a0cd5af edit readme 2017-10-02 15:50:46 +02:00
Raphael Goetter
bf27f9e50f edit readme 2017-10-02 15:48:09 +02:00
Raphael Goetter
d534a962c8 suppression du dossier de documentation 2017-10-02 15:46:44 +02:00
Raphael Goetter
dce0c9aed6 readme.md 2017-10-02 15:40:56 +02:00
Raphael Goetter
e13198513b pas de user-select: none 2017-09-28 17:06:38 +02:00
Raphael Goetter
4f702ecfa1 appearance and user-select cleaning 2017-09-27 16:00:07 +02:00
Raphael Goetter
82851601b7 vertical-align: text-bottom; 2017-09-26 14:24:12 +02:00
Raphael Goetter
f621dee26a checkbox size 2017-09-26 11:43:59 +02:00
Raphael Goetter
f45ea52562 renommage des variables de composants 2017-09-26 11:42:46 +02:00
Raphael Goetter
c5b27ac2d3 renaming "arrow" -> "icon-arrow" 2017-09-25 10:48:57 +02:00
Raphael Goetter
6ac9bea024 added -ms-appearance: none; 2017-09-22 11:27:13 +02:00
Raphael Goetter
1736d2d8f8 hiding IE11 arrow on select 2017-09-22 11:21:20 +02:00
Raphael Goetter
ad3e11559d refonte des styles des tableaux 2017-09-20 16:50:49 +02:00
Raphael Goetter
8ed3ecdfc8 doc fixing 2017-09-19 16:36:10 +02:00
Raphael Goetter
d42c3bec7e flex: 1; --> flex: 1 1 0%; IE bugfix 2017-09-13 12:19:07 +02:00
Raphael Goetter
0c3776a827 build 2017-09-08 16:52:40 +02:00
Raphael Goetter
b2c8806543 arrows color 2017-09-08 16:49:44 +02:00
Raphael Goetter
9ae188d731 checkbox and radio colors 2017-09-08 15:45:48 +02:00
Raphael Goetter
031be14b1d color quote 2017-09-08 15:42:46 +02:00
Raphael Goetter
57b057a5f5 burger rename 2017-09-07 18:52:29 +02:00
Raphael Goetter
5e1c4bced1 .button-burger -> .nav-button 2017-09-07 18:48:39 +02:00
Raphael Goetter
0f91666bbc Burger JS add-ons 2017-09-07 17:07:19 +02:00
Raphael Goetter
b0030aeec2 Tabs revisited 2017-09-07 15:54:20 +02:00
Raphael Goetter
c87a1e1d11 Burger button height 2017-09-07 15:17:27 +02:00
Raphael Goetter
49a0a27f7f refonte burger button 2017-09-07 15:11:47 +02:00
Raphael Goetter
4a013641e5 corrections des classes flexbox. 2017-09-06 14:25:58 +02:00
Raphael Goetter
4af5b09d28 build 2017-08-31 15:22:53 +02:00
Raphael Goetter
edbdf31e2c title font-weight consistency 2017-08-31 15:22:12 +02:00
Raphael Goetter
c2df542bea corrections composants media et autogrid 2017-08-29 15:53:26 +02:00
Raphael Goetter
35c42d2b4b Underscore filename for components 2017-08-28 17:10:31 +02:00
Raphael Goetter
c5d37f172f Old Grid System v6 (Flexbox) added for compatibility 2017-08-28 12:22:44 +02:00
Raphael Goetter
f487ae4c77 Correction des retours à la ligne sur checkbox et radio 2017-08-28 10:56:28 +02:00
Raphael Goetter
89514c4a58 build 2017-08-09 16:04:09 +02:00
Raphael Goetter
0771287438 activate Grid Layout in autoprefixer 2017-08-09 15:27:57 +02:00
Raphael Goetter
9611df22ab précisions dans le sommaire 2017-08-08 17:07:24 +02:00
Raphael Goetter
d3405956df build 2017-08-08 16:36:49 +02:00
Raphael Goetter
6dcb26be6b outline sur tabs 2017-08-08 15:45:31 +02:00
Raphael Goetter
07a574134e new styles for tabs 2017-08-08 15:33:53 +02:00
Raphael Goetter
abe0ab4e83 (max-width: ($BP - 1)) and (min-width: $BP) 2017-08-08 12:28:23 +02:00
Raphael Goetter
59bed2bd39 correction des variables de breakpoint dans la doc 2017-08-08 12:27:08 +02:00
Raphael Goetter
96faa2954b déplacement des variables de breakpoints de breakpoints vers variables 2017-08-04 09:12:58 +02:00
Raphael Goetter
8c00f47d55 ajout de .color--inverse 2017-08-03 09:20:14 +02:00
Raphael Goetter
0c91d032ab color variables changed 2017-08-02 17:13:10 +02:00
Raphael Goetter
fbfef9ea9c ajout de possibilité de créer une grille de 1 colonne 2017-08-02 15:17:09 +02:00
Raphael Goetter
bb68ba9741 ajout de .item-fluid 2017-08-02 14:28:24 +02:00
Raphael Goetter
c5606774af new variables naming 2017-08-02 11:16:36 +02:00
Raphael Goetter
765cc18307 ajout des arrows 2017-08-02 10:00:18 +02:00
Raphael Goetter
434510d1cd svg background on select 2017-08-02 09:36:13 +02:00
Raphael Goetter
ae140af96c tabs focus fix 3 2017-08-01 22:15:52 +02:00
Raphael Goetter
802dc55cc9 focus fix 2 2017-08-01 22:09:16 +02:00
Raphael Goetter
85e1cefdee tabs focus fix 2017-08-01 22:02:31 +02:00
Raphael Goetter
a363be0dfb onglets (tabs) 2017-08-01 21:13:27 +02:00
Raphael Goetter
ce97137669 adaptation de breakpoint 2017-08-01 21:02:01 +02:00
Raphael Goetter
319b116243 media and autogrid without o- prefix 2017-08-01 17:00:16 +02:00
Raphael Goetter
9ff52d9858 buttons small and big variants 2017-08-01 16:13:25 +02:00
Raphael Goetter
d7b3265494 grid small-X fix 2017-08-01 15:25:15 +02:00
Raphael Goetter
feb666b6b2 make the buttons bigger! 2017-08-01 14:47:57 +02:00
Raphael Goetter
838f77cb6d new grillade in grid layout 2017-08-01 12:33:42 +02:00
Raphael Goetter
7bd7fb9807 * {min-width: 0} 2017-08-01 11:57:50 +02:00
Raphael Goetter
91d979b356 .js classes 2017-08-01 10:53:59 +02:00
Raphael Goetter
3560a7ceb5 automatisation des classes utilitaires via Sass 2017-08-01 10:52:32 +02:00
Raphael Goetter
c796838fde boutons radio stylés 2017-08-01 10:02:19 +02:00
Raphael Goetter
ddc20002ca build 2017-08-01 09:36:57 +02:00
Raphael Goetter
fdd8aa013f ajout de .flex-row-reverse 2017-08-01 09:23:51 +02:00
Raphael Goetter
bddfbb37a3 checkbox stylings 2017-08-01 09:20:53 +02:00
Raphael Goetter
ceed55bc52 disabled styling 2017-07-31 21:45:24 +02:00
Raphael Goetter
1ad445f767 button-burger color 2017-07-31 21:42:15 +02:00
Raphael Goetter
221ee2f539 Burger button styling 2017-07-31 21:31:56 +02:00
Raphael Goetter
73b8db37c2 submit as an input 2017-07-31 20:47:46 +02:00
Raphael Goetter
8dbd40dccf submit fix 2017-07-31 20:37:21 +02:00
Raphael Goetter
cb906dc5da buttons, variables and submit 2017-07-31 20:34:26 +02:00
Raphael Goetter
2b3e047429 line-height: 1; on badges 2017-07-31 18:18:45 +02:00
Raphael Goetter
3276e31aea no margin-top on first labels 2017-07-31 18:11:14 +02:00
Raphael Goetter
ed70f7187e box-shadow inset on inputs 2017-07-31 18:00:49 +02:00
Raphael Goetter
12cb77806d build 2017-07-31 17:56:19 +02:00
Raphael Goetter
87c5256c81 box-shadow et border sur input 2017-07-31 17:55:18 +02:00
Raphael Goetter
268345cc6a build 2017-07-31 17:47:45 +02:00
Raphael Goetter
be4890e7b6 concat entre base.scss et styling.scss 2017-07-31 17:30:43 +02:00
Raphael Goetter
c74d2ce220 forms add-ons 2017-07-31 17:19:03 +02:00
Raphael Goetter
4308dc1d19 refonte des styles de formulaires 2017-07-31 17:16:08 +02:00
Raphael Goetter
30106e8b7a alert fix 2017-07-31 16:02:22 +02:00
Raphael Goetter
f9f5e67507 Alerts added 2017-07-31 16:01:20 +02:00
Raphael Goetter
dee0e61697 Badges added 2017-07-31 15:49:38 +02:00
Raphael Goetter
7f795fd09e doc 2017-07-31 14:01:57 +02:00
Raphael Goetter
45c91e93b5 button ghost added 2017-07-31 14:00:06 +02:00
Raphael Goetter
16efc7aaa5 $color-danger fix 2017-07-31 13:26:20 +02:00
Raphael Goetter
74f3850524 buttons v7 2017-07-31 13:24:04 +02:00
Raphael Goetter
6e3d128d8e suppression du namespace "kna-" 2017-07-31 11:45:22 +02:00
Raphael Goetter
5d48351ef0 regroupement des styles de tableaux 2017-07-31 11:41:30 +02:00
Raphael Goetter
ba693cefba autogrid object 2017-07-31 11:37:12 +02:00
Raphael Goetter
d33da95e34 Skip Links 2017-07-31 10:52:40 +02:00
Raphael Goetter
c7f44aef04 normalize.css v7.0.0 2017-07-31 10:42:57 +02:00
Raphael Goetter
0ebe24ed0f architecture globale revisitée (_vendor, _config, _library, components) 2017-07-31 10:36:32 +02:00
Raphael Goetter
f5f95fe9ac ajout des fichiers compilés 2017-06-21 10:52:32 +02:00
Raphael Goetter
689c3d32f7 v6.1.2 (21 juin 2017) 2017-06-21 10:50:33 +02:00
Raphael Goetter
679a936f5b Merge pull request #248 from florianbouvot/patch-1
Fix typo
2017-05-10 14:20:41 +02:00
Florian Bouvot
55bc4c0bf3 Fix typo 2017-05-10 11:50:31 +02:00
Raphael Goetter
3f9862abe4 Merge pull request #247 from bdavidxyz/patch-1
Correction d'une probable erreur de copier/coller
2017-04-29 10:41:28 +02:00
David Boureau
9544ba610b Correction d'une probable erreur de copier/coller
.h6-like a pour taille $h6-size, quand les grandes tailles sont définies, c'est vraisemblablement $h6-size-l (et non $h1-size-l)
2017-04-28 13:39:09 +02:00
Raphael Goetter
faccfdb4bf amélioration du mixant "respond-to()" 2017-04-21 22:40:35 +02:00
Raphael Goetter
e29a67981e version 6.1.0
see changelog
2017-03-03 16:51:49 +01:00
Raphael Goetter
0a5de6e6c2 Merge pull request #241 from williambelle/fix-html-tag
fix html tag
2017-03-03 15:59:58 +01:00
William Belle
674e73c20a fix html tag 2017-03-03 15:28:43 +01:00
Raphael Goetter
50381826f6 Merge pull request #240 from williambelle/typo-fix
fix typo
2017-03-02 11:24:47 +01:00
William Belle
a1bb92d06d fix typo 2017-03-01 19:08:15 +01:00
Raphael Goetter
b33501b2b7 Merge pull request #239 from Bdg0o/patch-1
Taille des colonnes dans des grilles imbriquées
2017-02-16 07:58:54 +01:00
Bdg0o
122ca56461 Taille des colonnes dans des grilles imbriquées
Corrige la taille des colonnes dans le cas suivant : 

```
<div class="grid has-gutter-xl">

  <div class="one-half"></div>
  <div class="one-half">
    <div class="grid has-gutter-l">
       <div class="one-half">
         <!-- La taille de cette colonne prend en compte le gutter "xl" au lieu de "l"
        </div>
        <div class="one-half"></div>
    </div>
  </div>
```
2017-02-15 10:04:01 +01:00
Raphael Goetter
73ff7ea752 suppression de l'illustration 2017-02-07 12:01:31 +01:00
Raphael Goetter
7be0402cd5 détails docs Responsive 2017-02-07 11:59:17 +01:00
Raphael Goetter
062953473e Merge pull request #237 from PhilippeVay/compile-poil
🗃️ CSS non minifiée plus lisible
2017-02-07 10:53:57 +01:00
PhilippeVay
d64a20faab CSS non minifiée plus lisible 2017-02-06 23:16:28 +01:00
Raphael Goetter
ad445246dd link-hover-color
application de `$link-hover-color` uniquement si différent de
`$link-color`
2017-01-10 10:28:18 +01:00
Raphael Goetter
366af95681 Merge pull request #233 from PhilippeVay/link-hover
#232 No styling on a:hover if there's no effect
2016-12-24 11:39:32 +01:00
PhilippeVay
bd8ed31e5d No effect if variable is null or doesn't exist 2016-12-16 22:24:37 +01:00
PhilippeVay
d489bd2c86 No effect either if variable is falsy 2016-12-15 21:12:58 +01:00
PhilippeVay
94c20e2048 #232 No styling on a:hover if there's no effect 2016-12-15 20:10:26 +01:00
Raphael Goetter
7ce93420da Merge pull request #231 from PhilippeVay/lessless
🔥 Suppression de gulp-less inutilisé
2016-12-09 15:06:42 +01:00
philippe
a6f2a5831b 🔥 Suppression de gulp-less inutilisé 2016-12-09 14:57:54 +01:00
Raphael Goetter
6d054dfe13 Merge pull request #230 from PhilippeVay/sass-lint
sass-lintage (indentation, imbrication, clarté, etc)
2016-12-09 09:27:23 +01:00
Raphael Goetter
6cce1c4040 editorconfig fix 2016-12-09 09:23:53 +01:00
PhilippeVay
0374d02282 sass-lintage (indentation, imbrication, clarté, etc) 2016-12-08 14:24:27 +01:00
Raphael Goetter
27e6e06f43 add variable 2016-12-08 11:23:35 +01:00
Raphael Goetter
12239d8b07 $font-stack-headings conditionnel 2016-12-07 10:57:06 +01:00
Raphael Goetter
cfcf082c8a typo 2016-12-02 16:22:46 +01:00
Raphael Goetter
174cd86888 périmètre de -small- modifié 2016-12-02 16:19:53 +01:00
Raphael Goetter
4097eccb7b suppression police par défaut sur titres 2016-12-01 15:48:10 +01:00
Raphael Goetter
204d870d31 modifications des breakpoints 2016-12-01 15:45:23 +01:00
Raphael Goetter
725124d380 fix pour --reverse 2016-11-26 21:20:32 +01:00
Raphael Goetter
b96c5dc731 correction de grid--reverse 2016-11-25 15:47:42 +01:00
Raphael Goetter
8fbca1166b bugfix IE10 2016-11-23 20:44:40 +01:00
Raphael Goetter
11ecddabba numéro 2016-11-22 16:02:37 +01:00
Raphael Goetter
f609505066 renommage des variables 2016-11-22 14:47:41 +01:00
Raphael Goetter
b1d5168221 ajout de yarn dans la doc 2016-11-10 17:02:45 +01:00
Raphael Goetter
4eec65bf89 gestion de conflit des classes .grid-item-* 2016-11-10 16:45:11 +01:00
Raphael Goetter
5d7ce42692 Merge pull request #221 from SkullMasher/master
Fix l'overflow de la décoration du blockquote.
2016-11-10 16:24:24 +01:00
Raphael Goetter
238f16f0fb mise à jour 2 espaces 2016-11-03 14:55:40 +01:00
skullmasher
fb4b95246f Ajout du snippet https://codepen.io/raphaelgoetter/pen/wzLbdo 2016-11-01 04:47:03 +01:00
skullmasher
aec7fbdd6f Merge remote-tracking branch 'upstream/master' 2016-11-01 04:45:49 +01:00
Raphael Goetter
11428597ae optimisation des variables de config 2016-10-31 10:53:57 +01:00
skullmasher
a444e8067b Fix l'overflow de la décoration du blockquote. 2016-10-27 17:53:42 +02:00
Raphael Goetter
b244052b8d typo 2016-10-27 15:16:29 +02:00
Raphael Goetter
4f6bccf6dd typo 2016-10-27 15:15:38 +02:00
Raphael Goetter
5ed0b50dcb optimisation de Grillade 2016-10-27 14:35:07 +02:00
Raphael Goetter
43db2d6d4b mise à jour de grillade
- ajout de .one-sixth et .five-sixths
2016-10-26 10:24:30 +02:00
Raphael Goetter
0e31ec8487 Merge pull request #219 from SkullMasher/master
Base font size 1.6rem. Fix #218
2016-10-24 14:17:42 +02:00
skullmasher
715e359b59 Base font size 1.6rem. Fix #218 2016-10-23 18:08:16 +02:00
Raphael Goetter
5d74c132e9 précisions changelog 2016-09-28 11:15:43 +02:00
Raphael Goetter
c7ebe5cb62 mise à jour changelog 2016-09-28 09:09:11 +02:00
Raphael Goetter
5d4f5af819 compilation de grillade.css 2016-09-27 16:40:19 +02:00
Raphael Goetter
0170daae6e Merge branch 'v6' 2016-09-27 16:16:29 +02:00
Raphael Goetter
857267c397 SVG fix for IE 2016-09-27 16:10:21 +02:00
Raphael Goetter
ca871aa492 typo 2016-09-21 13:43:36 +02:00
Raphael Goetter
76db5ad463 margin on table moved 2016-09-21 13:02:45 +02:00
Raphael Goetter
8844212f09 mise à jour bower et package.json 2016-09-21 12:17:39 +02:00
Raphael Goetter
1be013b355 mise à jour de la documentation 2016-09-21 11:52:46 +02:00
Raphael Goetter
8b84456527 amélioration du fichier gulpfile.js 2016-09-21 11:05:00 +02:00
Raphael Goetter
f35fb9aa9b refonte intégrale de la grille (grillade) 2016-09-21 10:52:49 +02:00
Raphael Goetter
1f45d141be suppression du positionnement tabulaire 2016-09-21 10:35:21 +02:00
Raphael Goetter
a1773bbae9 modularisation des dossiers 2016-09-21 10:26:28 +02:00
Raphael Goetter
3b87077ae3 refonte des breakpoints 2016-09-21 10:05:29 +02:00
Raphael Goetter
c940647d2d ajout de l'illust des breakpoints 2016-07-30 19:15:37 +02:00
Raphael Goetter
3d42dbb856 mise à jour de la doc 2016-07-29 09:02:17 +02:00
Raphael Goetter
af60a9903b mise à jour de la doc 2016-07-07 10:56:52 +02:00
Raphael Goetter
6fe5520966 Merge branch 'pr/202' 2016-06-18 14:31:01 +02:00
Raphael Goetter
bb552d078f helpers mobile-first 2016-05-24 16:45:47 +02:00
Raphael Goetter
ac72df52e8 typo 2016-05-23 16:15:26 +02:00
Raphael Goetter
5ce0449d32 Merge remote-tracking branch 'origin/master' 2016-05-23 15:45:45 +02:00
Raphael Goetter
22973c4b86 bug fix on uneven grids 2016-05-23 15:45:44 +02:00
Raphael Goetter
41005a5978 Merge pull request #193 from alsacreations/branch-v5
Branch v5
2016-05-23 14:54:10 +02:00
Raphael Goetter
a9ac18fd61 Merge branch 'branch-v5' 2016-05-23 14:50:54 +02:00
Raphael Goetter
806c533c99 grid documentation corrections 2016-05-23 14:41:28 +02:00
Raphael Goetter
46517b0baf CSS compil 2016-05-23 14:39:00 +02:00
Raphael Goetter
e75663c70e .grid-item-first, .grid-item-medium et .grid-item-last 2016-05-23 14:36:39 +02:00
Raphael Goetter
478e27b2f6 CSS compiled 2016-05-23 14:28:55 +02:00
Raphael Goetter
67ab1f288f .table-auto corrections 2016-05-23 14:16:13 +02:00
Raphael Goetter
fe61766476 modifications de contenus 2016-05-22 16:34:31 +02:00
Raphael Goetter
da9433cd18 typo 2016-05-22 16:30:12 +02:00
Raphael Goetter
c320156b38 mise à jour de la doc 2016-05-21 12:07:22 +02:00
Raphael Goetter
1edde46541 typo mineure 2016-05-21 08:33:15 +02:00
Raphael Goetter
6758b8a05d commentaires divers 2016-05-20 09:04:01 +02:00
Raphael Goetter
7f30e37b12 ajout de la TDM 2016-05-20 08:58:56 +02:00
Raphael Goetter
930be0cfaa préfixage des variables de grille 2016-05-16 17:20:28 +02:00
Raphael Goetter
602bd0a857 readme à jour 2016-05-16 15:46:48 +02:00
Raphael Goetter
7c9cf52761 see changelog 2016-05-16 15:45:14 +02:00
Raphael Goetter
2022f8bd79 mise à jour doc grilles 2016-04-24 11:49:03 +02:00
Raphael Goetter
195de74f04 Merge pull request #185 from dsoriano/sass-grid-gutter
Improve grid and uneven-grid mixins
2016-04-14 12:13:15 +02:00
dsoriano
78bb609da4 Improve grid and uneven-grid mixins in sass and less 2016-04-13 23:31:11 +02:00
dsoriano
139833e5aa Merge branch 'master' into sass-grid-gutter 2016-04-13 22:13:56 +02:00
Raphael Goetter
b088d80138 Merge pull request #191 from JocelynDelalande/patch-1
Fix typo
2016-04-13 08:29:02 +02:00
JocelynDelalande
7c3fcb192f Fix typo 2016-04-12 21:25:51 +02:00
Raphael Goetter
d3d805779e url fix 2016-04-01 15:49:53 +02:00
Raphael Goetter
4a34da1c8b version 4.4.5
# changelog v4.4.5 (1er avril 2016)

- mise à jour vers Normalize 4 :
https://github.com/necolas/normalize.css/blob/4.0.0/CHANGELOG.md
- application de min-width: 0 sur les flex-item-fluid pour éviter les
minimum automatiques des flex-items
- suppression des styles spécifiques à Gmap (sélecteurs trop lourds
pour un cas très particuliers)
2016-04-01 15:48:24 +02:00
dsoriano
6483baf8e8 Improve grid and uneven-grid mixins 2016-02-13 23:16:33 +01:00
Raphael Goetter
4a5dd0f5bd mise à jour du gulpfile pour grillade.css 2016-02-12 16:23:20 +01:00
Raphael Goetter
c6fd1278eb suppression de word-break sur les liens 2016-01-25 17:32:10 +01:00
Raphael Goetter
d02430bc31 version 4.4.4 2016-01-23 10:51:00 +01:00
Raphael Goetter
021f2d63ff vertical-align correctif 2016-01-20 17:05:29 +01:00
Raphael Goetter
f70d820f83 ajout du patch min-width: 0 sur les flex-items 2016-01-14 09:36:17 +01:00
Raphael Goetter
1bca49b368 précisions 2015-12-24 12:13:33 +01:00
Raphael Goetter
1be5080492 précisions grillade 2015-12-24 12:12:58 +01:00
Raphael Goetter
a67a7059c8 précision : "grille flexbox" 2015-12-24 12:11:16 +01:00
Raphael Goetter
1d964c60f6 typo 2015-12-24 11:22:08 +01:00
Raphael Goetter
d51fc69b1e doc à jour pour grillade 2015-12-24 11:21:32 +01:00
Raphael Goetter
b50a9b84b5 grillade.less et grillade.scss 2015-12-24 11:16:13 +01:00
Raphael Goetter
f35237dcbe précisions de grillade.css 2015-12-24 10:50:43 +01:00
Raphael Goetter
de956daea5 ajout de grillade.css dans la doc 2015-12-24 09:40:14 +01:00
Raphael Goetter
bde9e261a7 box-sizing on grid childs 2015-12-24 09:18:58 +01:00
Raphael Goetter
e514522b08 version 4.4.2 2015-12-24 09:04:43 +01:00
Raphael Goetter
d944ff8ad2 correction flex-item-double 2015-12-22 18:58:37 +01:00
Raphael Goetter
7709261653 Version 4.4.0 (voir changelog) 2015-12-12 11:20:29 +01:00
Raphael Goetter
b67a9ccd34 Merge pull request #173 from hellodeloo/patch-3
Update _03-grids.scss
2015-11-20 09:49:30 +01:00
Raphael Goetter
4747400f5e Merge pull request #172 from hellodeloo/patch-1
Update _04-tables.scss
2015-11-20 09:49:09 +01:00
hellodeloo
99d79fc313 Update _03-grids.scss 2015-11-19 04:52:38 +01:00
hellodeloo
a32311c071 Update _04-tables.scss 2015-11-19 04:33:55 +01:00
Raphael Goetter
fd6363eff8 version 4.3.6
cf. changelog
2015-11-10 15:53:03 +01:00
Raphael Goetter
05551f7931 correction d'image de la doc 2015-10-20 14:33:13 +02:00
Raphael Goetter
1ef2f8f6e9 version 4.3.5 2015-10-20 14:22:14 +02:00
Raphael Goetter
ce396d6ada Merge pull request #159 from hiwelo/patch-1
Proposition de résolution #158
2015-09-09 12:46:49 +02:00
Raphael Goetter
75ba1654c0 Update README.md 2015-09-09 12:44:35 +02:00
Raphael Goetter
26a06ea069 Update README.md 2015-09-09 12:42:31 +02:00
Damien Senger
6693b24d1e Proposition de résolution #158 2015-09-05 14:17:31 +02:00
Raphael Goetter
20f1ef34ad Update 00-commencer.md 2015-08-27 20:19:00 +02:00
raphaelgoettter
6cba7c218c version 4.3.4 2015-08-27 11:24:56 +02:00
raphaelgoettter
db88009e74 modifs visually hidden 2015-08-27 11:11:40 +02:00
raphaelgoettter
06e334f794 beautifying code 2015-08-27 11:04:01 +02:00
raphaelgoettter
9f080f6071 suppression de styles de tableaux alternate et striped 2015-08-27 10:39:56 +02:00
raphaelgoettter
cfaab2e8e2 corrections de nommages reliquats
`.flexitem-double` -> `.flex-item-double`
2015-08-27 10:36:37 +02:00
raphaelgoettter
2eaf0b4a7d corrections de doc 2015-08-27 10:32:39 +02:00
Raphael Goetter
5144392b0f Merge pull request #148 from WedgeSama/master
Fix grid position
2015-08-27 10:21:33 +02:00
Benjamin Georgeault
24f35a241a Ajout des classes pull et push pour grid
Les classes `.left` et `.right` ne sont pas applicables sur la grid.
Ajout de 2 classes pour la grid.
2015-08-10 09:45:02 +02:00
Raphael Goetter
2f08c57458 4.3.3 2015-08-06 16:09:13 +02:00
Raphael Goetter
da70aceee6 5.1.0 2015-08-06 16:08:45 +02:00
Raphael Goetter
35c7c5dc0a 5.0.0 2015-08-06 16:08:35 +02:00
Raphael Goetter
17f2a3bcfc version 4.3.3 2015-08-06 15:53:14 +02:00
Raphael Goetter
12d6f6a410 corrections styles print
modifications rendues plus faciles pour l’utilisateur
2015-08-06 15:49:25 +02:00
Raphael Goetter
e66ed5801d corrections BP grilles inégales 2015-08-06 15:41:56 +02:00
raphaelgoettter
061191ac71 re 2015-08-05 10:05:02 +02:00
raphaelgoettter
ebf9a0d67d précision doc grilles 2015-08-05 10:03:12 +02:00
raphaelgoettter
7b7f4e9bc8 mise à jour de la compatibilité (IE8) 2015-07-23 17:58:48 +02:00
Raphael Goetter
7730903714 amélioration doc grilles 2015-07-11 09:00:44 +02:00
Raphael Goetter
ff19385413 Merge pull request #142 from redpik/patch-1
wordpress gallery-item: boucle @for
2015-07-09 15:57:45 +02:00
Benjamin PONGY
4029bb8d33 wordpress gallery-item: boucle @for 2015-07-09 14:41:13 +02:00
raphaelgoettter
4b0153af47 Ajout de classes helpers
// spacings (choose unit you prefer)
@tiny-value             : .5rem; // tiny value for margins / paddings
@tiny-plus-value        : .7rem; // tiny+ value for margins / paddings
@small-value            : 1rem; // small value for margins / paddings
@small-plus-value       : 1.5rem; // small+ value for margins / paddings
@medium-value           : 2rem; // medium value for margins / paddings
@medium-plus-value      : 3rem; // medium+ value for margins / paddings
@large-value            : 4rem; // large value for margins / paddings
@large-plus-value       : 6rem; // large value for margins / paddings
@extra-large-value      : 8rem; // extra large value for margins /
paddings
@extra-large-plus-value : 12rem; // extra large value for margins /
paddings
@ultra-large-value      : 16rem; // ultra large value for margins /
paddings
@ultra-large-plus-value : 20rem; // ultra large value for margins /
paddings

// breakpoints (choose unit you prefer)
@tiny-screen            : 320px; // tiny screens media query (less-equal
than 320px)
@tiny-plus-screen       : 480px; // screens between 321px and 480px
@small-screen           : 640px; // screens between 481px and 640px
@small-plus-screen      : 768px; // screens between 641px and 768px
@medium-screen          : 960px; // screens between 769px and 960px
@medium-plus-screen     : 1024px; // screens between 961px and 1024px
@large-screen           : 1280px; // screens between 1025px and 1280px
@large-plus-screen      : 1440px; // screens between 1281px and 1440px
@extra-large-screen     : 1600px; // screens between 1441px and 1600px
@ultra-large-screen     : 1920px; // ultra large screens
2015-07-08 15:19:43 +02:00
raphaelgoettter
9e40fd8749 erreur de compil due à sourcemap 2015-07-08 09:53:24 +02:00
raphaelgoettter
5195d626f7 documentation grilles imbriquées 2015-07-08 09:34:56 +02:00
Raphael Goetter
b88f32f6d0 nouvelles grilles responsive, v4.3.1 2015-07-05 17:05:45 +02:00
Raphael Goetter
70a3bfbe48 nouvelles grilles responsive 2015-07-05 16:56:19 +02:00
Raphael Goetter
85e60e2324 correction sass 2015-07-05 16:39:47 +02:00
raphaelgoettter
cca44b501f version 4.3.0
grilles compatibles jusqu'à IE8 et Android2 \o/
2015-07-03 10:07:29 +02:00
raphaelgoettter
e1fe703d3d version 4.2.3 2015-07-02 09:31:17 +02:00
raphaelgoettter
d824fc2047 suppr de namespaces et ajout de .bfc
- pas de namespace sur les classes `.clear`, `.clearfix` et
`.visually-hidden`
- ajout d'une classe `.bfc` (identique à `.mod`) et qui crée un contexte
de formatage block
2015-07-02 09:19:33 +02:00
raphaelgoettter
58bc80183e répartition des styles entre table et styling 2015-07-02 09:13:41 +02:00
Raphael Goetter
5fa49413b6 tabs to spaces + editorconfig 2015-07-01 13:47:48 +02:00
raphaelgoettter
1bc094e9df Guide de Mise à jour depuis v3 2015-06-26 16:22:36 +02:00
raphaelgoettter
374f502f97 modifs gulpfile.js 2015-06-26 14:34:58 +02:00
raphaelgoettter
1722227172 css compilés 4.2.2 2015-06-26 14:11:06 +02:00
raphaelgoettter
30eff2dc3f v4.2.2 2015-06-26 14:09:02 +02:00
raphaelgoettter
adb5036b3d correction de doublons 2015-06-26 14:08:49 +02:00
raphaelgoettter
70f6c1c1ed correction select sur webkit 2015-06-26 14:04:31 +02:00
raphaelgoettter
69c0d573eb correction largeur des grilles sur IE 2015-06-26 14:04:16 +02:00
raphaelgoettter
da25bfdf42 flex container enhancement 2015-06-26 13:58:32 +02:00
raphaelgoettter
5a290fb9d8 changelog 2015-06-26 13:55:38 +02:00
Raphael Goetter
a748821d68 Merge pull request #138 from fgirardey/master
Utiliser !default dans la config en sass
2015-06-26 13:55:17 +02:00
Florian Girardey
5c80758add Add !default on config variables 2015-06-13 22:15:04 +02:00
raphaelgoettter
2d086529fc suppression de l'alignement par défaut des grilles 2015-05-25 12:13:28 +02:00
raphaelgoettter
665e0fefff compilation CSS 2015-05-07 09:32:46 +02:00
Raphael Goetter
5a6e0ff124 Merge pull request #131 from magsout/namespace
Added namespace var Sass + Less version
2015-05-07 09:16:58 +02:00
magsout
b1c96f4373 Added namespace var Sass + Less version 2015-05-05 23:32:34 +02:00
Raphael Goetter
457b3a8772 Merge pull request #126 from nico3333fr/patch-4
Added tag svg for RWD
2015-04-26 16:16:27 +02:00
Raphael Goetter
cd441226b4 Merge pull request #127 from nico3333fr/patch-5
Added tag svg for RWD
2015-04-26 16:16:13 +02:00
Raphael Goetter
bd0cdae1f8 ajout de la compatibilité 2015-04-26 16:12:24 +02:00
Nicolas Hoffmann
a50b031928 Added tag svg for RWD
Just to avoid inline svg be out of their container :)
2015-04-25 09:20:31 +02:00
Nicolas Hoffmann
bbb8abf1e7 Added tag svg for RWD
Just to avoid inline svg be out of their container
2015-04-25 09:18:22 +02:00
raphaelgoettter
4b5e6929eb mise à jour doc 2015-04-17 11:35:08 +02:00
raphaelgoettter
44c015c34e mise à jour de la doc 2015-04-17 11:34:02 +02:00
raphaelgoettter
c4340bddd9 css compilés 2015-04-17 11:13:18 +02:00
raphaelgoettter
aa951801fe Corrections issues 121 à 124
- mise en commentaire des sauts de page print avant un h1
- correction d'anomalie sur les input (user-select: none)
- correction d'erreur de compilation Sass
2015-04-17 11:12:02 +02:00
raphaelgoettter
490f9f328e correction défaut de couleur sur input 2015-04-14 16:47:19 +02:00
raphaelgoettter
b2a6485dac changelog v4.1.4 (14 avril 2015)
- ajout de node_modules dans le .gitignore
- ajout d'un gulpfile.js et des dépendances dans package.json
- ajout de la classe .unstyled destinée aux éléments de formulaires
2015-04-14 10:04:17 +02:00
Raphael Goetter
e99a63b038 Update changelog.md 2015-04-13 16:42:44 +02:00
raphaelgoettter
be791c045e doc positionnement à jour (flexbox) 2015-04-13 16:31:44 +02:00
raphaelgoettter
b3089b4b19 il voit du flexbox partout ! 2015-04-13 16:25:22 +02:00
raphaelgoettter
1b8e540dd4 fichiers CSS à jour 2015-04-13 16:16:13 +02:00
raphaelgoettter
7e73344592 flexbox renommage des classes 2015-04-13 16:10:55 +02:00
Raphael Goetter
0d9c9d9477 Update changelog.md 2015-04-03 18:27:55 +02:00
Raphael Goetter
327055fb9a Update README.md 2015-04-03 18:17:06 +02:00
raphaelgoettter
95d98f8ca0 modifs doc grilles 2015-04-01 17:33:11 +02:00
raphaelgoettter
965d31a529 modifs documentation 2015-04-01 17:28:29 +02:00
Raphael Goetter
2a278a800c Update 00-commencer.md 2015-04-01 12:11:48 +02:00
Raphael Goetter
bca976f562 Update changelog.md 2015-04-01 11:04:36 +02:00
Raphael Goetter
ff8e707a4b Update 01-typo-et-reset.md 2015-03-31 15:57:10 +02:00
Raphael Goetter
630a6aa58c Update README.md 2015-03-30 16:48:01 +02:00
Raphael Goetter
876e29ee3d Update 00-commencer.md 2015-03-30 16:47:46 +02:00
Raphael Goetter
151a873a24 Update README.md 2015-03-30 16:03:21 +02:00
Raphael Goetter
d33a9985be Update README.md 2015-03-30 16:02:38 +02:00
Raphael Goetter
3019d78213 Update changelog.md 2015-03-30 16:01:36 +02:00
Raphael Goetter
1041659172 Update README.md 2015-03-30 15:55:55 +02:00
raphaelgoettter
8276a857f3 v4.1.1 2015-03-30 15:52:50 +02:00
raphaelgoettter
77a417e96c schnaps.it dans la doc 2015-03-30 15:43:56 +02:00
raphaelgoettter
2de96ecda1 classe .flexbox responsive en tiny screen 2015-03-30 15:24:16 +02:00
raphaelgoettter
60a64a8a13 ajout de changelog 2015-03-30 15:14:01 +02:00
85 changed files with 7749 additions and 7974 deletions

2
.browserslistrc Normal file
View file

@ -0,0 +1,2 @@
>1.5%
not op_mini all

7
.editorconfig Normal file → Executable file
View file

@ -1,10 +1,7 @@
# editorconfig.org
root = true root = true
[*] [*]
indent_style = tab
indent_size = 4
end_of_line = lf end_of_line = lf
indent_style = space
indent_size = 2
charset = utf-8 charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

0
.gitattributes vendored Normal file → Executable file
View file

10
.gitignore vendored Normal file → Executable file
View file

@ -93,6 +93,7 @@ DocProject/Help/*.hhp
DocProject/Help/Html2 DocProject/Help/Html2
DocProject/Help/html DocProject/Help/html
# Click-Once directory # Click-Once directory
publish publish
@ -166,3 +167,12 @@ pip-log.txt
# parce qu'on s'en fout # parce qu'on s'en fout
*.log *.log
# parce que trop lourd, ...
node_modules/
package-lock.json
yarn.lock
# parce que certaines personnes utilisent de vrais IDEs
.idea
*.iml

13
LICENSE Executable file
View file

@ -0,0 +1,13 @@
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
Version 2, December 2004
Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>
Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. You just DO WHAT THE FUCK YOU WANT TO.

View file

@ -1,60 +1,14 @@
# KNACSS # KNACSS
http://www.knacss.com **Né en 2012 et après plus de 10 années de bons et loyaux services, le projet initial « KNACSS » d'Alsacréations est officiellement obsolète, n'est plus maintenu et ne sera plus mis à jour.**
KNACSS, c'est un peu comme une feuille de style CSS "reset" sur-vitaminée qui permet de commencer un projet à partir de zéro tout en tenant compte de bonnes pratiques générales (accessibilité, performance, responsive webdesign). ## Documentation version v8 (v8 = Reborn)
KNACSS prend en charge les styles de base, mais également la typographie, les modèles de boîte, les alignements et positionnements d'éléments, les grilles de mise en page, dans l'esprit d'être adapté à toutes les tailles d'écran (reponsive). Le tout automatiquement ! - Site web de présentation de KNACSS Reborn : <https://www.knacss.com/>
- [**Documentation KNACSS Reborn**](https://www.knacss.com/doc.html)
Conçu par l'agence web [Alsacreations.fr](http://alsacreations.fr) et pensé pour être couplé avec des préprocesseurs tels que LESS ou Sass, le micro-framework KNACSS est employé quotidiennement sur toute sorte de projets web quel que soit son type ou son envergure. ## Documentation anciennes versions (v7)
## Installation - [**Documentation KNACSS v7**](https://www.knacss.com/doc-old.html)
- [**Pense-bête PDF KNACSS v7**](https://www.knacss.com/assets/pdf/knacss7-cheatsheet.pdf)
La version courte est "il n'y a rien à installer".
Selon votre environnement de travail vous suffit de récupérer la feuille de styles :
- en version [CSS classique](https://raw.githubusercontent.com/raphaelgoetter/KNACSS/master/css/knacss-unminified.css) (ou [minifié](vhttps://raw.githubusercontent.com/raphaelgoetter/KNACSS/master/css/knacss.css))
- en version [LESS](https://github.com/raphaelgoetter/KNACSS/tree/master/less)
- en version [Sass](https://github.com/raphaelgoetter/KNACSS/tree/master/sass)
_Les versions LESS et Sass seront bien évidemment plus malléables grâce à l'apport de variables et fonctions._
## Usage
KNACSS n'est constitué que d'un seul fichier CSS (minifié ou non selon vos goûts), qu'il vous suffit d'ajouter à votre page HTML :
<link rel="stylesheet" href="knacss.css">
Il est également possible de l'installer (toutes versions) via [Bower](http://bower.io/) : ```bower install knacss```
## RTFM!
KNACSS se veut être un outil simple (contrairement aux usines à gaz que sont Bootstrap ou Foundation), mais évolutif.
La contrepartie est que cela nécessite de votre part de bonnes connaissances en CSS et un petit effort de compréhension et de d'apprentissage des mécanismes de l'outil.
Une [**documentation**](https://github.com/raphaelgoetter/KNACSS/tree/master/doc) détaillée et illustrée est en cours de rédaction. Je vous invite vivement à la parcourir avant de vous jeter sur KNACSS.
## Préprocesseurs
KNACSS est conçu et pensé pour être adapté aux préprocesseurs que sont LESS et Sass. Nous employons LESS en interne, nos fichiers de travail sont donc des `.less` et non des `.css` (cela fonctionne aussi avec Sass).
Si, comme nous, vous intégrez à l'aide de préprocesseurs, KNACSS va vous faciliter la vie dès le début du projet puisqu'un [fichier de configuration](https://github.com/raphaelgoetter/KNACSS/blob/master/less/_00-config.less) contenant toutes les variables du projet est intégré.
Libre à vous de le modifier selon les contraintes de votre projet.
**Attention**, si vous importez KNACSS automatiquement via Bower par exemple (dans un dossier `vendor`), ce fichier de configuration risque d'être écrasé à chaque mise à jour de KNACSS. Nous vous invitons à en faire une copie dans votre dossier de travail et à commenter l'appel au fichier de config de `vendor`.
### Préfixes navigateurs
Certaines fonctionnalités avancées de KNACSS nécessitent d'employer toute une panoplie de préfixes CSS (`-webkit-`, `-moz-`, `-ms-`, ...) pour être certain que les propriétés CSS fonctionneront partout.
Au sein de la version classique CSS de KNACSS, l'ensemble des préfixes est présent, **vous n'avez donc pas à vous en soucier** (paramètres de Autoprefixer : "last 2 versions").
**Par contre, dans les versions LESS et Sass de KNACSS, les préfixes n'apparaissent pas** pour ne pas polluer la lecture du fichier de travail. **Il vous sera donc nécessaire de les ajouter**, de préférence automatiquement grâce à un plugin ou aux excellents outils que sont [autoprefixer](https://github.com/postcss/autoprefixer) ou [pleeease](http://pleeease.io/).
## Liens utiles
* Site web de KNACSS : http://knacss.com
* [**Documentation détaillée**](https://github.com/raphaelgoetter/KNACSS/tree/master/doc)
* Sur Alsacreations.com : ["découverte du framework KNACSS"](http://www.alsacreations.com/tuto/lire/1577-decouverte-du-framework-css-KNACSS.html)

View file

@ -1,23 +0,0 @@
{
"name": "KNACSS",
"version": "4.1.0",
"homepage": "http://www.knacss.com/",
"authors": [
"Raphaël GOETTER, Alsacreations"
],
"description": "KNACSS is a minimalist, responsive and extensible style sheet to kick-start your HTML / CSS projects. It relies on common best practices and experience on the topic.",
"main": "css/knacss.css",
"keywords": [
"css", "framework", "reset", "responsive", "less", "sass", "rwd", "boilerplate", "workflow"
],
"license": "WTFPL",
"ignore": [
"**/.*",
"node_modules",
"bower_components",
"test",
"less/knackLESS.zip",
"tests",
"README.md"
]
}

357
changelog.md Executable file
View file

@ -0,0 +1,357 @@
# Changelog
- 24 janvier 2022 (8.2.1) : corrections des radio / checkbox
- 19 janvier 2022 (8.2) : refonte des variables d'espacement
- 5 janvier 2022 (8.1) : refonte des variables de couleur
- 9 juillet 2021 (8.0.5) : suppression min-height: 0 par défaut
- 26 avril 2021 : taille de base 100% (et non plus 62.5%) et corrections Grillade
- 5 mars 2021 : les classes utilitaires font à présent partie du Core
- 26 novembre 2020 : Documentation + V1.0.0
- 22 octobre 2020 : grosse remise à jour. V0.9.0
- 12 octobre 2020 : début de refonte classes utilitaires
- 11 août 2020 : refonte des composants principaux
- 19 mai 2020 : fichier de composant `button.scss` et mixin Sass
- 29 février 2020 : feuille de style accessibilité
- 13 février 2020 : on repart de zéro...
## Changelog 2020
Né en 2012 et après près de 10 années de bons et loyaux services, le projet initial « KNACSS » d'Alsacréations laisse place à une toute nouvelle version, totalement remaniée : KNACSS Reborn, correspondant à la Branche et version 8.
## Changelog v8.0.0 (xxx 2019)
- Architecture : mise à jour du reset, suppression des reset vendors (Reboot de Boostrap)
- Architecture : renommage de dossiers à la "7-1 pattern": `_config` > `abstracts`, `_library` > `base`, et du fichier `_base.scss` en `_reset.scss`
- Architecture : modification de l'ordre d'import des fichiers : les utilitaires sont importées à la fin à présent
- Compatibilité : support passé de IE10 à IE11 (browserlist)
- Compatibilité : Browserslist devenu `.browserslistrc` et mise à jour du support à `>0.25% not op_mini all`
- Compatibilité : fichier gulpfile.js dorénavant compatible Gulp 4
- Compatibilité : versions exactes des dépendances dans package.json (pour éviter "latest")
- Grillade :renommage des classes `grid-` en `grillade-` pour éviter tout conflit
- Grillade : ajout du constructeur `medium-X` en plus de `small-X`
- Grillade : ajout des constructeus `-start`, `-end`, `-center`, `-space-between`, `-space-around`, `-space-evenly` pour l'alignement général de la grille
- Divers : ajout d'une variable pour supporter ou non IE11 : `$ie: true !default;`.
- Divers :ajout d'une variable pour supporter ou non WordPress : `$wordpress: false !default;`.
- Divers :`visually-hidden` devient un mixin
- Divers :corrections typo
## Changelog v7.1.2 (30 janvier 2019)
- ajout de la règle `@media (prefers-reduced-motion: reduce)`
- ajout de `@supports (display: grid)` dans le mixin de grille
## Changelog v7.1.1 (10 decembre 2018)
- patch correctif de gulpfile
## Changelog v7.1.0 (31 octobre 2018)
- mise à jour et meilleure intégration de gulp / postCSS :
- autoprefixer version postCSS (avec browserslist officielle),
- unprefix : pour supprimer les vieux préfixes inutiles
- flexbox-fixes : pour corriger les erreurs connues sur IE
- gap-properties : polyfill de gap -> grid-gap
- minification CSS avec CSSnano
- application de `white-space: pre-rap` sur les textarea
## Changelog v7.0.9 (24 octobre 2018)
- correction d'alignement vertical de `.nav-button`
## Changelog v7.0.8 (20 septembre 2018)
- suppression de `white-space: nowrap` sur les éléments de formulaire
## Changelog v7.0.7 (3 juillet 2018)
- cohérence de renommage pour les classes utilitaires (ajout du préfixe `.u-` uniformément)
## Changelog v7.0.5 (25 mai 2018)
- mise à jour des styles, SVG, et variables des checkbox, radio et switches
## Changelog v7.0.4 (04 avril 2018)
- ajout de `::placeholder` cf. issue #276
## Changelog v7.0.3 (01 mars 2018)
- suppression de commentaires inutiles
## Changelog v7.0.2 (04 janvier 2018)
- intégration de (auto)grid dans Grillade
## Changelog v7.0.1 (22 décembre 2017)
- meilleure gestion des hyphens
- mise en commentaire du fix SVG our IE11
## Changelog v7.0.0 (août - novembre 2017)
- modifications, mises à jour :
- architecture globale revisitée (vendor, config, library, components)
- remplacement de normalize.css par Bootstrap reboot.css
- déplacement des variables de gouttières de grillade.scss vers variables.scss
- déplacement des variables de breakpoints de breakpoints.scss vers variables.scss
- regroupement des styles des tableaux
- renommage des variables couleur de projets
- renommage des variables de composants
- renommage des variables d'espacement (`$tiny-value` -> `$spacer-micro`)
- automatisation des classes utilitaires via Sass
- suppression du namespace "kna-"
- refonte :
- système de grille (dorénavant basé sur Grid Layout)
- boutons, avec possibilités de variantes (primary, success, warning, etc.)
- styles de formulaires
- styles des tableaux
- l'objet autogrid passe en Grid Layout
- ajouts :
- des badges (tags), avec possibilités de variantes (primary, success, warning, etc.)
- des alertes, avec possibilités de variantes (primary, success, warning, etc.)
- d'un bouton de navigation `.nav-button`
- des checkbox, radio et bouton "switch" stylés
- des onglets (tabs)
- des flèches courantes (haut, droit, bas, gauche) en SVG data-URI
- création d'un mixin de grille
- création d'un mixin de tailles de polices (responsive)
- `* {min-width: 0}` pour éviter la valeur `auto` sur les flex-items et grid-items
## Changelog v6.1.2 (21 juin 2017)
- alignement des helpers flexbox sur ceux de Bootstrap (`.d-flex`, `.flex-row`, `.flex-column`, `.mr-auto`)
- alignement des breakpoints sur ceux de Bootstrap (576, 768, 992, 1200) et réorganisation des intervalles
- `tab-size: 2;` sur les `<pre>`
- passage en System Font Stack. cf. <https://css-tricks.com/snippets/css/system-font-stack/>
## Changelog v6.1.1 (21 avril 2017)
- amélioration du mixin "respond-to()"
## Changelog v6.1.0 (3 mars 2017)
- passage à [Normalize 5.0.0](https://github.com/necolas/normalize.css/blob/5.0.0/CHANGELOG.md)
- ajout de variables pour tailles de polices différentes sur petits et sur grands écrans (`$h1-size` et `$h1-size-l` par exemple). Par défaut, les tailles "mobile" sont appliquées, et les tailles "desktop" s'appliquent en min-width `$tiny +1`
- convention de nommage des variables pour faciliter les recherches : `$base-color` devient `$color-base`, `$link-color` devient `$link-color`, etc.
- typo fix
## Changelog v6.0.8 (10 janvier 2017)
- application de `$link-color-hover` uniquement si différent de `$link-color`
## Changelog v6.0.7 (7 décembre 2016)
- application de `$font-family-headings` uniquement si différent de `$font-stack-base`
## Changelog v6.0.6 (2 décembre 2016)
- Grillade : redéfinition du périmètre de `-small` : passe de `(min-width: ($tiny + 1)) and (max-width: $small)` à `(min-width: ($tiny + 1)) and (max-width: $medium)` (de 544px à 991px par défaut)
## Changelog v6.0.5 (1er décembre 2016)
- redéfinition des variables de breakpoints, à présent calées sur [celles de Bootstrap](https://v4-alpha.getbootstrap.com/layout/overview/#responsive-breakpoints)
## Changelog v6.0.4 (22 novembre 2016)
- renommage des variables
## Changelog v6.0.3 (10 novembre 2016)
- renommage `grid-item-*` en `item-*` pour éviter [les conflits](https://github.com/alsacreations/KNACSS/issues/222)
## Changelog v6.0.2 (27 octobre 2016)
- optimisation de la grille (de 8ko à 3ko pour la version Sass)
## Changelog v6.0.0 (26 septembre 2016)
- refonte intégrale de la grille de mise en forme (adoption de [grillade.css](http://grillade.knacss.com))
- suppression de include-media (cause de bugs d'encodage : cf. [#203](https://github.com/alsacreations/KNACSS/issues/203) / [#197](https://github.com/alsacreations/KNACSS/issues/197) , nécessite un temps d'apprentissage, et n'apporte pas grand chose au final).
- refonte des valeurs des Breakpoints et des classes responsive. [voir issue #210](https://github.com/alsacreations/KNACSS/issues/210)
- modularisation des fichiers et dossiers, classés par fonctions (config, vendor, library, objects, utility)
- ajout des objects courants : [media](http://codepen.io/raphaelgoetter/pen/KMWWwj) et [autogrid](http://codepen.io/raphaelgoetter/pen/KMgBJd?editors=1100)
- suppression des positionnements tabulaires. `.row`, `.col` et `.line` n'ont plus lieu d'être depuis Flexbox, pouvaient entrer en conflit avec d'autres frameworks et ne font que parasiter KNACSS
- amélioration du fichier Gulpfile.js
- corrections de bugs divers
- mise à jour de la doc
## Changelog v5.0.1 (24 mai 2016)
- les helpers de largeurs deviennent mobile-first et ne s'activent que sur écran d'une certaine taille. Ex. `.w700p {width: 700px;}` devient `@include media('>640px') {.w700p {width: 700px;}}`. Ainsi il n'est plus nécessaire de les écraser dans la feuille de style responsive.
## Changelog v5.0.0 (23 mai 2016)
- suppression du support IE8-IE9 (à partir de la version KNACSS 5.0, seul IE10 et supérieurs sont pris en charge)
- suppression du support LESS (à partir de la version KNACSS 5.0, seul le préprocesseur Sass est encore pris en charge pour des raisons de maintenabilité)
- mise à jour vers Normalize 4.1.1 : <https://github.com/necolas/normalize.css/blob/4.1.1/CHANGELOG.md>
- restructuration / renommage des fichiers avec préfixes `_config-`, `_layout-`, `_library-`, `_object-`, `_override-`
- ajout de la library include-media (<http://include-media.com/>) pour faciliter la gestion des media queries
- adaptation des variables de breakpoint pour les rendre compatibles avec include-media
- grille "grillade" à présent en mobile first (par défaut 1 colonne sur "tiny", 2 colonnes sur "small", valeurs modifiables)
- nommage de variables préfixé pour plus de maintenabilité : `$gutter` -> `$grid-gutter`, `$number` -> `$grid-number`, `$left` -> `$grid-left` et `$right` -> `$grid-right`
- renommage des éléments de grilles : `.flex-item-double` --> `.grid-item-double` (plus cohérent)
- ajout des éléments de layout : `.grid-item-first`, `.grid-item-medium` et `.grid-item-last`
- ajout de Table des Matières dans la feuille de style non minifiée
- adaptation des fichiers gulpfile, package.json et bower.json
- mise à jour de la documentation
## Changelog v4.4.5 (1er avril 2016)
- mise à jour vers Normalize 4 : <https://github.com/necolas/normalize.css/blob/4.0.0/CHANGELOG.md>
- application de min-width: 0 sur les flex-item-fluid pour éviter les minimum automatiques des flex-items
- suppression des styles spécifiques à Gmap (sélecteurs trop lourds pour un cas très particuliers)
## Changelog v4.4.4 (23 janvier 2016)
- mise à jour vers Normalize 3.0.3 : <https://github.com/necolas/normalize.css/>
- réalignement vertical des input et des label
## Changelog v4.4.3 (14 janvier 2016)
- ajout du patch `min-width: 0` sur les flex-items de grilles
## Changelog v4.4.2 (24 décembre 2015)
- correction d'un bug responsive des classes `.flex-item-double`
- création de la feuille de style dédiée aux grilles : _grillade.css_ pour ceux qui souhaitent se contenter des grilles de KNACSS
## Changelog v4.4.0 (12 décembre 2015)
- ajout de classes d'état dans les helpers (`is-disabled`, `is-hidden`, `is-visually-hidden`, `is-unstyled`)
- import de la feuille de style dédiée WordPress mise en commentaire par défaut et activable au besoin
- la taille de police de base est à présent de "1.4rem" et non un calcul en `em` à partir d'une valeur en pixels
- suppression de `@font-stack-universal` devenue inutile (servait dans les grilles inline-block)
- suppression de "helvetica, arial" dans les font-stacks par défaut (seul reste "sans-serif")
- ajout d'une classe `.bfc` (actuellement alias de l'existante `.mod`)
- ajout d'une classe `.no-wrapping` pour les éléments qui ne doivent pas adopter de césures sur petit écran
- ajout de classes helpers pour les marges automatiques (`.mtauto`, `mrauto`, `.mauto`, etc.)
## Changelog v4.3.6 (10 novembre 2015)
- modification de la valeur par défaut de gouttière (`1em` -> `2rem`)
- correction d'un `padding: none` en `padding: 0` dans styling.less|sass
## Changelog v4.3.5 (20 octobre 2015)
- correction de doublons
- ajout de `word-break: break-all` sur les liens en responsive
- suppression du `outline: 0` sur les boutons au focus
- correction de visuels dans la documentation
## Changelog v4.3.4 (27 août 2015)
- ajout des classes `.pull` et `.push` pour les offsets des grilles
- corrections de la doc Print et Commencer
- corrections de nommages reliquats : `.flexitem-double` -> `.flex-item-double`
- suppression des styles graphiques pour tableaux alternate et striped
- modifications sur la classe `.visually-hidden`
## Changelog v4.3.3 (6 août 2015)
- ajout de helpers (breakpoints responsive)
- modification du seuil de breakpoint pour les grilles inégales `@tiny-screen` -> `@small-screen`
- corrections feuille de style print (modifications plus faciles pour l'utilisateur)
## Changelog v4.3.1 (5 juillet 2015)
- Amélioration des grilles responsive. Par exemple la classe `grid-4-small-2-tiny-1` définira une grille de 4 colonnes sur grand écran, puis en 2 colonnes sur un écran réduit, puis en une seule colonne sur petit écran. La notation `grid-4` fonctionne toujours, mais ne sera pas automatiquement responsive.
## Changelog v4.3.0 (3 juillet 2015)
- Les grilles de KNACSS sont à présent rétrocompatibles jusqu'à IE8 et Android2 grâce à un fallback en `display: inline-block` pour ces anciens navigateurs. Cependant les fonctionnalités resteront limitées chez ces dinosaures (pas de `flex-item-double`, de `flex-item-first`, etc.)
## Changelog v4.2.3 (2 juillet 2015)
- Passage à l'indentation via 2 espaces et non plus tabulations (+ `.editorconfig` à jour)
- Répartition des styles tabulaires entre les fichiers `tables` et `styling`
- pas de namespace sur les classes `.clear`, `.clearfix` et `.visually-hidden`
- ajout d'une classe `.bfc` (identique à `.mod`) et qui crée un contexte de formatage block
## Changelog v4.2.2 (26 juin 2015)
- Ajout de !default aux variables SASS dans le fichier `_00-config.scss`
- Flex-container enhancement
- select element enhancement on webkit
- correction largeurs des grilles pour IE
- correction de divers doublons
## Changelog v4.2.1 (25 mai 2015)
- pour les grilles, suppression de l'alignement justifié par défaut (justify-content: space-between)
## Changelog v4.2.0 (05 mai 2015)
- possibilité d'ajouter un namespace à l'ensemble des classes (configurable dans le fichier config de Less et Sass)
## Changelog v4.1.6 (17 avril 2015)
- mise en commentaire des sauts de page print avant un h1
- correction d'anomalie sur les input (user-select: none)
- correction d'erreur de compilation Sass
## Changelog v4.1.4 (14 avril 2015)
- ajout de node_modules dans le .gitignore
- ajout d'un gulpfile.js et des dépendances dans package.json
- ajout de la classe .unstyled destinée aux éléments de formulaires
## Changelog v4.1.3 (13 avril 2015)
Les classes relatives à flexbox ont été renommées pour ne pas entrer en conflit avec des outils tels que Modernizer (qui ajoutent aux-aussi ce genre de classes).
Anciens noms :
```
.flexbox, .flexbox-h
.flexbox-v
.flexitem-fluid
.flexitem-center
.flexitem-first, .flexitem-medium, .flexitem-last
```
Nouveaux noms :
```
.flex-container, .flex-container-h
.flex-container-v
.flex-item-fluid
.flex-item-center
.flex-item-first, .flex-item-medium, .flex-item-last
```
## Changelog v4.1.1 (30 mars 2015)
## Vite fait
- grosse remise à jour, orientée vers les technos modernes (flexbox, rem, calc, ...) et moins de "bidouille"
- fin du support d'IE6-IE8 Si vous souhaitez utiliser KNACSS sur d'anciens navigateurs, préférez la [Version 3](https://github.com/raphaelgoetter/KNACSS/tree/3.1.0)
- ajout du reset [normalize.css](http://necolas.github.io/normalize.css/)
- un grand merci à @7studio pour ses conseils et observations sur la version beta de KNACSS 4.0
- attention : rétrocompatibilité non préservée pour certaines classes ( .left, .start, .txtleft, .fl, .table-, .flex-start, .flex-end)
- attention : rétrocompatibilité non préservée pour les grilles de mise en page (passage à flexbox et simplification de la structure)
## Done
- documentation en français
- PDF pense-bête mis à jour : <http://knacss.com/KNACSS-cheatsheet.pdf>
- gros ménage de printemps (gros nettoyage de tous les espaces et tabulations disgrâcieux)
- dans la section "quick print reset", ajout des classes .p-like, h1-like, h2-like etc.
- mise en commun globale de tous les styles p avec .p-like (h1 et h1-like, etc.).
- déplacement et commentaire sur la règle body > script
- correction du bug des height: auto sur les images au format SVG
- meilleure intégration de box-sizing
- suppression du fichier dédié aux réglages des bugs des anciennes versions d'IE6-IE8
- fin du support d'IE9 pour les grilles : KNACSS v4 compatible IE10+ pour ce qui concerne les mises en page en grilles (flexbox FTW!)
- réorganisation des fichiers (le fichier dédié "IE.css" disparait, le fichier "booleans" devient "misc" (plus cohérent), le fichier "gmaps" est désormais inclus dans "misc")
- ajout des préfixes ".table-" devant les styles de décoration des tableaux
- suppression du fichier icons.css, statistiquement inutile en pratique
- meilleure cohérence de nommage entre .left, .start, .txtleft, .fl
- ajout d'un fichier de reset dédié à WordPress
- refonte intégrale des grilles en Flexbox (et en plus ça marche sur IE10 !)
- ajout d'un fichier .editorconfig (<http://editorconfig.org/>)
- passage des :before/:after en ::before/::after
- ajout de sourcemaps CSS
- suppression des images noir et blanc forcées en media print
- correction de la formule LESS `{calc(1em * .625);`
- ajout du reset [normalize.css](http://necolas.github.io/normalize.css/)
- mise à jour du générateur de gabarits [Schnaps.it](http://schnaps.it/)

File diff suppressed because one or more lines are too long

5563
css/knacss-full/knacss.css Normal file

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,66 +0,0 @@
# KNACSS
http://www.knacss.com
KNACSS, c'est un peu comme une feuille de style CSS "reset" sur-vitaminée qui permet de commencer un projet à partir de zéro tout en tenant compte de bonnes pratiques générales (accessibilité, performance, responsive webdesign).
KNACSS prend en charge les styles de base, mais également la typographie, les modèles de boîte, les alignements et positionnements d'éléments, les grilles de mise en page, dans l'esprit d'être adapté à toutes les tailles d'écran (reponsive). Le tout automatiquement !
Conçu par l'agence web [Alsacreations.fr](http://alsacreations.fr) et pensé pour être couplé avec des préprocesseurs tels que LESS ou Sass, le micro-framework KNACSS est employé quotidiennement sur toute sorte de projets web quel que soit son type ou son envergure.
## Installation
La version courte est "il n'y a rien à installer".
Selon votre environnement de travail vous suffit de récupérer la feuille de styles :
- en version [CSS classique](https://raw.githubusercontent.com/raphaelgoetter/KNACSS/master/css/knacss-unminified.css) (ou [minifié](vhttps://raw.githubusercontent.com/raphaelgoetter/KNACSS/master/css/knacss.css))
- en version [LESS](https://github.com/raphaelgoetter/KNACSS/tree/master/less)
- en version [Sass](https://github.com/raphaelgoetter/KNACSS/tree/master/sass)
_Les versions LESS et Sass seront bien évidemment plus malléables grâce à l'apport de variables et fonctions._
## Usage
KNACSS n'est constitué que d'un seul fichier CSS (minifié ou non selon vos goûts), qu'il vous suffit d'ajouter à votre page HTML :
<link rel="stylesheet" href="knacss.css">
Il est également possible de l'installer (toutes versions) via [Bower](http://bower.io/) : ```bower install knacss```
## RTFM!
KNACSS se veut être un outil simple (contrairement aux usines à gaz que sont Bootstrap ou Foundation), mais évolutif.
La contrepartie est que cela nécessite de votre part de bonnes connaissances en CSS et un petit effort de compréhension et de d'apprentissage des mécanismes de l'outil.
Une [**documentation**](https://github.com/raphaelgoetter/KNACSS/tree/master/doc) détaillée et illustrée est en cours de rédaction. Je vous invite vivement à la parcourir avant de vous jeter sur KNACSS.
## Préprocesseurs
KNACSS est conçu et pensé pour être adapté aux préprocesseurs que sont LESS et Sass. Nous employons LESS en interne, nos fichiers de travail sont donc des `.less` et non des `.css` (cela fonctionne aussi avec Sass).
Si, comme nous, vous intégrez à l'aide de préprocesseurs, KNACSS va vous faciliter la vie dès le début du projet puisqu'un [fichier de configuration](https://github.com/raphaelgoetter/KNACSS/blob/master/less/_00-config.less) contenant toutes les variables du projet est intégré.
Libre à vous de le modifier selon les contraintes de votre projet.
**Attention**, si vous importez KNACSS automatiquement via Bower par exemple (dans un dossier `vendor`), ce fichier de configuration risque d'être écrasé à chaque mise à jour de KNACSS. Nous vous invitons à en faire une copie dans votre dossier de travail et à commenter l'appel au fichier de config de `vendor`.
Dans le cas d'un usage via préprocesseur, vos deux fichiers de travail principaux seront :
- le fichier `less/_00-config.less` contenant toutes les variables du projet à définir une fois pour toute au départ
- le fichier `less/knacss.less` qui importe tous les fichiers que vous risquez d'employez dans votre projet (`layout.css`, `responsive.css`, `forms.css`, `print.css`, etc.).
En cours de développement, il vous suffit de compiler ce fichier `less/knacss.less` (ou `less/knacss.scss`) pour obtenir vos fichiers CSS utiles.
### Préfixes navigateurs
Certaines fonctionnalités avancées de KNACSS nécessitent d'employer toute une panoplie de préfixes CSS (`-webkit-`, `-moz-`, `-ms-`, ...) pour être certain que les propriétés CSS fonctionneront partout.
Au sein de la version classique CSS de KNACSS, l'ensemble des préfixes est présent, **vous n'avez donc pas à vous en soucier** (Autoprefixer réglé à "last 2 versions").
**Par contre, dans les versions LESS et Sass de KNACSS, les préfixes n'apparaissent pas** pour ne pas polluer la lecture du fichier de travail. **Il vous sera donc nécessaire de les ajouter**, de préférence automatiquement grâce à un plugin ou aux excellents outils que sont [autoprefixer](https://github.com/postcss/autoprefixer) ou [pleeease](http://pleeease.io/).
## Liens utiles
* Site web de KNACSS : http://knacss.com
* [**Documentation détaillée**](https://github.com/raphaelgoetter/KNACSS/tree/master/doc)
* Sur Alsacreations.com : ["découverte du framework KNACSS"](http://www.alsacreations.com/tuto/lire/1577-decouverte-du-framework-css-KNACSS.html)

View file

@ -1,34 +0,0 @@
# Typographie
Accessible avant tout, KNACSS propose une gamme de tailles de polices d'unités fluides (`em`, `rem`) plutôt que le pixel, figé et non malléable, donc moint accessible.
En résumé, voilà les bases typographiques de KNACSS :
- choix d'unités fluides (`em`, `rem`)
- taille de police définie à 62.5% sur HTML (soit un équivalent de 10px, très pratique pour les conversions en rem)
- taille de base des contenus de 1.4em (soit un équivalent de 14px) modifiable dans la configuration LESS / Sass
- tailles de polices définies pour les niveaux de titres et des modificateurs tels que `.small`, `.smaller`, `.big`, `.bigger`, etc.
## Reset "light"
Le reset de KNACSS est volotairement minimal, le but n'étant pas de tout mettre à zéro pour le redéfinir par la suite.
La feuille de style débute ainsi par une variante de l'incontournable `* {box-sizing: border-box}` afin d'imposer le très pratique modèle de boîte CSS3 à tous les éléments du document.
S'en suivent quelques mises à zéro de marges, alignements par défaut des images, et quelques spécificités sur des élements tels que `blockquote`, `figure`, `canvas`, `video` ou autres `svg`.
## Masquage
À noter que KNACSS prévoit une classe dédiée aux éléments devant être masqués sur écrans graphiques tout en demeurant accessibles aux assistances techniques. Il s'agit de la classe `.visually-hidden`, où le choix des hideux mots-clés `!important` se justifie :
```css
.visually-hidden {
position: absolute !important;
border: 0 !important;
height: 1px !important;
width: 1px !important;
padding: 0 !important;
overflow: hidden !important;
clip: rect(1px, 1px, 1px, 1px) !important;
}
```

View file

@ -1,64 +0,0 @@
# Alignements
Différentes classes utilitaires intégrées à KNACSS sont prévues pour gérer les alignements d'éléments.
- les textes et contenus "inline" sont gérés via les classes `.txtleft`, `.txtright` et `.txtcenter` qui agiront sur la propriété CSS `text-align`
- les blocs sont alignés avec les classes `.left`, `.right` et `.center` qui affectent la valeur `auto` à la propriété `margin`
- les flottements sont gérés via les classes `.fl` (pour `float: left`) et `.fr` (pour `float: right`)
## Cas des flottants et les .mod
Le positionnement flottant compte parmi les plus employés mais n'est pas exempt d'inconvénients. Le principal étant d'être un positionnement hors du flux qui nécessitera des ajustements (clearfix et autres anti-débordements).
KNACSS a prévu des classes spécifiques pour mieux vous en sortir avec les flottants :
- **le super élément `.mod`**. Il a plein d'avantages: il contient les flottants (ils ne débordent pas) et il ne s'écoule pas autour d'un frère flottant (il s'affiche proprement à côté) et il crée un [contexte "BFC"](http://www.alsacreations.com/astuce/lire/1543-le-contexte-de-formatage-block-en-css.html)
- `.clearfix`. Les éléments disposant de cette classe contiennent les flottants, tel les `.mod`
- les éléments `.clear`, `.line` et `.row` bénéficient d'un autre pouvoir : celui de toujours se pousser sous un flottant précédent. Il sont dédiés aux empilements verticaux des contenus.
## Concrètement : je veux faire quoi ?
### Centrer horizontalement
#### Du texte ou une image
HTML :
```html
<div class="txtcenter">
<img src="licorne.png" alt="aïe ça pique">
</div>
```
#### Un bloc
HTML :
```html
<section>
<div class="center w50">centré horizontalement</div>
</section>
```
### Centrer verticalement
![centrer verticalement](https://raw.githubusercontent.com/raphaelgoetter/KNACSS/master/doc/illust/02-layout.png)
Version table-cell (HTML) :
```html
<section class="col">
<div class="w50 center">centré horizontalement et verticalement</div>
</section>
```
Version table-cell (CSS) :
```css
section {
vertical-align: middle;
}
```
Version flexbox (HTML):
```html
<section class="flexbox-v">
<div class="center w50">centré horizontalement et verticalement</div>
</section>
```

View file

@ -1,166 +0,0 @@
# Positionnements avec KNACSS
Au-delà des alignements d'éléments, KNACSS permet de positionner et d'architecturer vos gabarits à travers plusieurs solutions.
Dans cette page de documentation, nous étudierons en détail chaque cas concret auquel vous risquez d'être confronté et proposerons une réponse adaptée.
## Différents choix offerts
Les types de positionnements inclus nativement dans KNACSS sont les suivants :
- positionnement flottant
- positionnement avec `display: inline-block`
- positionnement avec `display: table-cell`
- positionnement avec Flexbox
Il n'y a pas de mystère : chaque type de positionnement est capable de répondre à différents types de contraintes. Il n'y a pas de meilleur choix qu'un autre.
Votre décision pourra être guidée par les indices suivants :
- il est généralement plus profitable de ne pas opter pour des positionnement hors-flux (`float`, `position: absolute`)
- Flexbox est certainement le modèle le plus polyvalent et propre, mais n'est compatible qu'à partir de IE10+.
## Concrètement : je veux faire quoi ?
### Deux blocs voisins de largeur fixe
![Deux blocs voisins de largeur fixe](https://raw.githubusercontent.com/raphaelgoetter/KNACSS/master/doc/illust/03-layout1.png)
Les choix offerts avec KNACSS :
#### flottant et flottant
La classe `.fl` pour `float: left` permet à un élément d'être flottant à gauche.
Il vous suffit de faire flotter vos deux éléments et de leur attribuer la largeur souhaitée pour qu'ils s'affichent l'un à côté de l'autre :
HTML :
```html
<div class="fl w400p">premier</div>
<div class="fl w400p">deuxième</div>
```
- **Avantage :** simple, rapide, intuitif, hyper compatible
- **Inconvénient :** positionnement hors du flux, nécessitera des ajustements (clearfix et autres anti-débordements)
#### inline-block et inline-block
La propriété `display: inline-block` (sous forme de classe `.inbl` chez KNACSS) permet à un élément de s'afficher tel un "inline" tout en étant dimensionné.
HTML :
```html
<div class="inbl w400p">premier</div>
<div class="inbl w400p">deuxième</div>
```
- **Avantage :** positionnement dans le flux, compatible dès IE8
- **Inconvénient :** un espace "whitespace" apparaîtra entre les deux div et nécessitera de coller les balises ou de bidouiller en CSS pour être supprimé
#### table-cell et table-cell
HTML :
```html
<div class="row">
<div class="col w400p">premier</div>
<div class="col w400p">deuxième</div>
</div>
```
- **Avantage :** positionnement dans le flux, compatible dès IE8
- **Inconvénient :** Le positionnement tabulaire observe [des règles parfois complexes](http://www.alsacreations.com/tuto/lire/1522-le-modele-tabulaire-en-css.html) et surprenantes pour les non habitués.
#### flexbox
HTML :
```html
<div class="flexbox">
<div class="w400p">premier</div>
<div class="w400p">deuxième</div>
</div>
```
- **Avantage :** fluide, propre, simple
- **Inconvénient :** compatibilité IE10 minimum
### Deux blocs voisins dont un fixe et un fluide
![Deux blocs voisins de largeur fixe et fluide](https://raw.githubusercontent.com/raphaelgoetter/KNACSS/master/doc/illust/03-layout2.png)
Les choix offerts avec KNACSS :
#### flottant et .mod
HTML :
```html
<div class="fl w400p">premier</div>
<div class="mod">deuxième</div>
```
#### inline-block et inline-block
Pas possible [Résolu]
#### table-cell et table-cell
HTML :
```html
<div class="row">
<div class="col w400p">premier</div>
<div class="col">deuxième</div>
</div>
```
#### flexbox
HTML :
```html
<div class="flexbox">
<div class="w400p">premier</div>
<div class="flexitem-fluid">deuxième</div>
</div>
```
### Deux blocs voisins de même hauteur
![Deux blocs voisins de même hauteur](https://raw.githubusercontent.com/raphaelgoetter/KNACSS/master/doc/illust/03-layout3.png)
Les choix offerts avec KNACSS :
#### flottant et flottant
Pas possible [Résolu]
#### inline-block et inline-block
Pas possible [Résolu]
#### table-cell et table-cell
Par défaut, les éléments constituant des "cellules de tableau", donc `table-cell` ont automatiquement la même hauteur entre frères. Il n'y a donc rien à faire si l'on opte pour ce positionnement : ça marche tout seul.
HTML :
```html
<div class="row">
<div class="col">premier</div>
<div class="col">deuxième</div>
</div>
```
#### flexbox
Là aussi c'est automatique : les enfants d'un conteneur `flexbox` ont tous par défaut la même hauteur.
HTML :
```html
<div class="flexbox">
<div>premier</div>
<div>deuxième</div>
</div>
```
### Plusieurs blocs voisins de même taille
![grilles](https://raw.githubusercontent.com/raphaelgoetter/KNACSS/master/doc/illust/03-layout4.png)
Si vous souhaitez réaliser des constructions de plusieurs éléments de même taille (fixe ou fluide) avec ou sans espace entre les éléments (gouttière), je vous invite à prendre connaissance des possibilités de **grilles** offertes par KNACSS.
Voir **[la Doc au point 03-grilles](https://github.com/raphaelgoetter/KNACSS/blob/master/doc/03-grilles.md)**.

View file

@ -1,165 +0,0 @@
# Grilles de mise en page
Il existe deux types principaux de systèmes de grilles dans KNACSS :
- Les grilles à colonnes égales
- Les grilles à colonnes inégales
Dans les deux cas, la technique associée depuis KNACSS v4 pour concevoir les grilles est **CSS3 Flexbox**, ce qui signifie que la compatibilité de **cette fonctionnalité sera réservée aux [navigateurs modernes](http://caniuse.com/#search=flexbox)** (IE10, Android 4.4+ et tous les autres).
**NOTE pour les utilisateurs de LESS / Sass :** par défaut, les grilles sont activées dans KNACSS. Si vous avez le moindre souci, vérifiez que `@import "_03-grids";` est présent et non commenté dans votre fichier `less/knacss.less` ou `sass/knacss.scss`).
## Précautions à prendre
Qui dit CSS3 dit précautions à prendre.
La bonne nouvelle est que Flexbox est plutôt bien reconnu par l'ensemble des navigateurs de la planète; la mauvaise est que certains anciens navigateurs (Android par exemple) ne reconnaissent que certaines versions précédentes des spécifications. Il est donc encore nécessaire d'employer toute une panoplie de préfixes CSS (`-webkit-`, `-moz-`, `-ms-`, ...) pour être certain que vos grilles fonctionneront partout.
Au sein de la version CSS de KNACSS, l'ensemble des préfixes est présent, **vous n'avez donc pas à vous en soucier**.
**Par contre, dans les versions LESS et Sass de KNACSS, les préfixes n'apparaissent pas** pour ne pas polluer la lecture du fichier de travail. **Il vous sera donc nécessaire de les ajouter**, de préférence automatiquement grâce à un plugin ou aux excellents outils que sont [autoprefixer](https://github.com/postcss/autoprefixer) ou [pleeease](http://pleeease.io/).
## Exemple concret
Pour vous faire une idée, et jouer avec les valeurs possibles, vous trouverez [un exemple "bac à sable"](http://codepen.io/raphaelgoetter/pen/BybOag?editors=110) sur CodePen.
**Exemple de grille de colonnes égales :**
![grille de largeur égale](https://raw.githubusercontent.com/raphaelgoetter/KNACSS/master/doc/illust/03-grid-even.png)
**Exemple de grille de colonnes inégales (3/4 - 1/4) :**
![grille de largeur inégale](https://raw.githubusercontent.com/raphaelgoetter/KNACSS/master/doc/illust/03-grid-uneven.png)
## Mise en oeuvre
Il est très simple de construire une grille, il vous suffit :
- D'un **conteneur**
- D'autant **d'enfants** que vous souhaitez
Le **conteneur** sera l'élément HTML que vous voulez (`div`, `section`, `ul`, ...). Il vous suffit simplement de le munir d'une classe selon votre choix de grille :
- `.grid-2`, `.grid-3`, `.grid-4`, ... `.grid-12` pour les grilles de largeur égale
- `.grid-2-1`, `.grid-1-2`, `.grid-3-1`, `.grid-1-3`, `.grid-3-2`, `.grid-2-3`, `.grid-4-1`, `.grid-1-4` pour les grilles de largeurs inégales (`.grid-2-1` vaut pour "2/3 - 1/3" par exemple).
Par défaut, chaque colonne est séparée de sa voisine par une gouttière dont la largeur par défaut est `1em`. Pour modifier ce réglage, il sera nécessaire de passer par la version préprocesseur (LESS, Sass) de KNACSS (voir plus loin).
Les **enfants** directs d'un conteneur, quels qu'ils soient, se répartissent automatiquement au sein de la grille formée par leur conteneur. Par exemple, 6 enfants contenus dans un parent de classe `.grid-3` se répartiront en 3 colonnes de 2 lignes.
## Offsets
Il vous est très facile de "pousser" un élément à droite ou à gauche de sa ligne dans la grille, et créer ainsi un espacement volontaire, ce que l'on appelle "offset".
Pour cela, appliquez simplement l'une ou l'autre de ces déclarations sur l'élément :
- `margin-left: auto` pour le pousser à droite sur sa ligne (ou avec la classe `.left`)
- `margin-right: auto` pour le pousser à gauche sur sa ligne (ou avec la classe `.right`)
![offset](https://raw.githubusercontent.com/raphaelgoetter/KNACSS/master/doc/illust/03-offset.png)
## Mise en exergue
Il est possible de mettre un élément particulier en exergue, en **doublant sa taille** par rapport aux autres, tout en conservant un agencement parfait de la grille.
Pour ce faire, appliquez la classe `.flexitem-double` à cet élément.
![mise en exergue](https://raw.githubusercontent.com/raphaelgoetter/KNACSS/master/doc/illust/03-double.PNG)
## Pousser au début ou à la fin
Vous pouvez modifier l'ordre d'affichage des éléments au sein d'une grille à l'aide des classes :
- `.flexitem-first` (l'élément apparaîtra avant tous les autres)
- `.flexitem-last` (l'élément apparaîtra tout à la fin de la grille)
![preums!](https://raw.githubusercontent.com/raphaelgoetter/KNACSS/master/doc/illust/03-first.PNG)
## Plus loin avec les préprocesseurs
KNACSS est pensé pour être utilisé à l'aide de preprocesseurs tels que LESS ou Sass. Il existe par conséquent un fichier de variables de configuration et des mixins prévus pour étendre les possibilités des grilles notamment.
### Modifier les variables globales
Les variables de configuration des grilles se trouvent dans le fichier `less/_00-config.less` (pour les utilisateurs de LESS) et `sass/_00-config.scss` (en version Sass) :
```css
@gutter: 1em;
@number: 4; // for equal columns
@left: 2; // left side of uneven columns
@right: 1; // right side of uneven columns
```
Il vous suffit de modifier les valeurs de ces variables de config pour répercuter vos préférences sur l'ensemble du projet dès que vos fichiers LESS/Sass seront compilés en CSS.
### Générer des grilles personnalisées
Indépendamment des variables de configuration, rien de vous empêche de créer une grille personnalisée en incluant directement l'un des deux mixins possibles dans vos éléments :
- `.grid(n)` pour personnaliser une grille de colonnes **égales**. Les arguments sont "n" = nombre de colonnes
- `.uneven-grid(l,r)` pour personnaliser une grille de colonnes **inégales**. Les arguments sont "l" = pour le ratio de la colonne de gauche, "r" = pour le ratio de la colonne de droite
#### Grille de colonnes égales en LESS
**Objectif : je souhaite que mon élément `.grid-container` crée une grille de 6 colonnes égales**
LESS (fichier de développement) :
```css
.grid-container {
.grid(6);
}
```
CSS compilé (sans Autoprefixer) :
```css
.grid-container {
display: flex;
flex-direction: row;
flex-wrap: wrap;
margin-left: -1em;
}
.grid-container > * {
flex: 0 0 auto;
width: 16.66666667%;
display: block; /* IE fix */
border-left: 1em solid transparent;
background-clip: padding-box !important; /* no background on border */
}
...
```
#### Grille de colonnes inégales en LESS
**Objectif : je souhaite que mon élément `.grid-truc` crée une grille de 2 colonnes réparties en 2/3 et 1/3.**
LESS (fichier de développement) :
```css
.grid-truc {
.uneven-grid(2, 1);
}
```
CSS compilé (sans Autoprefixer) :
```css
.grid-truc {
display: flex;
flex-direction: row;
flex-wrap: wrap;
margin-left: -1em;
}
.grid-truc > * {
display: block; /* IE fix */
border-left: 1em solid transparent;
background-clip: padding-box !important; /* no background on border */
}
.grid-truc > *:nth-child(odd) {
width: 66.66666667%;
}
.grid-truc > *:nth-child(even) {
width: 33.33333333%;
}
...
```
## Article associé
Si vous voulez comprendre dans le détail le fonctionnement des grilles Flexbox de KNACSS, je vous invite à suivre l'article d'Alsacréations ["Une grille responsive avec CSS3 Flexbox et LESS (ou Sass)"](http://www.alsacreations.com/tuto/lire/1659-une-grille-responsive-avec-flexbox-et-LESS.html).

View file

@ -1,38 +0,0 @@
# Tableaux de données
KNACSS propose une feuille de style minimale appliquée aux tableaux de données ainsi qu'aux éléments disposant d'une classe `.table`.
Pour débuter, KNACSS impose un modèle d'affichage fixé à tous les tableaux via `table-layout: fixed;`. Ainsi, ce ne sera plus le contenu qui décidera de la largeur des cellules, mais ce que vous aurez spécifié dans les tailles CSS.
```css
table,
.table {
width: 100%;
max-width: 100%;
table-layout: fixed;
border-collapse: collapse;
vertical-align: top;
border: 1px solid #ccc;
}
.table {
display: table;
}
table#recaptcha_table,
table.table-auto {
table-layout: auto;
}
caption {
padding: 10px;
color: #555;
font-style: italic;
}
td,
th {
padding: 0.3em 0.8em;
border: 1px #aaa dotted;
vertical-align: top;
min-width: 20px;
cursor: default;
text-align: left;
}
```

View file

@ -1,12 +0,0 @@
# Formulaires
Afin d'harmoniser l'affichage par défaut des éléments de formulaires au sein de l'ensemble des navigateurs, un certain nombre de styles est prévu dans KNACSS.
Pour constituer cette base de "bonnes pratiques", les crédits reviennent notamment aux ressources suivantes :
- [HTML5boilerplate](https://html5boilerplate.com/),
- [github.com/nathansmith/formalize](http://github.com/nathansmith/formalize),
- [sitepen.com](http://www.sitepen.com)
Le reset "formulaire" de KNACSS tient compte des éléments suivants : `form`, `input`, `fieldset`, `button`, `select`, `label`, `legend`, `textarea`, etc.
Notez également qu'en attribuant la classe `.btn` à un élément, vous le considérerez (et stylerez) tel un bouton de formulaire.

View file

@ -1,148 +0,0 @@
# Helpers
Les "Helpers" sont des classes purement visuelles et utilitaires (non "sémantiques"), pas très jolie mais rudement pratiques en production pour alléger vos feuilles de styles.
**Attention toutefois !** Ce type de classes conduit fréquemment [à des abus au sein de votre code HTML](http://blog.goetter.fr/2014/11/10/bien-utiliser-un-framework-css/).
Par exemple, Si vous avez 20 images au comportement identique dans la page, ne les affublez pas de classes visuelles multiples telles que `img class="mod clearfix left inbl w200p pas mb1 large-mb2 small-mbn"` mais optez plutôt pour une classe personnalisée : `img class="media"` par exemple.
**Méthode :** Limitez-vous à 4 noms de classes au grand maximum par élément HTML. Si vous pensez quil vous en faut davantage, il est temps denvisager une classe personnalisée, ou de profiter des pré-processeurs CSS.
_Les valeurs de helpers peuvent être modifiées au sein du fichier de configuration LESS / Sass._
## les Helpers de largeur
Largeurs fluides (en pourcentage) :
```css
.w10 {
width: 10%;
}
.w20 {
width: 20%;
}
.w25 {
width: 25%;
}
...
.w100 {
width: 100%;
}
```
Largeurs fixes (en pixel) :
```css
.w50p {
width: 50px;
}
.w100p {
width: 100px;
}
.w150p {
width: 150px;
}
...
.w960p {
width: 960px;
}
.w1140p {
width: 1140px;
}
```
Largeurs spéciales :
```css
.mw960p {
max-width: 960px;
}
.mw1140p {
max-width: 1140px;
}
.wauto {
width: auto;
}
```
## les Helpers d'espacement
Les herpers d'espacement comportent des classes dédiées aux marges externes (margin) et aux marges internes (padding).
Leur nommage est assez intuitif :
- p,m = padding, margin
- a,t,r,b,l = all, top, right, bottom,left
- s,m,l,n (ou 0) = small, medium, large, none (ou 0)
Exemples :
- `.prs` signifie "padding-right small" (où "small" est défini dans votre fichier de configuration, par défaut 5px)
- `.man` signifie "margin all none" (fonctionne aussi avec la syntaxe `.ma0`)
### les marges externes (margin)
```css
.man,
.ma0 {
margin: 0;
}
.mas {
margin: 10px;
}
.mam {
margin: 20px;
}
.mal {
margin: 40px;
}
.mtn,
.mt0 {
margin-top: 0;
}
.mts {
margin-top: 10px;
}
.mtm {
margin-top: 20px;
}
.mtl {
margin-top: 40px;
}
...
```
### les marges internes (padding)
```css
.ptn,
.pt0 {
padding-top: 0;
}
.pts {
padding-top: 10px;
}
.ptm {
padding-top: 20px;
}
.ptl {
padding-top: 40px;
}
.prn,
.pr0 {
padding-right: 0;
}
.prs {
padding-right: 10px;
}
.prm {
padding-right: 20px;
}
.prl {
padding-right: 40px;
}
...
```

View file

@ -1,118 +0,0 @@
# Responsive Webdesign
## Points de rupture
Par défaut, KNACSS tient compte des valeurs de points de rupture suivants :
- "tiny" : correspond à une fenêtre de 480px ou moins
- "small" : correspond à une fenêtre entre 481px et 768px inclus
- "medium"correspond à une fenêtre entre 769px et 1024px inclus
- "large"correspond à une fenêtre entre 1025px et 1280px inclus
- "extra-large"correspond à une fenêtre entre 1281px et 1600px inclus
- "ultra-large"correspond à une fenêtre à partir de 1601px
_Les valeurs des points de rupture peuvent être modifiées au sein du fichier de configuration LESS / Sass._
## Préfixes de classe
Pour les points de rupture "large", "medium", "small" et "tiny", des préfixes de classes ont été introduits dans KNACSS :
- `.large-*` : préfixe KNACSS destiné aux styles sur écrans larges
- `.medium-*` : préfixe KNACSS destiné aux styles sur écrans medium
- `.small-*` : préfixe KNACSS destiné aux styles sur écrans small
- `.tiny-*` : préfixe KNACSS destiné aux styles sur écrans tiny
### Exemple : le point de rupture "tiny"
Voici quelques-unes des classes dédiées aux écrans de très petite taille&hellip; Le mot-clé `!important` est nécessaire pour être certain que les styles écrasent bien les styles appliqués par défaut.
Masquage / visibilité :
```css
.tiny-hidden {
display: none !important;
}
.tiny-visible {
display: block !important;
}
```
Modèles d'affichage :
```css
.tiny-no-float {
float: none;
}
.tiny-inbl {
display: inline-block;
float: none;
vertical-align: top;
}
.tiny-row {
display: table !important;
table-layout: fixed !important;
width: 100% !important;
}
.tiny-col {
display: table-cell !important;
vertical-align: top !important;
}
```
Largeurs :
```css
.tiny-w25 {
width: 25% !important;
}
.tiny-w33 {
width: 33.3333% !important;
}
.tiny-w50 {
width: 50% !important;
}
.tiny-w66 {
width: 66.6666% !important;
}
.tiny-w75 {
width: 75% !important;
}
.tiny-w100,
.tiny-wauto {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
```
Marges :
```css
.tiny-man,
.tiny-ma0 {
margin: 0 !important;
}
.tiny-pan,
.tiny-pa0 {
padding: 0 !important;
}
```
## Règles de styles particulières
```css
@media (min-width: 1025px) {
/* rules for big resources and big screens like: background-images, font-faces, etc. */
}
```
```css
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi), (min-resolution: 2dppx) {
/* style adjustments for high density devices */
}
```

View file

@ -1,77 +0,0 @@
# Styles d'impression
KNACSS impose une mise en forme d'impression par défaut, à savoir :
- suppression des couleurs de fond des éléments
- suppression des ombrages de boîte et de texte
- largeur automatique à la page (body)
- couleur de texte #333, couleur de page blanche, taille de texte 12 points, etc.
```css
* {
background: transparent !important;
box-shadow: none !important;
text-shadow: none !important;
}
body {
width: auto !important;
margin: auto !important;
font-family: serif;
font-size: 12pt;
background-color: #fff !important;
color: #333 !important;
}
```
KNACSS gère également les sauts de pages, les lignes veuves et orphelines :
```css
/* no orphans, no widows */
p,
.p-like,
blockquote {
orphans: 3;
widows: 3;
}
/* no breaks inside these elements */
blockquote,
ul,
ol {
page-break-inside: avoid;
}
/* page break before main headers */
h1,
.h1-like {
page-break-before: always;
}
/* no breaks after these elements */
h1,
.h1-like,
h2,
.h2-like,
h3,
.h3-like,
caption {
page-break-after: avoid;
}
```
Une classe spécifique permet d'afficher ou de masquer du contenu sur imprimante :
```css
.print {
display: block;
}
.no-print {
display: none;
}
```
Bonus : par défaut, KNACSS décide de rendre toutes les images noir et blanc (sauvons les cartouches d'encre !) :
```css
img {
-webkit-filter: grayscale(100%);
filter: grayscale(100%);
}
```

View file

@ -1,71 +0,0 @@
# Divers
La feuille de style "fourre-tout" de KNACSS, où l'on retrouve des règles pratiques dans certains contextes, mais pas suffisamment universelles pour être appliquées par défaut dans un framework.
## Liens d'évitement
Les [liens d'évitement](http://www.alsacreations.com/tuto/lire/572-Les-liens-d-evitement.html) sont prévus pour faciliter la navigation au clavier, ils sont indispensable dans une optique de parfaite accessibilité.
KNACSS propose des styles par défaut pour ces liens : masqués au départ, ils deviennent visibles lorsque la touche `tab` est utilisée.
```css
.skip-links {
position: absolute;
}
.skip-links a {
position: absolute;
overflow: hidden;
clip: rect(1px, 1px, 1px, 1px);
padding: 0.5em;
background: black;
color: white;
text-decoration: none;
}
.skip-links a:focus {
position: static;
overflow: visible;
clip: auto;
}
```
## Césures
KNACSS gère automatiquement les césures et les mots longs dès lors que le point de rupture "small" est atteint.
```css
@media (max-width: 768px) {
/* you shall not pass */
div,
textarea,
table,
td,
th,
code,
pre,
samp {
word-wrap: break-word;
-webkit-hyphens: auto;
-moz-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
}
}
```
## Google maps
KNACSS règle les bugs d'affichage dans le cas spécifique des images google.
```css
.gm-style img {
height: 100%;
}
:not(.gm-style) img {
height: auto;
}
.gm-style img,
.gmnoscreen img,
.gmnoprint img {
max-width: none !important;
}
```

View file

@ -1,11 +0,0 @@
# Décorations diverses
Dans cette feuille de style, KNACSS apporte un minimum de décoration à divers éléments habituels.
Il ne s'agit pas d'un "reset" mais bien d'une couche de design qu'il n'est bien entendu pas du tout indispensable de conserver.
- les élements de code (`code`, `pre`)
- le surlignement (`mark`)
- les contenus en exposant ou en indice (`sup`, `sup`)
- les citations (`q`, `blockquote`)
- les séparateurs (`hr`)
- les tableaux de données

View file

@ -1,5 +0,0 @@
# Styles WordPress
Cette feuille de style, exclusivement dédiée au CMS WordPress, constitue en un "reset" de base pour cet outil que nous employons fréquemment au sein de l'agence Alsacréations.fr.
C'est Geoffrey Crofte qui a conçu ce fichier de bonnes pratiques (basée sur un socle proposé par Automattic), n'hésitez pas à le contacter sur son site perso [CreativeJuiz](http://www.creativejuiz.fr/) si vous avez la moindre question à son propos.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

55
gulpfile.js Executable file
View file

@ -0,0 +1,55 @@
const gulp = require('gulp');
var sass = require('gulp-sass');
var postcss = require('gulp-postcss');
var CombineMQ = require('postcss-combine-media-query');
var autoprefixer = require('autoprefixer');
var CSSnano = require('cssnano');
gulp.task('css:full', () => {
return gulp.src('sass/knacss.scss')
.pipe(sass(
{
outputStyle: 'expanded'
}))
.pipe(
postcss([
autoprefixer, // ajoute les préfixes vendeurs
]))
.pipe(gulp.dest('css/knacss-full'));
});
gulp.task('css:mini', () => {
return gulp.src('sass/knacss.scss')
.pipe(sass(
{
outputStyle: 'compact'
}))
.pipe(
postcss([
CombineMQ, // rassemble les Media Queries (parfait pour les classes utilitaires)
autoprefixer, // ajoute les préfixes vendeurs
CSSnano // minification
]))
.pipe(gulp.dest('css/knacss-mini'));
});
gulp.task('css:grillade', () => {
return gulp.src('sass/utils/grillade.scss')
.pipe(sass(
{
outputStyle: 'compact'
}))
.pipe(
postcss([
CombineMQ, // rassemble les Media Queries (parfait pour les classes utilitaires)
autoprefixer, // ajoute les préfixes vendeurs
CSSnano // minification
]))
.pipe(gulp.dest('css/grillade'));
});
// Tâche BUILD : tapez "gulp" ou "gulp build"
gulp.task('build', gulp.series('css:full', 'css:mini', 'css:grillade'));
// Tâche par défaut
gulp.task('default', gulp.series('build'));

View file

@ -1,57 +0,0 @@
/*!
* www.KNACSS.com V4.1.0 (2015-03-30) @author: Raphael Goetter, Alsacreations
* Licence WTFPL http://www.wtfpl.net/
*/
// Config file and project variables
// font sizes
@base-font-size : 14px; // if "14px" then 1em = 14px
@line-height : 1.5; // equiv line-height 1.5
@h1-size : 3.2rem; // equiv "32px"
@h2-size : 2.8rem; // equiv "28px"
@h3-size : 2.4rem; // equiv "24px"
@h4-size : 2.0rem; // equiv "20px"
@h5-size : 1.8rem; // equiv "18px"
@h6-size : 1.6rem; // equiv "16px"
// font stacks
@font-stack-common : Helvetica, Arial, sans-serif; // common font
@font-stack-headings : Helvetica, Arial, sans-serif; // headings font
@font-stack-monospace : Consolas, "DejaVu Sans Mono", Courier, monospace; // monospace font
@font-stack-universal : FreeSans, Arimo, "Droid Sans", Helvetica, Arial, sans-serif; // universal stack
// font colors
@base-color : #000; // text color on body and content
@primary-color : #000; // text color on primary elements
@secondary-color : #000; // text color on secondary elements
@headings-color : #000; // text color on headings
@base-color-link : #333; // base links color
@base-color-link-hover : #000; // base hovered/focused links color
// backgrounds
@base-background : #fff; // body background color
@primary-background : #fff; // primary elements background color
@secondary-background : #fff; // secondary elements background color
// spacings (choose unit you prefer)
@tiny-value : 5px; // tiny value for margins / paddings
@small-value : 10px; // small value for margins / paddings
@medium-value : 20px; // medium value for margins / paddings
@large-value : 40px; // large value for margins / paddings
@extra-large-value : 80px; // extra large value for margins / paddings
@ultra-large-value : 160px; // ultra large value for margins / paddings
// breakpoints (choose unit you prefer)
@tiny-screen : 480px; // tiny screens media query (less than 480px)
@small-screen : 768px; // screens between 481px and 768px
@medium-screen : 1024px; // screens between 769px and 1024px
@large-screen : 1280px; // screens between 1025px and 1280px
@extra-large-screen : 1600px; // screens between 1281px and 1600px
@ultra-large-screen : 1920px; // ultra large screens
// grids variables (choose unit you prefer)
@gutter: 1em; // gutter value for grid layouts. Unit can be: %, px, em, rem
@number: 4; // number of equal columns
@left: 2; // left side of uneven columns
@right: 1; // right side of uneven columns

View file

@ -1,427 +0,0 @@
/*! normalize.css v3.0.2 | MIT License | github.com/necolas/normalize.css */
/**
* 1. Set default font family to sans-serif.
* 2. Prevent iOS text size adjust after orientation change, without disabling
* user zoom.
*/
html {
font-family: sans-serif; /* 1 */
-ms-text-size-adjust: 100%; /* 2 */
-webkit-text-size-adjust: 100%; /* 2 */
}
/**
* Remove default margin.
*/
body {
margin: 0;
}
/* HTML5 display definitions
========================================================================== */
/**
* Correct `block` display not defined for any HTML5 element in IE 8/9.
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox.
* Correct `block` display not defined for `main` in IE 11.
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
display: block;
}
/**
* 1. Correct `inline-block` display not defined in IE 8/9.
* 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
*/
audio,
canvas,
progress,
video {
display: inline-block; /* 1 */
vertical-align: baseline; /* 2 */
}
/**
* Prevent modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices.
*/
audio:not([controls]) {
display: none;
height: 0;
}
/**
* Address `[hidden]` styling not present in IE 8/9/10.
* Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
*/
[hidden],
template {
display: none;
}
/* Links
========================================================================== */
/**
* Remove the gray background color from active links in IE 10.
*/
a {
background-color: transparent;
}
/**
* Improve readability when focused and also mouse hovered in all browsers.
*/
a:active,
a:hover {
outline: 0;
}
/* Text-level semantics
========================================================================== */
/**
* Address styling not present in IE 8/9/10/11, Safari, and Chrome.
*/
abbr[title] {
border-bottom: 1px dotted;
}
/**
* Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
*/
b,
strong {
font-weight: bold;
}
/**
* Address styling not present in Safari and Chrome.
*/
dfn {
font-style: italic;
}
/**
* Address variable `h1` font-size and margin within `section` and `article`
* contexts in Firefox 4+, Safari, and Chrome.
*/
h1 {
font-size: 2em;
margin: 0.67em 0;
}
/**
* Address styling not present in IE 8/9.
*/
mark {
background: #ff0;
color: #000;
}
/**
* Address inconsistent and variable font size in all browsers.
*/
small {
font-size: 80%;
}
/**
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sup {
top: -0.5em;
}
sub {
bottom: -0.25em;
}
/* Embedded content
========================================================================== */
/**
* Remove border when inside `a` element in IE 8/9/10.
*/
img {
border: 0;
}
/**
* Correct overflow not hidden in IE 9/10/11.
*/
svg:not(:root) {
overflow: hidden;
}
/* Grouping content
========================================================================== */
/**
* Address margin not present in IE 8/9 and Safari.
*/
figure {
margin: 1em 40px;
}
/**
* Address differences between Firefox and other browsers.
*/
hr {
-moz-box-sizing: content-box;
box-sizing: content-box;
height: 0;
}
/**
* Contain overflow in all browsers.
*/
pre {
overflow: auto;
}
/**
* Address odd `em`-unit font size rendering in all browsers.
*/
code,
kbd,
pre,
samp {
font-family: monospace, monospace;
font-size: 1em;
}
/* Forms
========================================================================== */
/**
* Known limitation: by default, Chrome and Safari on OS X allow very limited
* styling of `select`, unless a `border` property is set.
*/
/**
* 1. Correct color not being inherited.
* Known issue: affects color of disabled elements.
* 2. Correct font properties not being inherited.
* 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
*/
button,
input,
optgroup,
select,
textarea {
color: inherit; /* 1 */
font: inherit; /* 2 */
margin: 0; /* 3 */
}
/**
* Address `overflow` set to `hidden` in IE 8/9/10/11.
*/
button {
overflow: visible;
}
/**
* Address inconsistent `text-transform` inheritance for `button` and `select`.
* All other form control elements do not inherit `text-transform` values.
* Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
* Correct `select` style inheritance in Firefox.
*/
button,
select {
text-transform: none;
}
/**
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
* and `video` controls.
* 2. Correct inability to style clickable `input` types in iOS.
* 3. Improve usability and consistency of cursor style between image-type
* `input` and others.
*/
button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
-webkit-appearance: button; /* 2 */
cursor: pointer; /* 3 */
}
/**
* Re-set default cursor for disabled elements.
*/
button[disabled],
html input[disabled] {
cursor: default;
}
/**
* Remove inner padding and border in Firefox 4+.
*/
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0;
}
/**
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
* the UA stylesheet.
*/
input {
line-height: normal;
}
/**
* It's recommended that you don't attempt to style these elements.
* Firefox's implementation doesn't respect box-sizing, padding, or width.
*
* 1. Address box sizing set to `content-box` in IE 8/9/10.
* 2. Remove excess padding in IE 8/9/10.
*/
input[type="checkbox"],
input[type="radio"] {
box-sizing: border-box; /* 1 */
padding: 0; /* 2 */
}
/**
* Fix the cursor style for Chrome's increment/decrement buttons. For certain
* `font-size` values of the `input`, it causes the cursor style of the
* decrement button to change from `default` to `text`.
*/
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
height: auto;
}
/**
* 1. Address `appearance` set to `searchfield` in Safari and Chrome.
* 2. Address `box-sizing` set to `border-box` in Safari and Chrome
* (include `-moz` to future-proof).
*/
input[type="search"] {
-webkit-appearance: textfield; /* 1 */
-moz-box-sizing: content-box;
-webkit-box-sizing: content-box; /* 2 */
box-sizing: content-box;
}
/**
* Remove inner padding and search cancel button in Safari and Chrome on OS X.
* Safari (but not Chrome) clips the cancel button when the search input has
* padding (and `textfield` appearance).
*/
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
/**
* Define consistent border, margin, and padding.
*/
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em;
}
/**
* 1. Correct `color` not being inherited in IE 8/9/10/11.
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
*/
legend {
border: 0; /* 1 */
padding: 0; /* 2 */
}
/**
* Remove default vertical scrollbar in IE 8/9/10/11.
*/
textarea {
overflow: auto;
}
/**
* Don't inherit the `font-weight` (applied by a rule above).
* NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
*/
optgroup {
font-weight: bold;
}
/* Tables
========================================================================== */
/**
* Remove most spacing between table cells.
*/
table {
border-collapse: collapse;
border-spacing: 0;
}
td,
th {
padding: 0;
}

View file

@ -1,255 +0,0 @@
/* ----------------------------- */
/* == soft reset */
/* ----------------------------- */
/* switching to border-box model for all elements */
html {
box-sizing: border-box;
}
* {
box-sizing: inherit;
}
ul,
ol {
padding-left: 2em;
}
ul.unstyled {
list-style: none;
}
img {
vertical-align: middle;
}
/* height auto only for non SVG images */
img:not([src$=".svg"]) {
height: auto;
}
blockquote,
figure {
margin-left: 0;
margin-right: 0;
}
/* ----------------------------- */
/* == typography */
/* ----------------------------- */
html {
/* set base font-size to equiv "10px", which is adapted to rem unit */
font-size: 62.5%;
/* IE9-IE11 math fixing. See http://bit.ly/1g4X0bX */
/* thanks to @guardian, @victorbritopro and @eQRoeil */
font-size: ~'calc(1em * .625)';
/* disallow text zooming on orientation change (non standard property) */
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%;
}
body {
/* set body font-size in em (1.4em equiv "14px") */
font-size: unit((@base-font-size / 10), em);
background-color: @base-background;
color: @base-color;
font-family: @font-stack-common;
line-height: @line-height;
}
a {
color: @base-color-link;
&:hover, &:focus, &:active {
color: @base-color-link-hover;
}
}
/* font-sizing for content */
p,
.p-like,
ul,
ol,
dl,
blockquote,
pre,
td,
th,
label,
textarea,
caption,
details,
figure {
margin-top: 0.75em;
margin-bottom: 0;
line-height: @line-height;
}
h1,
.h1-like {
font-size: @h1-size;
font-family: @font-stack-headings;
}
h2,
.h2-like {
font-size: @h2-size;
font-family: @font-stack-headings;
}
h3,
.h3-like {
font-size: @h3-size;
}
h4,
.h4-like {
font-size: @h4-size;
}
h5,
.h5-like {
font-size: @h5-size;
}
h6,
.h6-like {
font-size: @h6-size;
}
/* alternate font-sizing */
.smaller {
font-size: 0.6em;
}
.small {
font-size: 0.8em;
}
.big {
font-size: 1.2em;
}
.bigger {
font-size: 1.5em;
}
.biggest {
font-size: 2em;
}
code,
pre,
samp,
kbd {
/* IE fix */
white-space: pre-line;
white-space: pre-wrap;
font-family: @font-stack-monospace;
line-height: normal;
}
em,
.italic,
address,
cite,
i,
var {
font-style: italic;
}
small,
sub,
sup {
font-size: smaller;
}
/* ----------------------------- */
/* == hiding content */
/* ----------------------------- */
/* hidden but not for an assistive technology like a screen reader, Yahoo! method */
.visually-hidden {
position: absolute !important;
border: 0 !important;
height: 1px !important;
width: 1px !important;
padding: 0 !important;
overflow: hidden !important;
clip: rect(1px, 1px, 1px, 1px) !important;
}
@media (max-width: @small-screen) {
.no-small-screen {
display: none;
}
}
@media (min-width: @large-screen) {
.no-large-screen {
display: none;
}
}
/* ----------------------------- */
/* == browsers consistency */
/* ----------------------------- */
/* avoid top margins on first content element */
p,
.p-like,
ul,
ol,
dl,
blockquote,
pre,
h1,
.h1-like,
h2,
.h2-like,
h3,
.h3-like,
h4,
.h4-like,
h5,
.h5-like,
h6,
.h6-like {
&:first-child {
margin-top: 0;
}
}
/* avoid margins on nested elements */
li p,
li .p-like,
li ul,
li ol {
margin-top: 0;
margin-bottom: 0;
}
/* max values */
img,
table,
td,
blockquote,
code,
pre,
textarea,
input,
video {
max-width: 100%;
}
/* margin-bottom on tables */
table {
margin-bottom: @medium-value;
}

View file

@ -1,135 +0,0 @@
/* ----------------------------- */
/* ==layout and modules */
/* ----------------------------- */
/* module, gains superpower "BFC" Block Formating Context */
.mod {
overflow: hidden;
}
/* blocks that needs to be placed under floats */
.clear,
.line,
.row {
clear: both;
}
/* blocks that must contain floats */
.clearfix,
.line {
&::after {
content: "";
display: table;
clear: both;
border-collapse: collapse;
}
}
/* simple blocks alignment */
.left {
margin-right: auto;
}
.right {
margin-left: auto;
}
.center {
margin-left: auto;
margin-right: auto;
}
/* text and contents alignment */
.txtleft {
text-align: left;
}
.txtright {
text-align: right;
}
.txtcenter {
text-align: center;
}
/* floating elements */
.fl {
float: left;
}
img.fl {
margin-right: @small-value;
}
.fr {
float: right;
}
img.fr {
margin-left: @small-value;
}
img.fl,
img.fr {
margin-bottom: @tiny-value;
}
/* table layout */
.row {
display: table;
table-layout: fixed;
width: 100%;
}
.row > *,
.col {
display: table-cell;
vertical-align: top;
}
/* no table-cell for script tag when body is a .row */
body > script {
display: none !important;
}
/* inline-block */
.inbl {
display: inline-block;
vertical-align: top;
}
/* flexbox layout
http://www.alsacreations.com/tuto/lire/1493-css3-flexbox-layout-module.html
*/
.flexbox,
.flexbox-h,
.flexbox-v {
display : flex;
flex-wrap: wrap;
flex-direction: row;
}
.flexbox-v {
flex-direction: column;
}
.flexitem-fluid {
flex: 1;
}
.flexitem-first {
order : -1;
}
.flexitem-medium {
order : 0;
}
.flexitem-last {
order : 1;
}
.flexitem-center {
margin: auto;
}

View file

@ -1,151 +0,0 @@
/* ---------------------------------- */
/* ==Grids */
/* ---------------------------------- */
// WARNING : KNACSS grids are flexbox based and only supported by IE10+
// Tuto : http://www.alsacreations.com/tuto/lire/1659-une-grille-responsive-avec-flexbox-et-LESS.html
// Demo : http://codepen.io/raphaelgoetter/pen/zxBMLW
// Usage in vanilla CSS:
// - <div class="grid-4"> for an equal fourth columns grid container
// - <div class="grid-2-1"> for an uneven columns grid container
// Usage with preprocessors : if you're using LESS, you can config grids variables :
// n = number of columns (default = 4)
// example : .grid-perso { .grid(12); }
// ... or uneven grids :
// left = left ratio column (default = 2) / right = right ratio column (default = 1)
// example : .grid-perso { .uneven-grid(2, 1); }
[class*="grid-"] {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-between;
margin-left: -@gutter;
}
[class*="grid-"] > * {
flex: 0 0 auto;
display: block; /* IE fix */
width: ~'calc(100% * 1 / @{number} - @{gutter})';
margin-left: @gutter;
}
// LESS mixins for *equal* columns grid container
// example : .grid-perso { .grid(12); }
.grid(@number:@number, @gutter:@gutter) {
& > * {
width: ~'calc(100% * 1 / @{number} - @{gutter})';
}
& > .flexitem-double {
width: ~'calc(100% * 2 / @{number} - @{gutter})';
}
@media (min-width: (@tiny-screen + 1)) and (max-width: @small-screen) {
& > * {
width: ~'calc(100% * 1 / 2 - @{gutter})';
}
& > .flexitem-double {
width: ~'calc(100% - @{gutter})';
}
}
@media (max-width: @tiny-screen) {
& > * {
width: ~'calc(100% - @{gutter})';
}
& > .flexitem-double {
width: ~'calc(100% - @{gutter})';
}
}
}
// Examples : will be compiled in CSS
.grid-2 {
.grid(2);
}
.grid-3 {
.grid(3);
}
.grid-4 {
.grid(4);
}
.grid-5 {
.grid(5);
}
.grid-6 {
.grid(6);
}
.grid-7 {
.grid(7);
}
.grid-8 {
.grid(8);
}
.grid-10 {
.grid(10);
}
.grid-12 {
.grid(12);
}
// LESS mixins for *unequal* columns grid container
// example : .grid-perso { .uneven-grid(2, 1); }
.uneven-grid(@left:@left, @right:@right, @gutter:@gutter) {
& > *:nth-child(odd) {
@size: (@left / (@left + @right)) * 100%;
width: ~'calc(@{size} - @{gutter})';
}
& > *:nth-child(even) {
@size: (@right / (@left + @right)) * 100%;
width: ~'calc(@{size} - @{gutter})';
}
@media (max-width: @tiny-screen) {
& > *:nth-child(n) {
width: ~'calc(100% - @{gutter})';
}
}
}
// Examples : will be compiled in CSS
.grid-2-1 {
.uneven-grid(2,1);
}
.grid-1-2 {
.uneven-grid(1,2);
}
.grid-3-1 {
.uneven-grid(3,1);
}
.grid-1-3 {
.uneven-grid(1,3);
}
.grid-3-2 {
.uneven-grid(3,2);
}
.grid-2-3 {
.uneven-grid(2,3);
}
.grid-4-1 {
.uneven-grid(4,1);
}
.grid-1-4 {
.uneven-grid(1,4);
}

View file

@ -1,38 +0,0 @@
/* ----------------------------- */
/* ==tables */
/* ----------------------------- */
table,
.table {
width: 100%;
max-width : 100%;
table-layout: fixed;
border-collapse: collapse;
vertical-align: top;
border: 1px solid #ccc;
}
.table {
display: table;
}
table#recaptcha_table,
table.table-auto {
table-layout:auto;
}
caption {
padding: @small-value;
color: #555;
font-style: italic;
}
td,
th {
padding: 0.3em 0.8em;
border: 1px #aaa dotted;
vertical-align: top;
min-width: @medium-value;
cursor: default;
text-align: left;
}

View file

@ -1,79 +0,0 @@
/* ----------------------------- */
/* ==forms */
/* ----------------------------- */
/* thanks to HTML5boilerplate,
* github.com/nathansmith/formalize and www.sitepen.com
*/
/* buttons */
.btn {
display: inline-block;
}
/* forms items */
form,
fieldset {
border: none;
}
input,
button,
select,
label,
.btn {
vertical-align: middle;
font-family: inherit;
font-size: inherit;
}
label {
display: inline-block;
vertical-align: middle;
cursor: pointer;
}
legend {
border: 0;
white-space: normal;
}
textarea {
min-height: 5em;
vertical-align: top;
font-family: inherit;
font-size: inherit;
resize: vertical;
}
/* if select styling bugs on WebKit */
/* select { -webkit-appearance: none; } */
/* 'x' appears on right of search input when text is entered. This removes it */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
display: none;
}
::-webkit-input-placeholder {
color: #777;
}
input:-moz-placeholder,
textarea:-moz-placeholder {
color: #777;
}
.btn:focus,
input:focus,
button:focus {
outline: 0;
-webkit-tap-highlight-color: transparent;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
background-image: none;
}

View file

@ -1,297 +0,0 @@
/* ---------------------------------- */
/* ==visual helpers */
/* .. use them with parcimony ! */
/* ---------------------------------- */
/* blocks widths (percentage and pixels) */
.w10 {
width: 10%;
}
.w20 {
width: 20%;
}
.w25 {
width: 25%;
}
.w30 {
width: 30%;
}
.w33 {
width: 33.3333%;
}
.w40 {
width: 40%;
}
.w50 {
width: 50%;
}
.w60 {
width: 60%;
}
.w66 {
width: 66.6666%;
}
.w70 {
width: 70%;
}
.w75 {
width: 75%;
}
.w80 {
width: 80%;
}
.w90 {
width: 90%;
}
.w100 {
width: 100%;
}
.w50p {
width: 50px;
}
.w100p {
width: 100px;
}
.w150p {
width: 150px;
}
.w200p {
width: 200px;
}
.w300p {
width: 300px;
}
.w400p {
width: 400px;
}
.w500p {
width: 500px;
}
.w600p {
width: 600px;
}
.w700p {
width: 700px;
}
.w800p {
width: 800px;
}
.w960p {
width: 960px;
}
.mw960p {
max-width: 960px;
}
.w1140p {
width: 1140px;
}
.mw1140p {
max-width: 1140px;
}
.wauto {
width: auto;
}
/* spacing helpers
p,m = padding,margin
a,t,r,b,l = all,top,right,bottom,left
s,m,l,n = small, medium, large, none
*/
.man,
.ma0 {
margin: 0;
}
.pan,
.pa0 {
padding: 0;
}
.mas {
margin: @small-value;
}
.mam {
margin: @medium-value;
}
.mal {
margin: @large-value;
}
.pas {
padding: @small-value;
}
.pam {
padding: @medium-value;
}
.pal {
padding: @large-value;
}
.mtn,
.mt0 {
margin-top: 0;
}
.mts {
margin-top: @small-value;
}
.mtm {
margin-top: @medium-value;
}
.mtl {
margin-top: @large-value;
}
.mrn,
.mr0 {
margin-right: 0;
}
.mrs {
margin-right: @small-value;
}
.mrm {
margin-right: @medium-value;
}
.mrl {
margin-right: @large-value;
}
.mbn,
.mb0 {
margin-bottom: 0;
}
.mbs {
margin-bottom: @small-value;
}
.mbm {
margin-bottom: @medium-value;
}
.mbl {
margin-bottom: @large-value;
}
.mln,
.ml0 {
margin-left: 0;
}
.mls {
margin-left: @small-value;
}
.mlm {
margin-left: @medium-value;
}
.mll {
margin-left: @large-value;
}
.ptn,
.pt0 {
padding-top: 0;
}
.pts {
padding-top: @small-value;
}
.ptm {
padding-top: @medium-value;
}
.ptl {
padding-top: @large-value;
}
.prn,
.pr0 {
padding-right: 0;
}
.prs {
padding-right: @small-value;
}
.prm {
padding-right: @medium-value;
}
.prl {
padding-right: @large-value;
}
.pbn,
.pb0 {
padding-bottom: 0;
}
.pbs {
padding-bottom: @small-value;
}
.pbm {
padding-bottom: @medium-value;
}
.pbl {
padding-bottom: @large-value;
}
.pln,
.pl0 {
padding-left: 0;
}
.pls {
padding-left: @small-value;
}
.plm {
padding-left: @medium-value;
}
.pll {
padding-left: @large-value;
}

View file

@ -1,368 +0,0 @@
/* ----------------------------- */
/* ==desktop and HD devices */
/* ----------------------------- */
@media (min-width: (@medium-screen + 1)) {
/* rules for big resources and big screens like: background-images, font-faces, etc. */
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi), (min-resolution: 2dppx) {
/* style adjustments for high density devices */
}
/* ---------------------------------- */
/* ==Responsive large */
/* ---------------------------------- */
@media (min-width: (@medium-screen + 1)) {
/* layouts for large screens */
.large-hidden {
display: none !important;
}
.large-visible {
display: block !important;
}
.large-no-float {
float: none;
}
.large-inbl {
display: inline-block;
float: none;
vertical-align: top;
}
.large-row {
display: table;
table-layout: fixed;
width: 100% !important;
}
.large-col {
display: table-cell;
vertical-align: top;
}
/* widths for large screens */
.large-w25 {
width: 25% !important;
}
.large-w33 {
width: 33.3333% !important;
}
.large-w50 {
width: 50% !important;
}
.large-w66 {
width: 66.6666% !important;
}
.large-w75 {
width: 75% !important;
}
.large-w100,
.large-wauto {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
/* margins for large screens */
.large-man {
margin: 0 !important;
}
}
/* ---------------------------------- */
/* ==Responsive medium */
/* ---------------------------------- */
@media (min-width: (@small-screen + 1)) and (max-width: @medium-screen) {
/* layouts for medium screens */
.medium-hidden {
display: none !important;
}
.medium-visible {
display: block !important;
}
.medium-no-float {
float: none;
}
.medium-inbl {
display: inline-block;
float: none;
vertical-align: top;
}
.medium-row {
display: table;
table-layout: fixed;
width: 100% !important;
}
.medium-col {
display: table-cell;
vertical-align: top;
}
/* widths for medium screens */
.medium-w25 {
width: 25% !important;
}
.medium-w33 {
width: 33.3333% !important;
}
.medium-w50 {
width: 50% !important;
}
.medium-w66 {
width: 66.6666% !important;
}
.medium-w75 {
width: 75% !important;
}
.medium-w100,
.medium-wauto {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
/* margins for medium screens */
.medium-man,
.medium-ma0 {
margin: 0 !important;
}
}
/* ---------------------------------- */
/* ==Responsive small */
/* ---------------------------------- */
@media (min-width: (@tiny-screen + 1)) and (max-width: @small-screen) {
/* quick reset in small resolution and less */
.w600p,
.w700p,
.w800p,
.w960p,
.mw960p {
width: auto;
float: none;
}
/* layouts for small screens */
.small-hidden {
display: none !important;
}
.small-visible {
display: block !important;
}
.small-no-float {
float: none;
}
.small-inbl {
display: inline-block;
float: none;
vertical-align: top;
}
.small-row {
display: table !important;
table-layout: fixed !important;
width: 100% !important;
}
.small-col {
display: table-cell !important;
vertical-align: top !important;
}
/* widths for small screens */
.small-w25 {
width: 25% !important;
}
.small-w33 {
width: 33.3333% !important;
}
.small-w50 {
width: 50% !important;
}
.small-w66 {
width: 66.6666% !important;
}
.small-w75 {
width: 75% !important;
}
.small-w100,
.small-wauto {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
/* margins for small screens */
.small-man,
.small-ma0 {
margin: 0 !important;
}
.small-pan,
.small-pa0 {
padding: 0 !important;
}
}
/* ---------------------------------- */
/* ==Responsive tiny */
/* ---------------------------------- */
@media (max-width: @tiny-screen) {
/* quick tiny resolution reset */
.mod,
.col,
fieldset {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
.w300p,
.w400p,
.w500p {
width: auto;
float: none;
}
.row {
display: block !important;
width: 100% !important;
}
/* layouts for tiny screens */
.tiny-hidden {
display: none !important;
}
.tiny-visible {
display: block !important;
}
.tiny-no-float {
float: none;
}
.tiny-inbl {
display: inline-block;
float: none;
vertical-align: top;
}
.tiny-row {
display: table !important;
table-layout: fixed !important;
width: 100% !important;
}
.tiny-col {
display: table-cell !important;
vertical-align: top !important;
}
th,
td {
display: block !important;
width: auto !important;
text-align: left !important;
}
thead {
display: none;
}
/* widths for tiny screens */
.tiny-w25 {
width: 25% !important;
}
.tiny-w33 {
width: 33.3333% !important;
}
.tiny-w50 {
width: 50% !important;
}
.tiny-w66 {
width: 66.6666% !important;
}
.tiny-w75 {
width: 75% !important;
}
.tiny-w100,
.tiny-wauto {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
/* margins for tiny screens */
.tiny-man,
.tiny-ma0 {
margin: 0 !important;
}
.tiny-pan,
.tiny-pa0 {
padding: 0 !important;
}
}

View file

@ -1,94 +0,0 @@
/* quick print reset */
@media print {
* {
background: transparent !important;
box-shadow: none !important;
text-shadow: none !important;
}
body {
width: auto !important;
margin: auto !important;
font-family: serif;
font-size: 12pt;
background-color: #fff !important;
color: #333 !important;
}
p,
.p-like,
h1,
.h1-like,
h2,
.h2-like,
h3,
.h3-like,
h4,
.h4-like,
h5,
.h5-like,
h6,
.h6-like,
blockquote,
ul,
ol {
color: #000 !important;
margin: auto !important;
}
.print {
display: block;
}
.no-print {
display: none;
}
/* no orphans, no widows */
p,
.p-like,
blockquote {
orphans: 3;
widows: 3;
}
/* no breaks inside these elements */
blockquote,
ul,
ol {
page-break-inside: avoid;
}
/* page break before main headers */
h1,
.h1-like {
page-break-before: always;
}
/* no breaks after these elements */
h1,
.h1-like,
h2,
.h2-like,
h3,
.h3-like,
caption {
page-break-after: avoid;
}
a {
color: #000 !important;
text-decoration: underline !important;
}
/* displaying URLs */
a[href]::after {
content: " (" attr(href) ")";
}
a[href^="javascript:"]::after,
a[href^="#"]::after {
content: "";
}
}

View file

@ -1,55 +0,0 @@
/* ----------------------------- */
/* ==misc rules */
/* ----------------------------- */
/* styling skip links */
.skip-links {
position: absolute;
& a {
position: absolute;
overflow: hidden;
clip: rect(1px, 1px, 1px, 1px);
padding: 0.5em;
background: black;
color: white;
text-decoration: none;
&:focus {
position: static;
overflow: visible;
clip: auto;
}
}
}
// hyphens on small screens
@media (max-width: @small-screen) {
/* you shall not pass */
div,
textarea,
table,
td,
th,
code,
pre,
samp {
word-wrap: break-word;
hyphens: auto;
}
}
/* Google Gmap3 bug fix on images */
.gm-style img {
height: 100%;
}
:not(.gm-style) img {
height: auto;
}
.gm-style img,
.gmnoscreen img,
.gmnoprint img {
max-width: none !important;
}

View file

@ -1,141 +0,0 @@
/* ----------------------------- */
/* ==minor stylings */
/* ----------------------------- */
/* styling elements */
code,
kbd,
mark {
border-radius: 2px;
}
kbd {
padding: 0 2px;
border: 1px solid #999;
}
code {
padding: 2px 4px;
background: rgba(0,0,0,0.04);
color: #b11;
}
pre code {
padding: none;
background: none;
color: inherit;
border-radius: 0;
}
mark {
padding:2px 4px;
background: #ff0;
}
sup,
sub {
vertical-align: 0;
position: relative;
}
sup {
bottom: 1ex;
}
sub {
top: 0.5ex;
}
blockquote {
position: relative;
padding-left: 3em;
}
blockquote::before {
content: "\201C";
position: absolute;
left: 0;
top: 0;
font-family: georgia, serif;
font-size: 5em;
line-height: 0.9;
color: rgba(0, 0, 0, .3);
}
blockquote > footer {
margin-top: .75em;
font-size: 0.9em;
color: rgba(0, 0, 0, .7);
}
blockquote > footer::before {
content: "\2014 \0020";
}
q {
font-style: normal;
}
q,
.q {
quotes: "“\00a0" "\00a0”";
}
q:lang(fr),
.q:lang(fr) {
quotes: "«\00a0" "\00a0»";
}
hr {
display: block;
clear: both;
height: 1px;
margin: 1em 0 2em;
padding: 0;
border: 0;
color: #ccc;
background-color: #ccc;
}
/* alternate tables */
.table-alternate {
border: 0;
}
.table-alternate tbody {
border: 1px solid #ccc;
}
.table-alternate thead tr > * + * {
border-left: 0;
}
.table-alternate tbody tr > * + * {
border-left: 1px solid #ccc;
}
/* alternate-vert tables */
.table-alternate-v {
border: 0;
border-right: 1px solid #ccc;
}
.table-alternate-v tr > :first-child {
border-bottom: 0;
}
.table-alternate-v tr > * + * {
border-top: 1px solid #ccc;
}
/* striped tables */
.table-striped tbody tr:nth-child(odd) {
background: #eee;
background: rgba(0, 0, 0, .05);
}
/* striped-vert tables */
.table-striped-v tr > :first-child {
background: #eee;
background: rgba(0, 0, 0, .05);
}

View file

@ -1,302 +0,0 @@
/* ----------------------------- */
/* ==WordPress reset */
/* ----------------------------- */
/*
Author: Geoffrey Crofte, Alsacréations
Contributors: Automattic, Geoffrey Crofte
Description: Reset styles for WordPress usage of KNACSS
*/
/* ----------------------------- */
/* ==Menus */
/* ----------------------------- */
// current menu elements
.current_page_item > a {
}
.current-menu-item > a {
}
.current_page_ancestor > a {
}
// blocks of content navigation
.comment-navigation,
.paging-navigation,
.post-navigation {
margin: 0 0 1.5em;
overflow: hidden;
}
.comment-navigation .nav-previous,
.paging-navigation .nav-previous,
.post-navigation .nav-previous {
float: left;
width: 50%;
}
.comment-navigation .nav-next,
.paging-navigation .nav-next,
.post-navigation .nav-next {
float: right;
text-align: right;
width: 50%;
}
/* ----------------------------- */
/* ==Alignments */
/* ----------------------------- */
// class in img elements
.alignnone {
margin: .25em 1.5em 1.5em 0;
}
.aligncenter {
clear: both;
display: block;
margin: 1.5em auto;
}
.alignleft {
float: left;
margin: 0 1.5em .25em 0;
}
.alignright {
float: right;
margin: 0 0 .25em 1.5em;
}
/* ----------------------------- */
/* ==Clearings */
/* ----------------------------- */
.entry-content,
.comment-content {
clear: both;
&::after, &::before {
content: "";
display: table;
}
}
/* ----------------------------- */
/* ==Widgets */
/* ----------------------------- */
.widget + .widget {
margin: 1.5em 0 0;
}
// usage example:
.widget select {
max-width: 100%;
}
/* ----------------------------- */
/* ==Posts and pages */
/* ----------------------------- */
/* === 5.1 Posts - post_class === */
// featured content
.sticky {
}
// attachment post
.attachment {
}
// format of post
.format- {
&aside {
}
&gallery {
}
&link {
}
&image {
}
&quote {
}
&status {
}
&video {
}
&chat {
}
}
// class for a tag
.tag- {
&name-of-tag {
}
}
// class for categorie
.category- {
&name-of-category {
}
}
/* === 5.2 Pages - body_class === */
// front page
.home {
// if display posts
&.blog {
}
// if static page
&.page {
}
}
// page displays posts
.blog {
// if is frontpage
&.home {
}
// if static page
&.page {
}
}
// simple page
.page {
}
// page of single post
.single {
}
// page of archives
.archive {
}
// page of search
.search {
// if has results
.search-results {
}
// if has no results
.search-no-results {
}
}
// page 404
.error404 {
}
// user logged in
.logged-in {
}
// text direction if right-to-left
// prefer rtl.css: http://codex.wordpress.org/Right-to-Left_Language_Support
.rtl {
}
/* === 5.3 Posts and Pages - Contents === */
.hentry {
margin: 0 0 1.5em;
}
.page-content,
.entry-content,
.entry-summary {
margin: 1.5em 0 0;
}
.page-links {
clear: both;
margin: 0 0 1.5em;
}
/* ----------------------------- */
/* ==Comments */
/* ----------------------------- */
.comment-content a {
word-wrap: break-word;
}
.bypostauthor {
// some make-the-logo-bigger styles
}
/* ----------------------------- */
/* ==Media */
/* ----------------------------- */
img.wp-smiley {
margin-bottom: 0;
margin-top: 0;
padding: 0;
border: none;
}
/* ----------------------------- */
/* ==Captions */
/* ----------------------------- */
.wp-caption {
max-width: 100%;
margin-bottom: 1.5em;
}
.wp-caption img {
display: block;
margin: 0 auto;
}
.wp-caption-text {
margin: 1em 0;
text-align: center;
}
/* ----------------------------- */
/* ==Galleries */
/* ----------------------------- */
.gallery {
margin-bottom: 1.5em;
}
.gallery-item {
display: inline-block;
width: 100%;
text-align: center;
vertical-align: top;
.gallery-columns-2 & {
max-width: 50%;
}
.gallery-columns-3 & {
max-width: 33.33%;
}
.gallery-columns-4 & {
max-width: 25%;
}
.gallery-columns-5 & {
max-width: 20%;
}
.gallery-columns-6 & {
max-width: 16.66%;
}
.gallery-columns-7 & {
max-width: 14.28%;
}
.gallery-columns-8 & {
max-width: 12.5%;
}
.gallery-columns-9 & {
max-width: 11.11%;
}
}
.gallery-caption {
display: block;
}

View file

@ -1,33 +0,0 @@
// LESS config file
// -----------------
// (WARNING : you should comment this line and move config file from vendor/knacss folder to your own folder)
@import "_00-config";
// normalize include
@import "_01a-normalize"; // normalize
// LESS base styles
@import "_01b-base"; // reset and basic styles
// LESS files : chose the ones you need
@import "_02-layout"; // alignment, modules, positionning
@import "_03-grids"; // grids
@import "_04-tables"; // data tables consistency
@import "_05-forms"; // forms consistency
@import "_06-helpers"; // width and spacers visually classes
@import "_07-responsive"; // Responsive Web Design helpers
@import "_08-print"; // print quick reset
@import "_09-misc"; // skip links, google maps and hyphens
@import "_10-styling"; // minor stylings
// WordPress base styles
@import "_11-wordpress"; // WordPress reset and basic styles
/* ----------------------------- */
/* ==own stylesheet */
/* ----------------------------- */
/* Here should go your own CSS styles */
/* You can also link them with a LESS @import */
/* @import "my-styles.less"; */

View file

@ -1,24 +1,37 @@
{ {
"name": "knacss", "name": "knacss",
"version": "4.1.0", "version": "8.2.1",
"homepage": "http://www.knacss.com/", "homepage": "http://www.knacss.com/",
"bugs": "https://github.com/raphaelgoetter/KNACSS/issues", "bugs": "https://github.com/alsacreations/KNACSS/issues",
"author": [ "author": "Raphaël GOETTER, Alsacreations (http://www.alsacreations.fr)",
"Raphaël GOETTER, Alsacreations (http://goetter.fr)"
],
"contributors": [ "contributors": [
"Raphaël GOETTER, Alsacreations" "Raphaël GOETTER, Alsacreations"
], ],
"description": "KNACSS is a minimalist, responsive and extensible style sheet to kick-start your HTML / CSS projects. It relies on common best practices and experience on the topic.", "description": "KNACSS is a minimalist, responsive and extensible style sheet to kick-start your HTML / CSS projects. It relies on common best practices and experience on the topic.",
"main": "css/knacss.css", "main": "https://github.com/alsacreations/KNACSS/tree/master/css",
"keywords": [ "keywords": [
"css", "framework", "reset", "responsive", "less", "sass", "rwd", "boilerplate", "workflow" "css",
"framework",
"reset",
"responsive",
"sass",
"rwd",
"boilerplate",
"workflow"
], ],
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/raphaelgoetter/KNACSS" "url": "https://github.com/alsacreations/KNACSS"
}, },
"license": "WTFPL", "license": "WTFPL",
"dependencies": {}, "devDependencies": {
"engines": {} "gulp": "^4.0.2",
"gulp-postcss": "^8.0.0",
"gulp-sass": "^4.1.0"
},
"dependencies": {
"autoprefixer": "^9.7.1",
"postcss-combine-media-query": "^1.0.1",
"cssnano": "^4.1.10"
}
} }

View file

@ -1,57 +0,0 @@
/*!
* www.KNACSS.com V4.1.0 (2015-03-30) @author: Raphael Goetter, Alsacreations
* Licence WTFPL http://www.wtfpl.net/
*/
// Config file and project variables
// font sizes
$base-font-size : 14px; // if "14px" then 1em = 14px
$line-height : 1.5; // equiv line-height 1.5
$h1-size : 3.2rem; // equiv "32px"
$h2-size : 2.8rem; // equiv "28px"
$h3-size : 2.4rem; // equiv "24px"
$h4-size : 2.0rem; // equiv "20px"
$h5-size : 1.8rem; // equiv "18px"
$h6-size : 1.6rem; // equiv "16px"
// font stacks
$font-stack-common : Helvetica, Arial, sans-serif; // common font
$font-stack-headings : Helvetica, Arial, sans-serif; // headings font
$font-stack-monospace : Consolas, DejaVu Sans Mono, Courier, monospace; // monospace font
$font-stack-universal : FreeSans, Arimo, "Droid Sans", Helvetica, Arial, sans-serif; // universal stack
// font colors
$base-color : #000; // text color on body and content
$primary-color : #000; // text color on primary elements
$secondary-color : #000; // text color on secondary elements
$headings-color : #000; // text color on headings
$base-color-link : #333; // base links color
$base-color-link-hover : #000; // base hovered/focused links color
// backgrounds
$base-background : #fff; // body background color
$primary-background : #fff; // primary elements background color
$secondary-background : #fff; // secondary elements background color
// spacings (choose unit you prefer)
$tiny-value : 5px; // tiny value for margins / paddings
$small-value : 10px; // small value for margins / paddings
$medium-value : 20px; // medium value for margins / paddings
$large-value : 40px; // large value for margins / paddings
$extra-large-value : 80px; // extra large value for margins / paddings
$ultra-large-value : 160px; // ultra large value for margins / paddings
// breakpoints (choose unit you prefer)
$tiny-screen : 480px; // tiny screens media query (less than 480px)
$small-screen : 768px; // screens between 481px and 768px
$medium-screen : 1024px; // screens between 769px and 1024px
$large-screen : 1280px; // screens between 1025px and 1280px
$extra-large-screen : 1600px; // screens between 1281px and 1600px
$ultra-large-screen : 1920px; // ultra large screens
// grids variables (choose unit you prefer)
$gutter: 1em; // gutter value for grid layouts. Unit can be: %, px, em, rem
$number: 4; // number of equal columns
$left: 2; // left side of uneven columns
$right: 1; // right side of uneven columns

View file

@ -1,427 +0,0 @@
/*! normalize.css v3.0.2 | MIT License | github.com/necolas/normalize.css */
/**
* 1. Set default font family to sans-serif.
* 2. Prevent iOS text size adjust after orientation change, without disabling
* user zoom.
*/
html {
font-family: sans-serif; /* 1 */
-ms-text-size-adjust: 100%; /* 2 */
-webkit-text-size-adjust: 100%; /* 2 */
}
/**
* Remove default margin.
*/
body {
margin: 0;
}
/* HTML5 display definitions
========================================================================== */
/**
* Correct `block` display not defined for any HTML5 element in IE 8/9.
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox.
* Correct `block` display not defined for `main` in IE 11.
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
display: block;
}
/**
* 1. Correct `inline-block` display not defined in IE 8/9.
* 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
*/
audio,
canvas,
progress,
video {
display: inline-block; /* 1 */
vertical-align: baseline; /* 2 */
}
/**
* Prevent modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices.
*/
audio:not([controls]) {
display: none;
height: 0;
}
/**
* Address `[hidden]` styling not present in IE 8/9/10.
* Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
*/
[hidden],
template {
display: none;
}
/* Links
========================================================================== */
/**
* Remove the gray background color from active links in IE 10.
*/
a {
background-color: transparent;
}
/**
* Improve readability when focused and also mouse hovered in all browsers.
*/
a:active,
a:hover {
outline: 0;
}
/* Text-level semantics
========================================================================== */
/**
* Address styling not present in IE 8/9/10/11, Safari, and Chrome.
*/
abbr[title] {
border-bottom: 1px dotted;
}
/**
* Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
*/
b,
strong {
font-weight: bold;
}
/**
* Address styling not present in Safari and Chrome.
*/
dfn {
font-style: italic;
}
/**
* Address variable `h1` font-size and margin within `section` and `article`
* contexts in Firefox 4+, Safari, and Chrome.
*/
h1 {
font-size: 2em;
margin: 0.67em 0;
}
/**
* Address styling not present in IE 8/9.
*/
mark {
background: #ff0;
color: #000;
}
/**
* Address inconsistent and variable font size in all browsers.
*/
small {
font-size: 80%;
}
/**
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sup {
top: -0.5em;
}
sub {
bottom: -0.25em;
}
/* Embedded content
========================================================================== */
/**
* Remove border when inside `a` element in IE 8/9/10.
*/
img {
border: 0;
}
/**
* Correct overflow not hidden in IE 9/10/11.
*/
svg:not(:root) {
overflow: hidden;
}
/* Grouping content
========================================================================== */
/**
* Address margin not present in IE 8/9 and Safari.
*/
figure {
margin: 1em 40px;
}
/**
* Address differences between Firefox and other browsers.
*/
hr {
-moz-box-sizing: content-box;
box-sizing: content-box;
height: 0;
}
/**
* Contain overflow in all browsers.
*/
pre {
overflow: auto;
}
/**
* Address odd `em`-unit font size rendering in all browsers.
*/
code,
kbd,
pre,
samp {
font-family: monospace, monospace;
font-size: 1em;
}
/* Forms
========================================================================== */
/**
* Known limitation: by default, Chrome and Safari on OS X allow very limited
* styling of `select`, unless a `border` property is set.
*/
/**
* 1. Correct color not being inherited.
* Known issue: affects color of disabled elements.
* 2. Correct font properties not being inherited.
* 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
*/
button,
input,
optgroup,
select,
textarea {
color: inherit; /* 1 */
font: inherit; /* 2 */
margin: 0; /* 3 */
}
/**
* Address `overflow` set to `hidden` in IE 8/9/10/11.
*/
button {
overflow: visible;
}
/**
* Address inconsistent `text-transform` inheritance for `button` and `select`.
* All other form control elements do not inherit `text-transform` values.
* Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
* Correct `select` style inheritance in Firefox.
*/
button,
select {
text-transform: none;
}
/**
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
* and `video` controls.
* 2. Correct inability to style clickable `input` types in iOS.
* 3. Improve usability and consistency of cursor style between image-type
* `input` and others.
*/
button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
-webkit-appearance: button; /* 2 */
cursor: pointer; /* 3 */
}
/**
* Re-set default cursor for disabled elements.
*/
button[disabled],
html input[disabled] {
cursor: default;
}
/**
* Remove inner padding and border in Firefox 4+.
*/
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0;
}
/**
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
* the UA stylesheet.
*/
input {
line-height: normal;
}
/**
* It's recommended that you don't attempt to style these elements.
* Firefox's implementation doesn't respect box-sizing, padding, or width.
*
* 1. Address box sizing set to `content-box` in IE 8/9/10.
* 2. Remove excess padding in IE 8/9/10.
*/
input[type="checkbox"],
input[type="radio"] {
box-sizing: border-box; /* 1 */
padding: 0; /* 2 */
}
/**
* Fix the cursor style for Chrome's increment/decrement buttons. For certain
* `font-size` values of the `input`, it causes the cursor style of the
* decrement button to change from `default` to `text`.
*/
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
height: auto;
}
/**
* 1. Address `appearance` set to `searchfield` in Safari and Chrome.
* 2. Address `box-sizing` set to `border-box` in Safari and Chrome
* (include `-moz` to future-proof).
*/
input[type="search"] {
-webkit-appearance: textfield; /* 1 */
-moz-box-sizing: content-box;
-webkit-box-sizing: content-box; /* 2 */
box-sizing: content-box;
}
/**
* Remove inner padding and search cancel button in Safari and Chrome on OS X.
* Safari (but not Chrome) clips the cancel button when the search input has
* padding (and `textfield` appearance).
*/
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
/**
* Define consistent border, margin, and padding.
*/
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em;
}
/**
* 1. Correct `color` not being inherited in IE 8/9/10/11.
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
*/
legend {
border: 0; /* 1 */
padding: 0; /* 2 */
}
/**
* Remove default vertical scrollbar in IE 8/9/10/11.
*/
textarea {
overflow: auto;
}
/**
* Don't inherit the `font-weight` (applied by a rule above).
* NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
*/
optgroup {
font-weight: bold;
}
/* Tables
========================================================================== */
/**
* Remove most spacing between table cells.
*/
table {
border-collapse: collapse;
border-spacing: 0;
}
td,
th {
padding: 0;
}

View file

@ -1,248 +0,0 @@
/* ----------------------------- */
/* == soft reset */
/* ----------------------------- */
/* switching to border-box model for all elements */
html {
box-sizing: border-box;
}
* {
box-sizing: inherit;
}
ul,
ol {
padding-left: 2em;
}
ul.unstyled {
list-style: none;
}
img {
vertical-align: middle;
}
/* height auto only for non SVG images */
img:not([src$=".svg"]) {
height: auto;
}
blockquote,
figure {
margin-left: 0;
margin-right: 0;
}
/* ----------------------------- */
/* == typography */
/* ----------------------------- */
html {
/* set base font-size to equiv "10px", which is adapted to rem unit */
font-size: 62.5%;
/* IE9-IE11 math fixing. See http://bit.ly/1g4X0bX */
/* thanks to @guardian, @victorbritopro and @eQRoeil */
font-size: calc(1em * 0.625);
/* disallow text zooming on orientation change (non standard property) */
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%;
}
body {
/* set body font-size in em (1.4em equiv "14px") */
font-size: ($base-font-size / 10px) + em;
background-color: $base-background;
color: $base-color;
font-family: $font-stack-common;
line-height: $line-height;
}
a {
color: $base-color-link;
&:hover, &:focus, &:active {
color: $base-color-link-hover;
}
}
/* font-sizing for content */
p,
.p-like,
ul,
ol,
dl,
blockquote,
pre,
td,
th,
label,
textarea,
caption,
details,
figure {
margin-top: 0.75em;
margin-bottom: 0;
line-height: $line-height;
}
h1, .h1-like {
font-size: $h1-size;
font-family: $font-stack-headings;
}
h2, .h2-like {
font-size: $h2-size;
font-family: $font-stack-headings;
}
h3, .h3-like {
font-size: $h3-size;
}
h4, .h4-like {
font-size: $h4-size;
}
h5, .h5-like {
font-size: $h5-size;
}
h6, .h6-like {
font-size: $h6-size;
}
/* alternate font-sizing */
.smaller {
font-size: 0.6em;
}
.small {
font-size: 0.8em;
}
.big {
font-size: 1.2em;
}
.bigger {
font-size: 1.5em;
}
.biggest {
font-size: 2em;
}
code,
pre,
samp,
kbd {
/* IE fix */
white-space: pre-line;
white-space: pre-wrap;
font-family: $font-stack-monospace;
line-height: normal;
}
em,
.italic,
address,
cite,
i,
var {
font-style: italic;
}
small,
sub,
sup {
font-size: smaller;
}
/* ----------------------------- */
/* == hiding content */
/* ----------------------------- */
/* hidden but not for assistance tools, Yahoo! method */
.visually-hidden {
position: absolute !important;
border: 0 !important;
height: 1px !important;
width: 1px !important;
padding: 0 !important;
overflow: hidden !important;
clip: rect(1px, 1px, 1px, 1px) !important;
}
@media (max-width: $small-screen) {
.no-small-screen {
display: none;
}
}
@media (min-width: $large-screen) {
.no-large-screen {
display: none;
}
}
/* ----------------------------- */
/* == browsers consistency */
/* ----------------------------- */
/* avoid top margins on first content element */
p,
.p-like,
ul,
ol,
dl,
blockquote,
pre,
h1,
.h1-like,
h2,
.h2-like,
h3,
.h3-like,
h4,
.h4-like,
h5,
.h5-like,
h6,
.h6-like {
&:first-child {
margin-top: 0;
}
}
/* avoid margins on nested elements */
li p,
li .p-like,
li ul,
li ol {
margin-top: 0;
margin-bottom: 0;
}
/* max values */
img,
table,
td,
blockquote,
code,
pre,
textarea,
input,
video {
max-width: 100%;
}
/* margin-bottom on tables */
table {
margin-bottom: $medium-value;
}

View file

@ -1,135 +0,0 @@
/* ----------------------------- */
/* ==layout and modules */
/* ----------------------------- */
/* module, gains superpower "BFC" Block Formating Context */
.mod {
overflow: hidden;
}
/* blocks that needs to be placed under floats */
.clear,
.line,
.row {
clear: both;
}
/* blocks that must contain floats */
.clearfix,
.line {
&::after {
content: "";
display: table;
clear: both;
border-collapse: collapse;
}
}
/* simple blocks alignment */
.left {
margin-right: auto;
}
.right {
margin-left: auto;
}
.center {
margin-left: auto;
margin-right: auto;
}
/* text and contents alignment */
.txtleft {
text-align: left;
}
.txtright {
text-align: right;
}
.txtcenter {
text-align: center;
}
/* floating elements */
.fl {
float: left;
}
img.fl {
margin-right: $small-value;
}
.fr {
float: right;
}
img.fr {
margin-left: $small-value;
}
img.fl,
img.fr {
margin-bottom: $tiny-value;
}
/* table layout */
.row {
display: table;
table-layout: fixed;
width: 100%;
}
.row > *,
.col {
display: table-cell;
vertical-align: top;
}
/* no table-cell for script tag when body is a .row */
body > script {
display: none !important;
}
/* inline-block */
.inbl {
display: inline-block;
vertical-align: top;
}
/* flexbox layout
http://www.alsacreations.com/tuto/lire/1493-css3-flexbox-layout-module.html
*/
.flexbox,
.flexbox-h,
.flexbox-v {
display : flex;
flex-wrap: wrap;
flex-direction: row;
}
.flexbox-v {
flex-direction: column;
}
.flexitem-fluid {
flex: 1;
}
.flexitem-first {
order : -1;
}
.flexitem-medium {
order : 0;
}
.flexitem-last {
order : 1;
}
.flexitem-center {
margin: auto;
}

View file

@ -1,151 +0,0 @@
/* ---------------------------------- */
/* ==Grids */
/* ---------------------------------- */
// WARNING : KNACSS grids are flexbox based and only supported by IE10+
// Tuto : http://www.alsacreations.com/tuto/lire/1659-une-grille-responsive-avec-flexbox-et-LESS.html
// Demo : http://codepen.io/raphaelgoetter/pen/ZYjwEB
// Usage in vanilla CSS:
// - <div class="grid-4"> for an equal fourth columns grid container
// - <div class="grid-2-1"> for an uneven columns grid container
// Usage with preprocessors : if you're using Sass, you can config grids variables :
// n = number of columns (default = 4) / g = gutter value (default = 1em)
// example : .grid-perso { @include grid(12, 10px); }
// ... or uneven grids :
// left = left ratio column (default = 2) / right = right ratio column (default = 1) / gutter (default = 1em)
// example : .grid-perso { @include uneven-grid(2, 1, 10px); }
[class*="grid-"] {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-between;
margin-left: -$gutter;
}
[class*="grid-"] > * {
flex: 0 0 auto;
display: block; /* IE fix */
width: calc(100% * 1 / #{$number} - #{$gutter});
margin-left: $gutter;
}
// Sass mixins for *equal* columns grid container
// example : .grid-perso { @include grid(12); }
@mixin grid($number:$number,$gutter:$gutter) {
& > * {
width: calc(100% * 1 / #{$number} - #{$gutter});
}
& > .flexitem-double {
width: calc(100% * 2 / #{$number} - #{$gutter});
}
@media (min-width: ($tiny-screen + 1)) and (max-width: $small-screen) {
& > * {
width: calc(100% * 1 / 2 - #{$gutter});
}
& > .flexitem-double {
width: calc(100% - #{$gutter});
}
}
@media (max-width: $tiny-screen) {
& > * {
width: calc(100% - #{$gutter});
}
& > .flexitem-double {
width: calc(100% - #{$gutter});
}
}
}
// Examples : will be compiled in CSS
.grid-2 {
@include grid(2);
}
.grid-3 {
@include grid(3);
}
.grid-4 {
@include grid(4);
}
.grid-5 {
@include grid(5);
}
.grid-6 {
@include grid(6);
}
.grid-7 {
@include grid(7);
}
.grid-8 {
@include grid(8);
}
.grid-10 {
@include grid(10);
}
.grid-12 {
@include grid(12);
}
// LESS mixins for *unequal* columns grid container
// example : .grid-perso { @include uneven-grid(2, 1); }
@mixin uneven-grid($left:$left, $right:$right, $gutter:$gutter) {
& > *:nth-child(odd) {
$size: ($left / ($left + $right)) * 100%;
width: calc(#{$size} - #{$gutter});
}
& > *:nth-child(even) {
$size: ($right / ($left + $right)) * 100%;
width: calc(#{$size} - #{$gutter});
}
@media (max-width: $tiny-screen) {
& > *:nth-child(n) {
width: calc(100% - #{$gutter});
}
}
}
// Examples : will be compiled in CSS
.grid-2-1 {
@include uneven-grid(2,1);
}
.grid-1-2 {
@include uneven-grid(1,2);
}
.grid-3-1 {
@include uneven-grid(3,1);
}
.grid-1-3 {
@include uneven-grid(1,3);
}
.grid-3-2 {
@include uneven-grid(3,2);
}
.grid-2-3 {
@include uneven-grid(2,3);
}
.grid-4-1 {
@include uneven-grid(4,1);
}
.grid-1-4 {
@include uneven-grid(1,4);
}

View file

@ -1,38 +0,0 @@
/* ----------------------------- */
/* ==tables */
/* ----------------------------- */
table,
.table {
width: 100%;
max-width : 100%;
table-layout: fixed;
border-collapse: collapse;
vertical-align: top;
border: 1px solid #ccc;
}
.table {
display: table;
}
table#recaptcha_table,
table.table-auto {
table-layout:auto;
}
caption {
padding: $small-value;
color: #555;
font-style: italic;
}
td,
th {
padding: 0.3em 0.8em;
border: 1px #aaa dotted;
vertical-align: top;
min-width: $medium-value;
cursor: default;
text-align: left;
}

View file

@ -1,79 +0,0 @@
/* ----------------------------- */
/* ==forms */
/* ----------------------------- */
/* thanks to HTML5boilerplate,
* github.com/nathansmith/formalize and www.sitepen.com
*/
/* buttons */
.btn {
display: inline-block;
}
/* forms items */
form,
fieldset {
border: none;
}
input,
button,
select,
label,
.btn {
vertical-align: middle;
font-family: inherit;
font-size: inherit;
}
label {
display: inline-block;
vertical-align: middle;
cursor: pointer;
}
legend {
border: 0;
white-space: normal;
}
textarea {
min-height: 5em;
vertical-align: top;
font-family: inherit;
font-size: inherit;
resize: vertical;
}
/* if select styling bugs on WebKit */
/* select { -webkit-appearance: none; } */
/* 'x' appears on right of search input when text is entered. This removes it */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
display: none;
}
::-webkit-input-placeholder {
color: #777;
}
input:-moz-placeholder,
textarea:-moz-placeholder {
color: #777;
}
.btn:focus,
input:focus,
button:focus {
outline: 0;
-webkit-tap-highlight-color: transparent;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
background-image: none;
}

View file

@ -1,296 +0,0 @@
/* ---------------------------------- */
/* ==visual helpers */
/* .. use them with parcimony ! */
/* ---------------------------------- */
/* blocks widths (percentage and pixels) */
.w10 {
width: 10%;
}
.w20 {
width: 20%;
}
.w25 {
width: 25%;
}
.w30 {
width: 30%;
}
.w33 {
width: 33.3333%;
}
.w40 {
width: 40%;
}
.w50 {
width: 50%;
}
.w60 {
width: 60%;
}
.w66 {
width: 66.6666%;
}
.w70 {
width: 70%;
}
.w75 {
width: 75%;
}
.w80 {
width: 80%;
}
.w90 {
width: 90%;
}
.w100 {
width: 100%;
}
.w50p {
width: 50px;
}
.w100p {
width: 100px;
}
.w150p {
width: 150px;
}
.w200p {
width: 200px;
}
.w300p {
width: 300px;
}
.w400p {
width: 400px;
}
.w500p {
width: 500px;
}
.w600p {
width: 600px;
}
.w700p {
width: 700px;
}
.w800p {
width: 800px;
}
.w960p {
width: 960px;
}
.mw960p {
max-width: 960px;
}
.w1140p {
width: 1140px;
}
.mw1140p {
max-width: 1140px;
}
.wauto {
width: auto;
}
/* spacing helpers
p,m = padding,margin
a,t,r,b,l = all,top,right,bottom,left
s,m,l,n = small, medium, large, none
*/
.man,
.ma0 {
margin: 0;
}
.pan,
.pa0 {
padding: 0;
}
.mas {
margin: $small-value;
}
.mam {
margin: $medium-value;
}
.mal {
margin: $large-value;
}
.pas {
padding: $small-value;
}
.pam {
padding: $medium-value;
}
.pal {
padding: $large-value;
}
.mtn,
.mt0 {
margin-top: 0;
}
.mts {
margin-top: $small-value;
}
.mtm {
margin-top: $medium-value;
}
.mtl {
margin-top: $large-value;
}
.mrn,
.mr0 {
margin-right: 0;
}
.mrs {
margin-right: $small-value;
}
.mrm {
margin-right: $medium-value;
}
.mrl {
margin-right: $large-value;
}
.mbn,
.mb0 {
margin-bottom: 0;
}
.mbs {
margin-bottom: $small-value;
}
.mbm {
margin-bottom: $medium-value;
}
.mbl {
margin-bottom: $large-value;
}
.mln,
.ml0 {
margin-left: 0;
}
.mls {
margin-left: $small-value;
}
.mlm {
margin-left: $medium-value;
}
.mll {
margin-left: $large-value;
}
.ptn,
.pt0 {
padding-top: 0;
}
.pts {
padding-top: $small-value;
}
.ptm {
padding-top: $medium-value;
}
.ptl {
padding-top: $large-value;
}
.prn,
.pr0 {
padding-right: 0;
}
.prs {
padding-right: $small-value;
}
.prm {
padding-right: $medium-value;
}
.prl {
padding-right: $large-value;
}
.pbn,
.pb0 {
padding-bottom: 0;
}
.pbs {
padding-bottom: $small-value;
}
.pbm {
padding-bottom: $medium-value;
}
.pbl {
padding-bottom: $large-value;
}
.pln,
.pl0 {
padding-left: 0;
}
.pls {
padding-left: $small-value;
}
.plm {
padding-left: $medium-value;
}
.pll {
padding-left: $large-value;
}

View file

@ -1,367 +0,0 @@
/* ----------------------------- */
/* ==desktop and HD devices */
/* ----------------------------- */
@media (min-width: ($medium-screen + 1)) {
/* rules for big resources and big screens like: background-images, font-faces, etc. */
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi), (min-resolution: 2dppx) {
/* style adjustments for high density devices */
}
/* ---------------------------------- */
/* ==Responsive large */
/* ---------------------------------- */
@media (min-width: ($medium-screen + 1)) {
/* layouts for large screens */
.large-hidden {
display: none !important;
}
.large-visible {
display: block !important;
}
.large-no-float {
float: none;
}
.large-inbl {
display: inline-block;
float: none;
vertical-align: top;
}
.large-row {
display: table;
table-layout: fixed;
width: 100% !important;
}
.large-col {
display: table-cell;
vertical-align: top;
}
/* widths for large screens */
.large-w25 {
width: 25% !important;
}
.large-w33 {
width: 33.3333% !important;
}
.large-w50 {
width: 50% !important;
}
.large-w66 {
width: 66.6666% !important;
}
.large-w75 {
width: 75% !important;
}
.large-w100,
.large-wauto {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
/* margins for large screens */
.large-man,
.large-ma0 {
margin: 0 !important;
}
}
/* ---------------------------------- */
/* ==Responsive medium */
/* ---------------------------------- */
@media (min-width: ($small-screen + 1)) and (max-width: $medium-screen) {
/* layouts for medium screens */
.medium-hidden {
display: none !important;
}
.medium-visible {
display: block !important;
}
.medium-no-float {
float: none;
}
.medium-inbl {
display: inline-block;
float: none;
vertical-align: top;
}
.medium-row {
display: table;
table-layout: fixed;
width: 100% !important;
}
.medium-col {
display: table-cell;
vertical-align: top;
}
/* widths for medium screens */
.medium-w25 {
width: 25% !important;
}
.medium-w33 {
width: 33.3333% !important;
}
.medium-w50 {
width: 50% !important;
}
.medium-w66 {
width: 66.6666% !important;
}
.medium-w75 {
width: 75% !important;
}
.medium-w100,
.medium-wauto {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
/* margins for medium screens */
.medium-man,
.medium-ma0 {
margin: 0 !important;
}
}
/* ---------------------------------- */
/* ==Responsive small */
/* ---------------------------------- */
@media (min-width: ($tiny-screen + 1)) and (max-width: $small-screen) {
/* quick reset in small resolution and less */
.w600p,
.w700p,
.w800p,
.w960p,
.mw960p {
width: auto;
float: none;
}
/* layouts for small screens */
.small-hidden {
display: none !important;
}
.small-visible {
display: block !important;
}
.small-no-float {
float: none;
}
.small-inbl {
display: inline-block;
float: none;
vertical-align: top;
}
.small-row {
display: table !important;
table-layout: fixed !important;
width: 100% !important;
}
.small-col {
display: table-cell !important;
vertical-align: top !important;
}
/* widths for small screens */
.small-w25 {
width: 25% !important;
}
.small-w33 {
width: 33.3333% !important;
}
.small-w50 {
width: 50% !important;
}
.small-w66 {
width: 66.6666% !important;
}
.small-w75 {
width: 75% !important;
}
.small-w100,
.small-wauto {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
/* margins for small screens */
.small-man,
.small-ma0 {
margin: 0 !important;
}
.small-pan,
.small-pa0 {
padding: 0 !important;
}
}
/* ---------------------------------- */
/* ==Responsive tiny */
/* ---------------------------------- */
@media (max-width: $tiny-screen) {
/* quick small resolution reset */
.mod,
.col,
fieldset {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
.w300p,
.w400p,
.w500p {
width: auto;
float: none;
}
.row {
display: block !important;
width: 100% !important;
}
/* layouts for tiny screens */
.tiny-hidden {
display: none !important;
}
.tiny-visible {
display: block !important;
}
.tiny-no-float {
float: none;
}
.tiny-inbl {
display: inline-block;
float: none;
vertical-align: top;
}
.tiny-row {
display: table !important;
table-layout: fixed !important;
width: 100% !important;
}
.tiny-col {
display: table-cell !important;
vertical-align: top !important;
}
th,
td {
display: block !important;
width: auto !important;
text-align: left !important;
}
thead {
display: none;
}
/* widths for tiny screens */
.tiny-w25 {
width: 25% !important;
}
.tiny-w33 {
width: 33.3333% !important;
}
.tiny-w50 {
width: 50% !important;
}
.tiny-w66 {
width: 66.6666% !important;
}
.tiny-w75 {
width: 75% !important;
}
.tiny-w100,
.tiny-wauto {
display: block !important;
float: none !important;
clear: none !important;
width: auto !important;
margin-left: 0 !important;
margin-right: 0 !important;
border: 0;
}
/* margins for tiny screens */
.tiny-man,
.tiny-ma0 {
margin: 0 !important;
}
.tiny-pan,
.tiny-pa0 {
padding: 0 !important;
}
}

View file

@ -1,93 +0,0 @@
/* quick print reset */
@media print {
* {
background: transparent !important;
box-shadow: none !important;
text-shadow: none !important;
}
body {
width: auto !important;
margin: auto !important;
font-family: serif;
font-size: 12pt;
background-color: #fff !important;
color: #333 !important;
}
p,
.p-like,
h1,
.h1-like,
h2,
.h2-like,
h3,
.h3-like,
h4,
.h4-like,
h5,
.h5-like,
h6,
.h6-like,
blockquote,
ul,
ol {
color: #000 !important;
margin: auto !important;
}
.print {
display: block;
}
.no-print {
display: none;
}
/* no orphans, no widows */
p,
.p-like,
blockquote {
orphans: 3;
widows: 3;
}
/* no breaks inside these elements */
blockquote,
ul,
ol {
page-break-inside: avoid;
}
/* page break before main headers */
h1,
.h1-like {
page-break-before: always;
}
/* no breaks after these elements */
h1,
.h1-like,
h2,
.h2-like,
h3,
.h3-like,
caption {
page-break-after: avoid;
}
a {
color: #000 !important;
text-decoration: underline !important;
}
/* displaying URLs */
a[href]::after {
content: " (" attr(href) ")";
}
a[href^="javascript:"]::after,
a[href^="#"]::after {
content: "";
}
}

View file

@ -1,55 +0,0 @@
/* ----------------------------- */
/* ==misc rules */
/* ----------------------------- */
/* styling skip links */
.skip-links {
position: absolute;
& a {
position: absolute;
overflow: hidden;
clip: rect(1px, 1px, 1px, 1px);
padding: 0.5em;
background: black;
color: white;
text-decoration: none;
&:focus {
position: static;
overflow: visible;
clip: auto;
}
}
}
// hyphens on small screens
@media (max-width: $small-screen) {
/* you shall not pass */
div,
textarea,
table,
td,
th,
code,
pre,
samp {
word-wrap: break-word;
hyphens: auto;
}
}
/* Google Gmap3 bug fix on images */
.gm-style img {
height: 100%;
}
:not(.gm-style) img {
height: auto;
}
.gm-style img,
.gmnoscreen img,
.gmnoprint img {
max-width: none !important;
}

View file

@ -1,139 +0,0 @@
/* ----------------------------- */
/* ==minor stylings */
/* ----------------------------- */
/* styling elements */
code, kbd, mark {
border-radius: 2px;
}
kbd {
padding: 0 2px;
border: 1px solid #999;
}
code {
padding: 2px 4px;
background: rgba(0,0,0,0.04);
color: #b11;
}
pre code {
padding: none;
background: none;
color: inherit;
border-radius: 0;
}
mark {
padding:2px 4px;
background: #ff0;
}
sup,
sub {
vertical-align: 0;
position: relative;
}
sup {
bottom: 1ex;
}
sub {
top: 0.5ex;
}
blockquote {
position: relative;
padding-left: 3em;
}
blockquote::before {
content: "\201C";
position: absolute;
left: 0;
top: 0;
font-family: georgia, serif;
font-size: 5em;
line-height: 0.9;
color: rgba(0, 0, 0, .3);
}
blockquote > footer {
margin-top: .75em;
font-size: 0.9em;
color: rgba(0, 0, 0, .7);
}
blockquote > footer::before {
content: "\2014 \0020";
}
q {
font-style: normal;
}
q,
.q {
quotes: "“\00a0" "\00a0”";
}
q:lang(fr),
.q:lang(fr) {
quotes: "«\00a0" "\00a0»";
}
hr {
display: block;
clear: both;
height: 1px;
margin: 1em 0 2em;
padding: 0;
border: 0;
color: #ccc;
background-color: #ccc;
}
/* alternate tables */
.table-alternate {
border: 0;
}
.table-alternate tbody {
border: 1px solid #ccc;
}
.table-alternate thead tr > * + * {
border-left: 0;
}
.table-alternate tbody tr > * + * {
border-left: 1px solid #ccc;
}
/* alternate-vert tables */
.table-alternate-v {
border: 0;
border-right: 1px solid #ccc;
}
.table-alternate-v tr > :first-child {
border-bottom: 0;
}
.table-alternate-v tr > * + * {
border-top: 1px solid #ccc;
}
/* striped tables */
.table-striped tbody tr:nth-child(odd) {
background: #eee;
background: rgba(0, 0, 0, .05);
}
/* striped-vert tables */
.table-striped-v tr > :first-child {
background: #eee;
background: rgba(0, 0, 0, .05);
}

View file

@ -1,302 +0,0 @@
/* ----------------------------- */
/* ==WordPress reset */
/* ----------------------------- */
/*
Author: Geoffrey Crofte, Alsacréations
Contributors: Automattic, Geoffrey Crofte
Description: Reset styles for WordPress usage of KNACSS
*/
/* ----------------------------- */
/* ==Menus */
/* ----------------------------- */
// current menu elements
.current_page_item > a {
}
.current-menu-item > a {
}
.current_page_ancestor > a {
}
// blocks of content navigation
.comment-navigation,
.paging-navigation,
.post-navigation {
margin: 0 0 1.5em;
overflow: hidden;
}
.comment-navigation .nav-previous,
.paging-navigation .nav-previous,
.post-navigation .nav-previous {
float: left;
width: 50%;
}
.comment-navigation .nav-next,
.paging-navigation .nav-next,
.post-navigation .nav-next {
float: right;
text-align: right;
width: 50%;
}
/* ----------------------------- */
/* ==Alignments */
/* ----------------------------- */
// class in img elements
.alignnone {
margin: .25em 1.5em 1.5em 0;
}
.aligncenter {
clear: both;
display: block;
margin: 1.5em auto;
}
.alignleft {
float: left;
margin: 0 1.5em .25em 0;
}
.alignright {
float: right;
margin: 0 0 .25em 1.5em;
}
/* ----------------------------- */
/* ==Clearings */
/* ----------------------------- */
.entry-content,
.comment-content {
clear: both;
&::after, &::before {
content: "";
display: table;
}
}
/* ----------------------------- */
/* ==Widgets */
/* ----------------------------- */
.widget + .widget {
margin: 1.5em 0 0;
}
// usage example:
.widget select {
max-width: 100%;
}
/* ----------------------------- */
/* ==Posts and pages */
/* ----------------------------- */
/* === 5.1 Posts - post_class === */
// featured content
.sticky {
}
// attachment post
.attachment {
}
// format of post
.format- {
&aside {
}
&gallery {
}
&link {
}
&image {
}
&quote {
}
&status {
}
&video {
}
&chat {
}
}
// class for a tag
.tag- {
&name-of-tag {
}
}
// class for categorie
.category- {
&name-of-category {
}
}
/* === 5.2 Pages - body_class === */
// front page
.home {
// if display posts
&.blog {
}
// if static page
&.page {
}
}
// page displays posts
.blog {
// if is frontpage
&.home {
}
// if static page
&.page {
}
}
// simple page
.page {
}
// page of single post
.single {
}
// page of archives
.archive {
}
// page of search
.search {
// if has results
.search-results {
}
// if has no results
.search-no-results {
}
}
// page 404
.error404 {
}
// user logged in
.logged-in {
}
// text direction if right-to-left
// prefer rtl.css: http://codex.wordpress.org/Right-to-Left_Language_Support
.rtl {
}
/* === 5.3 Posts and Pages - Contents === */
.hentry {
margin: 0 0 1.5em;
}
.page-content,
.entry-content,
.entry-summary {
margin: 1.5em 0 0;
}
.page-links {
clear: both;
margin: 0 0 1.5em;
}
/* ----------------------------- */
/* ==Comments */
/* ----------------------------- */
.comment-content a {
word-wrap: break-word;
}
.bypostauthor {
// some make-the-logo-bigger styles
}
/* ----------------------------- */
/* ==Media */
/* ----------------------------- */
img.wp-smiley {
margin-bottom: 0;
margin-top: 0;
padding: 0;
border: none;
}
/* ----------------------------- */
/* ==Captions */
/* ----------------------------- */
.wp-caption {
max-width: 100%;
margin-bottom: 1.5em;
}
.wp-caption img {
display: block;
margin: 0 auto;
}
.wp-caption-text {
margin: 1em 0;
text-align: center;
}
/* ----------------------------- */
/* ==Galleries */
/* ----------------------------- */
.gallery {
margin-bottom: 1.5em;
}
.gallery-item {
display: inline-block;
width: 100%;
text-align: center;
vertical-align: top;
.gallery-columns-2 & {
max-width: 50%;
}
.gallery-columns-3 & {
max-width: 33.33%;
}
.gallery-columns-4 & {
max-width: 25%;
}
.gallery-columns-5 & {
max-width: 20%;
}
.gallery-columns-6 & {
max-width: 16.66%;
}
.gallery-columns-7 & {
max-width: 14.28%;
}
.gallery-columns-8 & {
max-width: 12.5%;
}
.gallery-columns-9 & {
max-width: 11.11%;
}
}
.gallery-caption {
display: block;
}

View file

@ -0,0 +1,40 @@
// Respond-to mixin
// ex. @include respond-to("medium-up") {...}
$bp-aliases: (
"small": (
max-width: #{$small - 1},
),
"medium": (
max-width: #{$medium - 1},
),
"large": (
max-width: #{$large - 1},
),
"small-up": (
min-width: #{$small},
),
"medium-up": (
min-width: #{$medium},
),
"large-up": (
min-width: #{$large},
),
);
// Source : https://www.sitepoint.com/managing-responsive-breakpoints-sass/
@mixin respond-to($name) {
// If the key exists in the map
@if map-has-key($bp-aliases, $name) {
// Prints a media query based on the value
@media #{inspect(map-get($bp-aliases, $name))} {
@content;
}
}
// If the key doesn't exist in the map
@else {
@warn "Unfortunately, no value could be retrieved from `#{$name}`. "
+"Please make sure it is defined in `$bp-aliases` map.";
}
}

View file

@ -0,0 +1,230 @@
// ----------------
// Config Sass et variables
// ----------------
// ----------------
// Valeurs de Breakpoints
// ----------------
// Hypothèse : smartphone portrait/paysage < 576px < gros smartphone paysage + tablette portrait < 992px < tablette paysage < 1330px < laptop et plus
$breakpoints: (
sm: 576px,
md: 992px,
lg: 1400px,
) !default;
$small: map-get($breakpoints, sm) !default;
$medium: map-get($breakpoints, md) !default;
$large: map-get($breakpoints, lg) !default;
// ----------------
// Spacers
// ----------------
$spacer: 1rem;
$spacers: (
"0": 0, // none
"1": 1px, // mono
"2": 0.125rem, // nano
"4": 0.25rem, // micro
"8": 0.5rem, // mini
"12": 0.75rem, // small
"16": 1rem, // medium
"20": 1.25rem, // large
"24": 1.5rem, // wide
"36": 2.25rem, // ultra
"auto": auto,
);
$spacer-none: map-get($spacers, "0");
$spacer-mono: map-get($spacers, "1");
$spacer-nano: map-get($spacers, "2");
$spacer-micro: map-get($spacers, "4");
$spacer-mini: map-get($spacers, "8");
$spacer-small: map-get($spacers, "12");
$spacer-medium: map-get($spacers, "16");
$spacer-large: map-get($spacers, "20");
$spacer-wide: map-get($spacers, "24");
$spacer-ultra: map-get($spacers, "36");
// ----------------
// Grid layout
// ----------------
$grid-columns: 6 !default;
$gaps: (
"0": 0,
"5": 0.313rem,
"10": 0.625rem,
"16": 1rem,
"20": 1.25rem,
"36": 2.25rem,
) !default;
// ----------------
// Fonts
// ----------------
// Familles de fonts
$font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
$font-family-headings: $font-family-base;
$font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, monospace;
$line-height-base: 1.5;
// Font sizes
$font-size: (
"10": 0.625rem,
"11": 0.6875rem,
"12": 0.75rem,
"14": 0.875rem,
"16": 1rem,
"18": 1.125rem,
"20": 1.25rem,
"24": 1.5rem,
"30": 1.875rem,
"36": 2.25rem,
"base": 1rem,
"inherit": inherit,
);
$font-size-html: 100%;
$font-size-base: 1rem;
// Graisses des Fonts
$weight-light: 200;
$weight-book: 300;
$weight-regular: 400;
$weight-medium: 500;
$weight-bold: 700;
// ----------------
// Couleurs
// ----------------
// Variables niveaux de gris
$gray-100: #f8f9fa;
$gray-200: #e9ecef;
$gray-300: #dee2e6;
$gray-400: #ced4da;
$gray-500: #adb5bd;
$gray-600: #6c757d;
$gray-700: #495057;
$gray-800: #343a40;
$gray-900: #212529;
$white: #FFFFFF;
$black: #0F0F0F;
// Variables couleurs globales
$body-color: $gray-900;
$body-bg: $white;
$primary: #6fa939; // Couleur dominante. Elle peut s'appliquer à la fois à des surfaces ou à des contenus.
$primary-accent: #4e920f; // Modifieur de couleur dominante (survol, bordure)
$on-primary: $white; // Contenus (texte, lien, icône) affichés par-dessus une couche $primary
$secondary: #008cba; // Couleur d'accentuation. Elle s'applique généralement aux liens, mais peut s'appliquer à la fois à des surfaces ou à des contenus.
$secondary-accent: #027da7; // Modifieur de couleur d'accentuation (survol, bordure)
$on-secondary: $white; // Contenus affichés par-dessus une couche $secondary
// Variables couleurs statuts
$success-bg: #dff0d9;
$success-border: #d6e9c6;
$success: #3c763d;
$success-hover: #275c28;
$info-bg: #d9edf7;
$info-border: #bce8f1;
$info: #0d7192;
$info-hover: #005e7d;
$warning-bg: #fcf8e3;
$warning-border: #faebcc;
$warning: #8a6d3b;
$warning-hover: #654f29;
$error-bg: #fff2f2;
$error-border: #ebccd1;
$error: #e3224a;
$error-hover: #a00d10;
// Links
$link-decoration: underline;
$link-decoration-hover: underline;
// Border radius
$radius-none: 0;
$radius-small: 0.5rem;
$radius-medium: 1rem;
$radius-large: 20rem;
$radius-circle: 50%;
// ----------------
// Liste des propriétés utilitaires (note display: grid se trouve dans Grillade)
// ----------------
$utils: ((hidden, display, none),
(block, display, block),
(inline, display, inline),
(inline-block, display, inline-block),
(flex, display, flex),
(flex-row, flex-direction, row),
(flex-col, flex-direction, column),
(flex-wrap, flex-wrap, wrap),
(flex-no-wrap, flex-wrap, nowrap),
(flex-shrink, flex-shrink, 1),
(flex-no-shrink, flex-shrink, 0),
(flex-grow, flex-grow, 1),
(flex-no-grow, flex-grow, 0),
(float-left, float, left),
(float-right, float, right),
(float-none, float, none),
(text-bold, font-weight, bold),
(text-italic, font-style, italic),
(text-uppercase, text-transform, uppercase),
(text-lowercase, text-transform, lowercase),
(text-smaller, font-size, smaller),
(text-larger, font-size, larger),
(text-left, text-align, left),
(text-center, text-align, center),
(text-right, text-align, right),
(text-justify, text-align, justify),
(text-wrap, overflow-wrap, break-word),
(justify-start, justify-content, flex-start),
(justify-end, justify-content, flex-end),
(justify-center, justify-content, center),
(justify-between, justify-content, space-between),
(justify-around, justify-content, space-around),
(justify-evenly, justify-content, space-evenly),
(justify-items-start, justify-items, start),
(justify-items-end, justify-items, end),
(justify-items-center, justify-items, center),
(align-start, align-content, start),
(align-end, align-content, end),
(align-center, align-content, center),
(align-between, align-content, space-between),
(align-around, align-content, space-around),
(align-evenly, align-content, space-evenly),
(align-items-start, align-items, flex-start),
(align-items-end, align-items, flex-end),
(align-items-center, align-items, center),
(place-center, place-content, center),
(justify-self-auto, justify-self, auto),
(justify-self-start, justify-self, start),
(justify-self-end, justify-self, end),
(justify-self-center, justify-self, center),
(justify-self-stretch, justify-self, stretch),
(align-self-auto, align-self, auto),
(align-self-start, align-self, flex-start),
(align-self-end, align-self, flex-end),
(align-self-center, align-self, center),
(align-self-stretch, align-self, stretch),
(align-top, vertical-align, top),
(align-bottom, vertical-align, bottom),
(align-middle, vertical-align, middle),
(item-first, order, -100),
(item-last, order, 100)) !default;

41
sass/base/_layout.scss Executable file
View file

@ -0,0 +1,41 @@
/* ---------------------------- */
/* ==Layout classes */
/* ----------------------------- */
/* Global container */
.layout-maxed {
display: grid;
@each $key,
$value in $breakpoints {
@media (min-width: #{$value}) {
grid-template-columns:
minmax($spacer-small, 1fr)
minmax(auto, $value)
minmax($spacer-small, 1fr);
}
}
}
/* Center all children */
.layout-maxed > * {
grid-column: 2;
}
/* Hero box */
.layout-hero {
grid-column: 1 / -1;
display: grid;
grid-template-columns: inherit;
}
.layout-hero > * {
grid-column: 2;
}
/* Hero image */
.layout-hero-img {
grid-column: 1 / -1;
justify-self: center;
max-width: 100%;
}

View file

@ -0,0 +1,65 @@
/*
* Hidden but not for an assistive technology like a screen reader, Yahoo! method
*/
.visually-hidden,
.sr-only {
position: absolute !important;
border: 0 !important;
height: 1px !important;
width: 1px !important;
padding: 0 !important;
overflow: hidden !important;
clip: rect(0, 0, 0, 0) !important;
}
/*
* Disable animations styles when reduced motion is enabled
*/
@media (prefers-reduced-motion: reduce) {
* {
animation: none !important;
transition: none !important;
}
}
/*
* Change the cursor on busy elements in all browsers.
*/
[aria-busy="true"] {
cursor: progress;
}
/*
* Change the cursor on control elements in all browsers.
*/
[aria-controls] {
cursor: pointer;
}
/*
* Change the cursor on disabled, not-editable, or otherwise
* inoperable elements in all browsers.
*/
[aria-disabled="true"],
[disabled] {
cursor: not-allowed;
}
/*
* Change the display on visually hidden accessible elements
* in all browsers.
*/
[aria-hidden="false"][hidden] {
display: initial;
}
[aria-hidden="false"][hidden]:not(:focus) {
clip: rect(0, 0, 0, 0);
position: absolute;
}

257
sass/base/_reset-base.scss Normal file
View file

@ -0,0 +1,257 @@
/* ----------------------------- */
/* ==Reset (base) */
/* ----------------------------- */
/*
* 1. Switch to border-box model for all elements
* 2. Avoid min-width: auto on flex and grid items
*/
*,
*::before,
*::after {
box-sizing: border-box;
/* 1 */
min-width: 0;
/* 2 */
}
/*
* 1. Remove the grey highlight on links in iOS
* 2. Prevent orientation font changes in iOS
* 3. Breaks words to prevent overflow in all browsers
*/
html {
font-size: $font-size-html;
-webkit-tap-highlight-color: transparent;
/* 1 */
-webkit-text-size-adjust: 100%;
/* 2 */
overflow-wrap: break-word;
/* 3 */
}
body {
margin: 0;
font-family: $font-family-base;
font-size: $font-size-base;
line-height: $line-height-base;
background-color: $body-bg;
color: $body-color;
}
/*
* Headings
*/
h1,
.h1-like,
h2,
.h2-like,
h3,
.h3-like,
h4,
.h4-like,
h5,
.h5-like,
h6,
.h6-like {
color: $gray-900;
}
/*
* Links
*/
a {
color: $gray-600;
text-decoration: $link-decoration;
}
a:focus,
a:hover,
a:active {
color: $gray-900;
text-decoration: $link-decoration-hover;
}
/**
* 1. Remove the bottom border in Chrome 57-
* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
*/
abbr[title] {
border-bottom: none;
/* 1 */
text-decoration: underline;
/* 2 */
text-decoration: underline dotted;
/* 2 */
}
/*
* Vertical rythm
*/
h1,
.h1-like,
h2,
.h2-like {
margin-top: 0;
margin-bottom: $spacer-medium;
}
p,
address,
ol,
ul,
dl,
blockquote,
pre,
h3,
.h3-like,
h4,
.h4-like,
h5,
.h5-like,
h6,
.h6-like,
dt,
dd {
margin-top: 0;
margin-bottom: $spacer-small;
}
/*
* Nested elements
*/
ol ol,
ol ul,
ul ol,
ul ul,
li ul,
li ol,
nav ul,
nav ol,
li p,
li .p-like {
margin-top: 0;
margin-bottom: 0;
}
/*
* Lists
*/
ul,
ol {
padding-left: $spacer-medium;
}
nav ul,
nav ol {
list-style: none;
padding: 0;
}
/*
* Embed content
*/
audio,
canvas,
iframe,
img,
svg,
video {
vertical-align: middle;
}
img,
table,
td,
blockquote,
pre,
code,
input,
textarea,
select,
video,
svg,
iframe {
max-width: 100%;
}
iframe,
img,
input,
select,
textarea {
height: auto;
}
img {
border-style: none;
}
/**
* Remove the border on iframes in all browsers
*/
iframe {
border-style: none;
}
/*
* Fill color matching to text color
*/
svg:not([fill]) {
fill: currentColor;
}
/*
* Hide the overflow in IE
*/
svg:not(:root) {
overflow: hidden;
}
/*
* Tables
*/
table {
border-collapse: collapse;
}
/*
* Rulers
*/
hr {
box-sizing: content-box;
height: 0;
overflow: visible;
border: 0;
border-top: 1px solid;
margin: $spacer-medium 0;
clear: both;
color: inherit;
}
/*
* table styles
*/
table {
width: 100%;
max-width: 100%;
table-layout: fixed;
border-collapse: collapse;
vertical-align: top;
margin-bottom: $spacer-medium;
}

224
sass/base/_reset-forms.scss Normal file
View file

@ -0,0 +1,224 @@
/* ----------------------------- */
/* ==Reset (forms) */
/* ----------------------------- */
/*
* Remove the tapping delay on clickable elements in all browsers .
*/
a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
-ms-touch-action: manipulation;
touch-action: manipulation;
}
/*
* 1. Change the inconsistent appearance in all browsers.
* 2. Add typography inheritance in all browsers.
*/
button,
input,
select,
textarea {
margin: 0;
background-color: transparent; /* 1 */
color: inherit; /* 1 */
font-family: inherit; /* 2 */
font-size: inherit; /* 2 */
line-height: inherit; /* 2 */
letter-spacing: inherit; /* 2 */
vertical-align: middle;
}
/*
* Basic User Interface reset
*/
button,
input:not([type="radio"]):not([type="checkbox"]),
select,
textarea {
border: 0;
}
/*
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/
pre,
code,
kbd,
samp {
font-family: monospace, monospace; /* 1 */
font-size: 1em; /* 2 */
}
pre {
tab-size: 2;
white-space: pre-wrap;
line-height: normal;
overflow: auto;
-ms-overflow-style: scrollbar;
}
/*
* Show overflow in IE/Edge
*/
button,
input {
overflow: visible;
}
/*
* Remove the inheritance of text transform in Firefox
*/
button,
select {
text-transform: none;
}
/*
* Correct the inability to style clickable types in iOS and Safari.
*/
button,
[type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button;
}
form,
fieldset {
border: none;
}
fieldset {
margin: 0;
padding: $spacer-medium;
}
legend {
display: table;
max-width: 100%;
padding: 0 $spacer-micro;
border: 0;
color: inherit;
white-space: normal;
}
label {
display: inline-block;
cursor: pointer;
}
textarea {
overflow: auto;
vertical-align: top;
resize: vertical;
white-space: pre-wrap;
}
progress {
display: inline-block;
width: 100%;
vertical-align: baseline;
}
output {
display: inline-block;
}
summary {
display: list-item;
}
template {
display: none;
}
/* ----------------------------- */
/* Form oddities */
/* ----------------------------- */
/*
* 1. Correct the odd appearance in Chrome, Edge, and Safari.
* 2. Correct the outline style in Safari.
*/
[type="search"] {
-webkit-appearance: textfield; /* 1 */
outline-offset: -2px; /* 2 */
}
/*
* Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
height: auto;
}
/*
* Correct the text style of placeholders in Chrome, Edge, and Safari.
*/
::-webkit-input-placeholder {
color: inherit;
opacity: 0.54;
}
/*
* Remove the inner padding in Chrome, Edge, and Safari on macOS.
*/
::-webkit-search-decoration {
-webkit-appearance: none;
}
/*
* 1. Correct the inability to style upload buttons in iOS and Safari.
* 2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
-webkit-appearance: button; /* 1 */
font: inherit; /* 2 */
}
/*
* Remove the inner border and padding of focus outlines in Firefox.
*/
::-moz-focus-inner {
border-style: none;
padding: 0;
}
/*
* Restore the focus outline styles unset by the previous rule in Firefox.
*/
:-moz-focusring {
outline: 1px dotted ButtonText;
}
/*
* Remove the additional :invalid styles in Firefox.
*/
:-moz-ui-invalid {
box-shadow: none;
}

96
sass/base/_reset-print.scss Executable file
View file

@ -0,0 +1,96 @@
/* ----------------------------- */
/* ==Print (quick print reset) */
/* ----------------------------- */
@media print {
* {
background: transparent !important;
box-shadow: none !important;
text-shadow: none !important;
}
body {
width: auto;
margin: auto;
font-family: serif;
font-size: 12pt;
}
p,
.p-like,
h1,
.h1-like,
h2,
.h2-like,
h3,
.h3-like,
h4,
.h4-like,
h5,
.h5-like,
h6,
.h6-like,
blockquote,
label,
ul,
ol {
color: #000;
margin: auto;
}
.print {
display: block;
}
.no-print {
display: none;
}
/* no orphans, no widows */
p,
.p-like,
blockquote {
orphans: 3;
widows: 3;
}
/* no breaks inside these elements */
blockquote,
ul,
ol {
page-break-inside: avoid;
}
/* page break before main headers
h1,
.h1-like {
page-break-before: always;
}
*/
/* no breaks after these elements */
h1,
.h1-like,
h2,
.h2-like,
h3,
.h3-like,
caption {
page-break-after: avoid;
}
a {
color: #000;
}
/* displaying URLs
a[href]::after {
content: " (" attr(href) ")";
}
*/
a[href^="javascript:"]::after,
a[href^="#"]::after {
content: "";
}
}

85
sass/components/_burger.scss Executable file
View file

@ -0,0 +1,85 @@
/*
* component nav "burger" button
*/
/*
* HTML template example:
* <button class="burger-button" type="button" role="button" aria-label="open/close navigation"><i></i></button>
* activate it with a JS toggle-class to .is-active
* see doc : https: //www.knacss.com/doc.html#buttons
*/
/*
* burger variables (you can change them)
*/
$burger-color : #333;
$burger-background : transparent;
$burger-hover-background : transparent;
$burger-size : 2.6rem;
$burger-weight : 5px; // size of stripes
$burger-padding : 0;
/*
* burger button styles
*/
.burger-button {
padding: 0;
background-color: transparent;
box-shadow: none;
outline: 0;
border: 0;
cursor: pointer;
-webkit-tap-highlight-color: transparent;
}
.burger-button > * {
display: inline-flex;
vertical-align: top;
flex-direction: column;
justify-content: space-between;
align-items: stretch;
height: $burger-size;
width: $burger-size;
padding: $burger-padding;
background-color: $burger-background;
background-image: linear-gradient($burger-color, $burger-color);
background-position: center;
background-repeat: no-repeat;
background-origin: content-box;
background-size: 100% $burger-weight;
transition: .25s;
transition-property: transform, background;
will-change: transform, background;
}
.burger-button > *::before,
.burger-button > *::after {
content: "";
height: $burger-weight;
background: $burger-color;
transition: .25s;
transition-property: transform, top;
will-change: transform, top;
}
.burger-button:hover > * {
background-color: $burger-hover-background;
}
.burger-button:focus {
outline: 0;
}
.burger-button.is-active > * {
background-image: none;
justify-content: center;
}
.burger-button.is-active>*::before {
transform: translateY(50%) rotate3d(0, 0, 1, 45deg);
}
.burger-button.is-active>*::after {
transform: translateY(-50%) rotate3d(0, 0, 1, -45deg);
}

71
sass/components/_button.scss Executable file
View file

@ -0,0 +1,71 @@
/*
* basic button component
*/
/*
* HTML template example:
* preferably use <button> for buttons !
* use .button or .btn (for structure) and .btn-- (for variants) (see appearance mixin)
*/
/*
* button reset
*/
%btn {
display: inline-flex;
justify-content: center;
align-items: center;
padding: $spacer-small $spacer-medium;
cursor: pointer;
user-select: none;
transition: 0.25s;
transition-property: box-shadow, background-color, color, border;
text-decoration: none;
border: none;
box-shadow: none;
}
.btn,
.button {
@extend %btn;
&:focus {
-webkit-tap-highlight-color: transparent;
}
}
// button state variants
.btn,
.button {
&--small {
padding: $spacer-micro-plus $spacer-small;
font-size: .8em;
}
&--big {
padding: $spacer-medium $spacer-medium;
font-size: 1.4em;
}
&--block {
width: 100% !important;
display: block;
}
&--unstyled {
padding: 0;
border: none;
text-align: left;
background: none;
border-radius: 0;
box-shadow: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
&:focus {
box-shadow: none;
outline: none;
}
}
}

58
sass/components/_checkbox.scss Executable file
View file

@ -0,0 +1,58 @@
/*
* component checkbox
*/
/*
* HTML template example:
* <input type="checkbox" class="checkbox" id="c1">
* <label for="c1">click here</label>
*/
/*
* checkbox variables (you can change them)
*/
$checkbox-color: $white;
$checkbox-background: $primary;
$checkbox-size: 2rem;
$checkbox-border-radius: 4px;
/*
* checkbox styles
*/
.checkbox {
border-radius: $checkbox-border-radius;
}
.checkbox {
-webkit-appearance: none;
appearance: none;
width: $checkbox-size;
height: $checkbox-size;
vertical-align: text-bottom;
box-shadow: inset 0 0 0 1px $primary;
background-color: $checkbox-color;
transition: background-color 0.15s;
cursor: pointer;
}
.checkbox + label {
cursor: pointer;
}
.checkbox:disabled {
opacity: 0.6;
}
.checkbox:disabled + label {
opacity: 0.6;
cursor: not-allowed;
}
.checkbox:checked {
background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgOCA4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA4IDgiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTYuNCwxTDUuNywxLjdMMi45LDQuNUwyLjEsMy43TDEuNCwzTDAsNC40bDAuNywwLjdsMS41LDEuNWwwLjcsMC43bDAuNy0wLjdsMy41LTMuNWwwLjctMC43TDYuNCwxTDYuNCwxeiINCgkvPg0KPC9zdmc+DQo=");
background-size: 60% 60%;
background-position: center;
background-repeat: no-repeat;
background-color: $checkbox-background;
}

60
sass/components/_quote.scss Executable file
View file

@ -0,0 +1,60 @@
/*
* component quote
*/
/*
* HTML template example:
* <blockquote>
* <p>Lorem Elsass Ipsum mitt picon bière</p>
* </blockquote>
*/
/*
* quotes variables (you can change them)
*/
$blockquote-color: #454d5d;
/*
* quotes styles
*/
blockquote {
position: relative;
padding-left: 3em;
min-height: 2em;
}
blockquote::before {
content: "\201C";
position: absolute;
left: 0;
top: 0;
font-family: georgia, serif;
font-size: 5em;
height: .4em;
line-height: .9;
color: $blockquote-color;
}
blockquote > footer {
margin-top: .75em;
font-size: 0.9em;
color: rgba(0, 0, 0, .7);
&::before {
content: "\2014 \0020";
}
}
q {
font-style: normal;
}
q,
.q {
quotes: "" "" "" "";
&:lang(fr) {
quotes: "«\00a0" "\00a0»" "" "";
}
}

58
sass/components/_radio.scss Executable file
View file

@ -0,0 +1,58 @@
/*
* component radio
*/
/*
* HTML template example:
* <input type="radio" class="radio" name="radio" id="r1">
* <label for="r1">Click here</label>
*/
/*
* radio variables (you can change them)
*/
$radio-color: $primary;
$radio-background: $white;
$radio-size: 2rem;
$radio-border-radius: 50%;
/*
* radio styles
*/
.radio {
border-radius: $radio-border-radius;
}
.radio {
-webkit-appearance: none;
appearance: none;
width: $radio-size;
height: $radio-size;
vertical-align: text-bottom;
box-shadow: inset 0 0 0 1px $primary;
background-color: $radio-background;
transition: background-size 0.15s;
cursor: pointer;
}
.radio + label {
cursor: pointer;
}
.radio:disabled {
opacity: 0.6;
}
.radio:disabled + label {
opacity: 0.6;
cursor: not-allowed;
}
.radio:checked {
background-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20standalone%3D%22no%22%3F%3E%3Csvg%20version%3D%221.1%22%20width%3D%2240%22%20height%3D%2240%22%0AviewBox%3D%220%200%2080%2080%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Ccircle%20cx%3D%2240%22%20cy%3D%2240%22%20r%3D%2224%22%20style%3D%22fill%3A%23ffffff%22/%3E%3C/svg%3E");
background-size: 70% 70%;
background-position: center;
background-repeat: no-repeat;
background-color: $primary;
}

19
sass/components/_select.scss Executable file
View file

@ -0,0 +1,19 @@
/*
* basic select component
*/
/*
HTML template example:
<select>
<option value="salade">salade</option>
<option value="tomate">tomate</option>
<option value="oignons">oignons</option>
</select>
*/
select {
appearance: none;
background-image: url("data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20standalone%3D%22no%22%3F%3E%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%20style%3D%22isolation%3Aisolate%22%20viewBox%3D%220%200%2020%2020%22%20width%3D%2220%22%20height%3D%2220%22%3E%3Cpath%20d%3D%22%20M%209.96%2011.966%20L%203.523%205.589%20C%202.464%204.627%200.495%206.842%201.505%207.771%20L%201.505%207.771%20L%208.494%2014.763%20C%209.138%2015.35%2010.655%2015.369%2011.29%2014.763%20L%2011.29%2014.763%20L%2018.49%207.771%20C%2019.557%206.752%2017.364%204.68%2016.262%205.725%20L%2016.262%205.725%20L%209.96%2011.966%20Z%20%22%20fill%3D%22inherit%22/%3E%3C/svg%3E");
background-position: right 0.8rem center;
background-repeat: no-repeat;
background-size: 1.2rem;
}

View file

@ -1,33 +1,32 @@
// Sass config file /*!
// ----------------- * KNACSS Reborn: Just keep it simple!
* @author: Alsacreations
* v8.2 2022/01
* Licence WTFPL http://www.wtfpl.net/
*/
// (WARNING : you should comment this line and move config file from vendor/knacss folder to your own folder) // IMPORTANT : Seuls les fichiers "Noyau" et "Utilitaires" sont importés par défaut. Ajoutez les fichiers de composants si nécessaires dans votre projet.
@import "_00-config";
// normalize include // NOYAU
@import "_01a-normalize"; // normalize @import "abstracts/variables-sass";
@import "abstracts/mixins-sass";
// Sass base styles @import "base/reset-base";
@import "_01b-base"; // reset and basic styles @import "base/reset-accessibility";
@import "base/reset-forms";
@import "base/reset-print";
@import "base/layout";
// Sass files : chose the ones you need // UTILITAIRES
@import "_02-layout"; // alignment, modules, positionning @import "utils/utils-global";
@import "_03-grids"; // grids @import "utils/utils-font-sizes";
@import "_04-tables"; // data tables consistency @import "utils/utils-spacers";
@import "_05-forms"; // forms consistency @import "utils/grillade";
@import "_06-helpers"; // width and spacers visually classes
@import "_07-responsive"; // Responsive Web Design helpers
@import "_08-print"; // print quick reset
@import "_09-misc"; // skip links, google maps and hyphens
@import "_10-styling"; // minor stylings
// WordPress base styles // COMPOSANTS (à ajouter au besoin)
@import "_11-wordpress"; // WordPress reset and basic styles // @import "components/button";
// @import "components/burger";
/* ----------------------------- */ // @import "components/checkbox";
/* ==own stylesheet */ // @import "components/radio";
/* ----------------------------- */ // @import "components/select";
// @import "components/quote";
/* Here should go your own CSS styles */
/* You can also link them with a Sass @import */
/* @import "my-styles"; */

View file

@ -0,0 +1,19 @@
/* Font sizes utility classes */
// loop for each font-size
@each $key, $value in $font-size {
.text-#{$key} {
font-size: $value;
}
}
// loop for each breakpoint
@each $key, $value in $font-size {
@each $bp, $bpv in $breakpoints {
@media (min-width: #{$bpv}) {
.#{$bp}\:text-#{$key} {
font-size: $value;
}
}
}
}

View file

@ -0,0 +1,66 @@
/*
* Global utility classes
*/
@each $class, $prop, $value in $utils {
.#{$class} {
#{$prop}: #{$value};
}
}
// loop for each breakpoint
@each $class, $prop, $value in $utils {
@each $bp, $bpv in $breakpoints {
@media (min-width: #{$bpv}) {
.#{$bp}\:#{$class} {
#{$prop}: #{$value};
}
}
}
}
// multi-properties utils
.is-unstyled {
list-style: none;
padding-left: 0;
}
.is-disabled,
[disabled] {
opacity: 0.6;
cursor: not-allowed !important;
filter: grayscale(1);
}
.text-normal {
font-weight: normal;
font-style: normal;
text-transform: none;
}
// loop for each breakpoint
@each $bp, $bpv in $breakpoints {
@media (min-width: #{$bpv}) {
.#{$bp}\:visually-hidden {
position: absolute !important;
border: 0 !important;
height: 1px !important;
width: 1px !important;
padding: 0 !important;
overflow: hidden !important;
clip: rect(0, 0, 0, 0) !important;
}
.#{$bp}\:is-unstyled {
list-style: none;
padding-left: 0;
}
.#{$bp}\:is-disabled {
opacity: 0.6;
cursor: not-allowed !important;
filter: grayscale(1);
}
.#{$bp}\:text-normal {
font-weight: normal;
font-style: normal;
text-transform: none;
}
}
}

View file

@ -0,0 +1,134 @@
/* Spacers utility classes */
// loop for each spacer
@each $key,
$value in $spacers {
.p-#{$key} {
padding: $value;
}
.pt-#{$key} {
padding-top: $value;
}
.pr-#{$key} {
padding-right: $value;
}
.pb-#{$key} {
padding-bottom: $value;
}
.pl-#{$key} {
padding-left: $value;
}
.px-#{$key} {
padding-left: $value;
padding-right: $value;
}
.py-#{$key} {
padding-top: $value;
padding-bottom: $value;
}
.m-#{$key} {
margin: $value;
}
.mt-#{$key} {
margin-top: $value;
}
.mr-#{$key} {
margin-right: $value;
}
.mb-#{$key} {
margin-bottom: $value;
}
.ml-#{$key} {
margin-left: $value;
}
.mx-#{$key} {
margin-left: $value;
margin-right: $value;
}
.my-#{$key} {
margin-top: $value;
margin-bottom: $value;
}
// loop for each breakpoint
@each $bp,
$bpv in $breakpoints {
@media (min-width: #{$bpv}) {
.#{$bp}\:p-#{$key} {
padding: $value;
}
.#{$bp}\:pt-#{$key} {
padding-top: $value;
}
.#{$bp}\:pr-#{$key} {
padding-right: $value;
}
.#{$bp}\:pb-#{$key} {
padding-bottom: $value;
}
.#{$bp}\:pl-#{$key} {
padding-left: $value;
}
.#{$bp}\:px-#{$key} {
padding-left: $value;
padding-right: $value;
}
.#{$bp}\:py-#{$key} {
padding-top: $value;
padding-bottom: $value;
}
.#{$bp}\:m-#{$key} {
margin: $value;
}
.#{$bp}\:mt-#{$key} {
margin-top: $value;
}
.#{$bp}\:mr-#{$key} {
margin-right: $value;
}
.#{$bp}\:mb-#{$key} {
margin-bottom: $value;
}
.#{$bp}\:ml-#{$key} {
margin-left: $value;
}
.#{$bp}\:mx-#{$key} {
margin-left: $value;
margin-right: $value;
}
.#{$bp}\:my-#{$key} {
margin-top: $value;
margin-bottom: $value;
}
}
}
}

152
sass/utils/grillade.scss Normal file
View file

@ -0,0 +1,152 @@
/* -------------------------------------------------- */
/* ==Grillade : système de micro-grille de KNACSS */
/* ------------------------------------------------ */
// Grillade est directement inspiré tailwindcss.com et de ses classes utilitaires
// Les variables ci-dessous ne sont appliquées que si elles n'ont pas été renseignées
// dans le fichiers de variables de KNACSS.
@if variable_exists(grid-columns) {
$grid-columns: $grid-columns !global;
} @else {
$grid-columns: 6 !global;
}
@if variable_exists(gaps) {
$gaps: $gaps !global;
} @else {
$gaps: (
"0": 0,
"5": 0.313rem,
"10": 0.625rem,
"16": 1rem,
"20": 1.25rem,
"36": 2.25rem,
) !global;
}
@if variable_exists(breakpoints) {
$breakpoints: $breakpoints !global;
} @else {
$breakpoints: (
sm: 576px,
md: 992px,
lg: 1330px,
) !global;
}
.grid {
display: grid;
}
// grid class for each breakpoint
@each $bp, $bpv in $breakpoints {
@media (min-width: #{$bpv}) {
.#{$bp}\:grid {
display: grid;
}
}
}
/* grid-template-columns initialisation */
@for $i from 1 through $grid-columns {
.grid-cols-#{$i} {
grid-template-columns: repeat(#{$i}, minmax(0, 1fr));
}
}
/* grid-template-columns au sein des breakpoints */
@each $bp, $bpv in $breakpoints {
@media (min-width: #{$bpv}) {
@for $i from 1 through $grid-columns {
.#{$bp}\:grid-cols-#{$i} {
grid-template-columns: repeat(#{$i}, minmax(0, 1fr));
}
}
}
}
/* gap initialisation */
@each $key, $value in $gaps {
.gap-#{$key} {
gap: $value;
}
.gap-x-#{$key} {
column-gap: $value;
}
.gap-y-#{$key} {
row-gap: $value;
}
}
/* gap au sein des breakpoints */
@each $bp, $bpv in $breakpoints {
@media (min-width: #{$bpv}) {
@each $key, $value in $gaps {
.#{$bp}\:gap-#{$key} {
gap: $value;
}
.#{$bp}\:gap-x-#{$key} {
column-gap: $value;
}
.#{$bp}\:gap-y-#{$key} {
row-gap: $value;
}
}
}
}
/* grid-items initialisation */
@for $i from 1 through $grid-columns {
.col-start-#{$i} {
grid-column-start: #{$i};
}
.col-end-#{$i} {
grid-column-end: #{$i};
}
.col-span-#{$i} {
grid-column: span #{$i} / span #{$i};
}
.col-span-full {
grid-column: 1 / -1;
}
.row-start-#{$i} {
grid-row-start: #{$i};
}
.row-end-#{$i} {
grid-row-end: #{$i};
}
.row-span-#{$i} {
grid-row: span #{$i} / span #{$i};
}
}
/* grid-items au sein des breakpoints */
@each $bp, $bpv in $breakpoints {
@media (min-width: #{$bpv}) {
@for $i from 1 through $grid-columns {
// loop for each breakpoint
.#{$bp}\:col-start-#{$i} {
grid-column-start: #{$i};
}
.#{$bp}\:col-end-#{$i} {
grid-column-end: #{$i};
}
.#{$bp}\:col-span-#{$i} {
grid-column: span #{$i} / span #{$i};
}
.#{$bp}\:col-span-full {
grid-column: 1 / -1;
}
.#{$bp}\:row-start-#{$i} {
grid-row-start: #{$i};
}
.#{$bp}\:row-end-#{$i} {
grid-row-end: #{$i};
}
.#{$bp}\:row-span-#{$i} {
grid-row: span #{$i} / span #{$i};
}
}
}
}