1
0
mirror of https://github.com/Chalarangelo/mini.css.git synced 2025-09-10 06:00:45 +02:00

294 Commits

Author SHA1 Message Date
Angelos Chalaris
c01c8a44ae 2.0.2 2017-01-02 17:54:55 +02:00
Angelos Chalaris
d32fb49f54 Ready to release v2.0.2 2017-01-02 17:54:23 +02:00
Angelos Chalaris
f003c7b658 Documented sucroa flavor in doc pages 2017-01-02 17:32:15 +02:00
Angelos Chalaris
69fe52602d Merge pull request #56 from AngieDaskalakis/master
Sucroa flavour added
2017-01-02 17:00:17 +02:00
Angeliki Daskalakis
8132013431 Sucroa flavour complete 2017-01-01 14:54:17 +02:00
Angeliki Daskalakis
d852fb08c4 Cards and tables finished 2017-01-01 14:23:08 +02:00
Angeliki Daskalakis
0a80d8a9ac Finished Navigation and Input 2017-01-01 14:02:29 +02:00
Angeliki Daskalakis
439f3bd630 Sucroa flavor typography and colour palette complete 2017-01-01 00:49:05 +02:00
Angeliki Daskalakis
2548b9cbb7 Initial commit for sucroa flavour 2016-12-31 20:35:06 +02:00
Angelos Chalaris
21c238d3f7 Updated devlog with todos 2016-12-30 20:38:50 +02:00
Angelos Chalaris
c09aecb221 Updated colors to resolve #52 2016-12-30 20:30:46 +02:00
Angelos Chalaris
c3bb98996f 2.0.1 2016-12-22 11:45:37 +02:00
Angelos Chalaris
a9d314fc66 Core restructure to move imports to the flavor files, mixin usage changed inside flavor files, updated doc pages and live version files 2016-12-22 11:43:20 +02:00
Angelos Chalaris
f469a1dfb7 Merge pull request #48 from roryprimrose/master
Exported typography out of `_core.scss` into `_typography.scss`
2016-12-22 10:48:26 +02:00
Rory Primrose
1325c967b5 Update _core.scss
Import the new _typography.scss file.
2016-12-22 09:26:10 +11:00
Rory Primrose
f73acde499 Create _typography.scss 2016-12-22 09:25:03 +11:00
Angelos Chalaris
d3f43476c4 2.0.0 2016-12-20 14:07:56 +02:00
Angelos Chalaris
596a040b2b Ready for release of Fermion v2.0.0 2016-12-20 14:07:05 +02:00
Angelos Chalaris
fa8148d0f0 OpenGraph updates 2016-12-20 13:53:51 +02:00
Angelos Chalaris
a4611aba2b OpenGraph updates 2016-12-20 13:48:33 +02:00
Angelos Chalaris
99a2bbd796 Updates for release of v2 2016-12-20 13:44:28 +02:00
Angelos Chalaris
55eb72e020 Typo fix 2016-12-20 13:20:30 +02:00
Angelos Chalaris
7ebb456140 Utility module quick reference 2016-12-20 13:18:33 +02:00
Angelos Chalaris
8bc46327c3 Progress module quick reference 2016-12-20 13:03:15 +02:00
Angelos Chalaris
1c42f9aeff Contextual module quick reference 2016-12-20 12:44:59 +02:00
Angelos Chalaris
d4b7321b78 Tab module quick reference 2016-12-20 12:36:39 +02:00
Angelos Chalaris
29f343943a Card module quick reference 2016-12-20 12:05:00 +02:00
Angelos Chalaris
15d7a0880c Table quick reference 2016-12-20 11:49:03 +02:00
Angelos Chalaris
7b74682140 Input control quick reference 2016-12-20 10:51:32 +02:00
Angelos Chalaris
1ef0d63300 Quick reference codepen links 2016-12-19 23:46:09 +02:00
Angelos Chalaris
cb2eda1b56 Documentation proofreading 2016-12-19 23:28:23 +02:00
Angelos Chalaris
98d2e17cad Codepen links for parts of quick reference 2016-12-19 14:26:35 +02:00
Angelos Chalaris
dd2930530f Quick reference code commit 2016-12-19 13:58:13 +02:00
Angelos Chalaris
3e398def15 Quick reference links 2016-12-16 23:54:46 +02:00
Angelos Chalaris
fe94cd6b39 Navigation module quick reference 2016-12-16 23:51:26 +02:00
Angelos Chalaris
932f700f0c Quick reference page layout complete 2016-12-16 23:25:19 +02:00
Angelos Chalaris
9829deefb1 Minor documentation updates 2016-12-16 16:55:04 +02:00
Angelos Chalaris
24a4b67036 Grid module quick reference 2016-12-16 16:35:59 +02:00
Angelos Chalaris
d99409f61d Live demo update 2016-12-16 12:54:37 +02:00
Angelos Chalaris
3d4303ec57 Quick reference doc page initial commit 2016-12-16 11:07:06 +02:00
Angelos Chalaris
aed32e13a5 Packaging and documentation 2016-12-16 01:48:15 +02:00
Angelos Chalaris
133390f2a7 Customization documentation complete 2016-12-16 01:13:14 +02:00
Angelos Chalaris
882519e9f7 Core customization documentation 2016-12-16 00:30:40 +02:00
Angelos Chalaris
aa1c3a6e8a Customization page initial commit 2016-12-16 00:10:45 +02:00
Angelos Chalaris
bc17b5182b Live demo bump 2016-12-15 23:24:24 +02:00
Angelos Chalaris
0f7cd386b3 Blockquote styling 2016-12-15 23:19:32 +02:00
Angelos Chalaris
25f5a2288e Initial commit of flavor and customization documentation 2016-12-13 11:39:04 +02:00
Angelos Chalaris
e0f509a3f2 OpenGraph meta test 2016-12-13 11:10:55 +02:00
Angelos Chalaris
ca87b7233c Deploying live demo with full documentation for modules 2016-12-13 10:31:47 +02:00
Angelos Chalaris
af7818b255 Updated module comments for easier viewing 2016-12-13 10:26:16 +02:00
Angelos Chalaris
62c8893e1a Utility module documentation complete 2016-12-13 10:16:17 +02:00
Angelos Chalaris
a0bc3e810c Half the documentation for utility module 2016-12-11 14:24:59 +02:00
Angelos Chalaris
ebc771b72a Utility doc page initial commit 2016-12-11 12:13:10 +02:00
Angelos Chalaris
c475a3acad More in the todo list, figured out some things about documentation and stuff 2016-12-10 13:25:40 +02:00
Angelos Chalaris
f57a6168a7 Tab page logo update 2016-12-10 13:16:57 +02:00
Angelos Chalaris
3914f5ebc7 Breadcrumbs update, todo list for utility module 2016-12-10 13:13:50 +02:00
Angelos Chalaris
624ab29059 Tab module documentation complete 2016-12-10 12:59:10 +02:00
Angelos Chalaris
bff5ea569c Basic syntax for tab module 2016-12-10 12:47:29 +02:00
Angelos Chalaris
f764d9e857 Tab module documentation initial commit 2016-12-10 11:33:28 +02:00
Angelos Chalaris
8801b398be Cleanup and preparation for the last two module docs 2016-12-07 10:51:32 +02:00
Angelos Chalaris
1bc0979362 Input_control documentation complete 2016-12-07 10:46:33 +02:00
Angelos Chalaris
3f80509c22 Minor doc tweaks for input_control 2016-12-07 10:35:05 +02:00
Angelos Chalaris
cf37f44d13 Button and button group documentation 2016-12-07 10:29:59 +02:00
Angelos Chalaris
365bde4392 Minor color update 2016-12-07 10:05:19 +02:00
Angelos Chalaris
b829066a2d Checkbox and radio button documentation 2016-12-07 09:55:56 +02:00
Angelos Chalaris
393a040b93 Minor change in the code of the input control module 2016-12-06 14:26:29 +02:00
Angelos Chalaris
a0f3e6ff8f Input control basic documentation 2016-12-06 14:25:43 +02:00
Angelos Chalaris
5824b6fb10 Tab module tweaks 2016-12-06 11:43:10 +02:00
Angelos Chalaris
928112b979 Style bump for demo 2016-12-06 11:28:06 +02:00
Angelos Chalaris
21ca8d498f Button component color tweaks 2016-12-06 11:26:12 +02:00
Angelos Chalaris
d2ab873d4c Updated navigation module to better work with the button changes 2016-12-06 11:21:07 +02:00
Angelos Chalaris
9dc0cdf486 Checkbox and radio component rework 2016-12-06 10:58:54 +02:00
Angelos Chalaris
628983f159 Button styling update for consistency 2016-12-05 23:48:05 +02:00
Angelos Chalaris
e094ca5042 Input control form alignment testing 2016-12-05 14:07:28 +02:00
Angelos Chalaris
d83b9782d1 Updated to input control module (colors and values) 2016-12-05 13:41:35 +02:00
Angelos Chalaris
51bb70d93b Initial commit of input_control documentation 2016-12-05 13:05:44 +02:00
Angelos Chalaris
594653e9e0 Complete documentation for table module 2016-11-29 11:29:09 +02:00
Angelos Chalaris
c73922c24a Table module documentation initial commit 2016-11-29 00:23:56 +02:00
Angelos Chalaris
9e5167ac07 Styling update for demo pages 2016-11-26 23:53:16 +02:00
Angelos Chalaris
021d634b90 Core documentation update 2016-11-26 23:50:28 +02:00
Angelos Chalaris
3526534d8b Card module documentation complete 2016-11-26 23:33:11 +02:00
Angelos Chalaris
f0aef1f5f3 Card module and documentation updates 2016-11-26 21:25:51 +02:00
Angelos Chalaris
a649cf0927 Finished first section of card module docs 2016-11-26 19:25:50 +02:00
Angelos Chalaris
616bd77ccd Card basic syntax partial documentation 2016-11-26 18:15:46 +02:00
Angelos Chalaris
fd3697a7b6 Card documentation page initial commit 2016-11-26 17:33:37 +02:00
Angelos Chalaris
ec64125056 Presentation update for the live version tag 2016-11-26 16:34:55 +02:00
Angelos Chalaris
8569734968 Contextual module documentation page complete 2016-11-26 16:30:43 +02:00
Angelos Chalaris
f409e24f27 Alert documentation 2016-11-26 15:21:37 +02:00
Angelos Chalaris
2499afe53f Contextual documentation mark docs 2016-11-26 13:55:21 +02:00
Angelos Chalaris
3344bfa03d Contextual doc initial commit, browser support improvements, alert animations 2016-11-26 12:37:01 +02:00
Angelos Chalaris
24260f851f Minor updates in contextual and progress 2016-11-26 11:20:11 +02:00
Angelos Chalaris
329486e717 Progress module documentation complete 2016-11-26 01:15:35 +02:00
Angelos Chalaris
b6bb5d3bfc Core module list styles, utility module tweaks, progress module variant style and color documentation 2016-11-26 00:46:38 +02:00
Angelos Chalaris
4f30eba776 Spinner tweaks 2016-11-25 14:32:50 +02:00
Angelos Chalaris
2a0d9c3fff Progress module base documentation page 2016-11-25 13:36:24 +02:00
Angelos Chalaris
6a29439d80 Core tweaks for root element font-size and native font stacks 2016-11-25 13:18:38 +02:00
Angelos Chalaris
0ccd074738 Latest stylesheet 2016-11-25 12:42:51 +02:00
Angelos Chalaris
7c12706dbe Progress module tweaks 2016-11-25 11:56:27 +02:00
Angelos Chalaris
3285776d13 Progress module documentation initial commit and progress module tweaks 2016-11-25 00:22:17 +02:00
Angelos Chalaris
53ef83e087 Navigation module documentation complete 2016-11-22 21:00:19 +02:00
Angelos Chalaris
a5a56f38bb Navigation header documentation 2016-11-22 20:37:33 +02:00
Angelos Chalaris
aba435f11a Box-shadow variable check updates 2016-11-22 11:59:18 +02:00
Angelos Chalaris
e3ce4b3490 Navigation module updates 2016-11-22 11:55:32 +02:00
Angelos Chalaris
dc16eadae8 Navigation documentation initial commit 2016-11-22 11:22:26 +02:00
Angelos Chalaris
2f53287788 Table polishing 2016-11-22 10:32:05 +02:00
Angelos Chalaris
41e3f606d5 Docs updates 2016-11-22 00:34:36 +02:00
Angelos Chalaris
f3acf0b06d Responsiveness for striped tables 2016-11-22 00:13:06 +02:00
Angelos Chalaris
42ee89f147 Striped tables, finished implementation of the features described in issue #32 2016-11-22 00:08:27 +02:00
Angelos Chalaris
e99dcae2a9 Color changes 2016-11-22 00:01:32 +02:00
Angelos Chalaris
398d46bd1e Added a lot of new features to the table module 2016-11-21 23:56:10 +02:00
Angelos Chalaris
f643f78f1a Fluid card rule addition and minor changes 2016-11-21 22:10:13 +02:00
Angelos Chalaris
0085ea0a3d Grid documentation complete 2016-11-21 13:47:54 +02:00
Angelos Chalaris
9aa96f716c Grid offsets documentation 2016-11-21 13:24:13 +02:00
Angelos Chalaris
ae051f84a0 Grid screen-specific layouts documentation 2016-11-21 12:45:47 +02:00
Angelos Chalaris
632f9806ce Grid basic layout dos and don'ts 2016-11-21 11:20:12 +02:00
Angelos Chalaris
a992bd74ca Deployment and updates for docs 2016-11-21 10:28:35 +02:00
Angelos Chalaris
1e86e6fa5a 🚑 Grid breakpoint changes, trickles down to other modules as well 2016-11-21 10:25:06 +02:00
Angelos Chalaris
1c7b7a081f Grid demo page update (showcase for the screen-specific layouts, no explanation) 2016-11-19 14:37:05 +02:00
Angelos Chalaris
4355a66a00 Grid module showcase initial commit 2016-11-19 13:49:15 +02:00
Angelos Chalaris
1ce49af8f3 Demo page bugfix 2016-11-17 12:53:34 +02:00
Angelos Chalaris
8872065ab0 Updated demo pages 2016-11-17 12:46:40 +02:00
Angelos Chalaris
e6d7449337 More documentation for core module 2016-11-17 12:40:20 +02:00
Angelos Chalaris
4f656962f0 Core documentation initial commit 2016-11-17 12:12:16 +02:00
Angelos Chalaris
1d4bf6aa30 🚀 Deploying live demo, modules page ready 2016-11-16 14:27:42 +02:00
Angelos Chalaris
0fae64a02c Module showcase page 2016-11-16 14:19:46 +02:00
Angelos Chalaris
a7bcc52191 Testing horizontal tables 2016-11-15 14:11:10 +02:00
Angelos Chalaris
a9330832b6 Browser logos 2016-11-15 01:02:27 +02:00
Angelos Chalaris
80bc8c20fa Documentation update 2016-11-15 00:41:49 +02:00
Angelos Chalaris
a03cd49c36 Deploying live demo index 2016-11-15 00:06:18 +02:00
Angelos Chalaris
c019b69161 Added more info on index page 2016-11-15 00:05:14 +02:00
Angelos Chalaris
8471f927b8 The fat cat is safe 2016-11-14 11:47:52 +02:00
Angelos Chalaris
6101e47393 Table module updates and optimization 2016-11-14 00:05:25 +02:00
Angelos Chalaris
5d2d6a6422 Squashing bugs for alt size cards 2016-11-13 23:49:32 +02:00
Angelos Chalaris
838861d1a7 Deploying card fluidity fix 2016-11-13 23:26:12 +02:00
Angelos Chalaris
3e0ae4fa7f Card fluidity fixes 2016-11-13 23:12:36 +02:00
Angelos Chalaris
cfdc0b5ee4 Minor change to shadows 2016-11-11 16:40:55 +02:00
Angelos Chalaris
686a5559ee Deploying more of the introduction page 2016-11-11 16:35:58 +02:00
Angelos Chalaris
9e688837af Deploying demo 2016-11-11 16:03:24 +02:00
Angelos Chalaris
64af6f2d5f Toolkit file comparison, minor changes and updates to the files 2016-11-11 16:02:38 +02:00
Angelos Chalaris
3e634dc6c0 Demo pages 2016-11-11 14:26:12 +02:00
Angelos Chalaris
5dcfabb7f3 Introduction page updates 2016-11-11 14:25:35 +02:00
Angelos Chalaris
80196ee4ac Started documentation 2016-11-11 13:18:27 +02:00
Angelos Chalaris
f429b1037c Bug fixes caused by buttons in navigation 2016-11-11 12:47:27 +02:00
Angelos Chalaris
1c7e57c1bd Grid reordering classes 2016-11-11 12:39:39 +02:00
Angelos Chalaris
a2bc9e4835 Spinner size mixin 2016-11-11 12:02:16 +02:00
Angelos Chalaris
a6b3cec38d Generic box-shadow mixin 2016-11-11 11:52:30 +02:00
Angelos Chalaris
692f3c00ff Breadcrumbs, utilities and button groups updates 2016-11-11 11:44:03 +02:00
Angelos Chalaris
eb671c361f Live demo 2016-11-11 01:15:07 +02:00
Angelos Chalaris
4c473fa321 Button groups added 2016-11-11 01:13:59 +02:00
Angelos Chalaris
c86735856b Modular shadows for most modules 2016-11-11 00:23:03 +02:00
Angelos Chalaris
770c517a2d Depolying live demo 2016-11-10 11:18:08 +02:00
Angelos Chalaris
49a055e91d Tab cleanup 2016-11-10 11:17:22 +02:00
Angelos Chalaris
99b5454a3a Card module cleanup 2016-11-10 11:10:18 +02:00
Angelos Chalaris
a3774f3c03 Utility cleanup 2016-11-10 11:00:03 +02:00
Angelos Chalaris
3d2fac7582 Navigation module cleanup 2016-11-10 10:55:44 +02:00
Angelos Chalaris
f8ad9526af Spinner cleanup 2016-11-10 10:51:35 +02:00
Angelos Chalaris
a8b92f577c Contextual module cleanup 2016-11-10 10:47:15 +02:00
Angelos Chalaris
6d68baba7f Progress module cleanup update 2016-11-10 10:41:04 +02:00
Angelos Chalaris
6b5b28946d Progress and spinner merge, cleanup 2016-11-10 10:40:18 +02:00
Angelos Chalaris
4e38200448 Merged form, button and checkbox into input_control 2016-11-10 10:30:39 +02:00
Angelos Chalaris
8cb6329a41 Input control cleanup 2016-11-10 10:07:09 +02:00
Angelos Chalaris
af604fc48c Table cleanup 2016-11-10 09:45:36 +02:00
Angelos Chalaris
93320701c5 Grid system cleanup 2016-11-10 09:36:48 +02:00
Angelos Chalaris
b994290013 Core cleanup 2016-11-10 09:23:23 +02:00
Angelos Chalaris
8a9dadcbcd Deploying demo page 2016-11-10 00:51:26 +02:00
Angelos Chalaris
aa78a8f3c5 Folder restructure and file move-around 2016-11-10 00:47:29 +02:00
Angelos Chalaris
104ce59dc3 Legacy branching, deleted obsolete files from current branch 2016-11-10 00:32:43 +02:00
Angelos Chalaris
19d3f2b3c5 Module restructure, folder renames and file moves 2016-11-10 00:25:24 +02:00
Angelos Chalaris
37d89bd998 Added alert functionality, starting module restructure 2016-11-10 00:22:14 +02:00
Angelos Chalaris
b56b8b82bf Deploying live demo 2016-11-09 23:15:01 +02:00
Angelos Chalaris
e90cdb6a47 Minor bug fix in tabs module 2016-11-09 23:14:24 +02:00
Angelos Chalaris
6ea1ab4bd6 Depolying live demo 2016-11-09 23:10:22 +02:00
Angelos Chalaris
edeeb4c839 Presentational changes to tabs 2016-11-09 23:09:29 +02:00
Angelos Chalaris
a1d33728d1 Deploying tabs demo 2016-11-09 23:03:29 +02:00
Angelos Chalaris
e9750940ad Major changes in tabs and accordion modules (see DEVLOG) 2016-11-09 23:02:27 +02:00
Angelos Chalaris
15f9f47c06 Tabs module mostly complete 2016-11-09 20:36:35 +02:00
Angelos Chalaris
7364732ed2 Tab module proof of concept 2016-11-09 19:18:18 +02:00
Angelos Chalaris
7e9afb6bba Complete spinner module 2016-11-09 17:15:43 +02:00
Angelos Chalaris
f14be08c71 Tab and spinner module initial commit (empty) 2016-11-09 16:18:16 +02:00
Angelos Chalaris
bcc316df9c Deploying live demo 2016-11-09 14:16:54 +02:00
Angelos Chalaris
60d477eae3 Accordion module full 2016-11-09 14:16:05 +02:00
Angelos Chalaris
83d598663f Checkbox module update 2016-11-09 11:36:05 +02:00
Angelos Chalaris
3f0477c632 Deploying demo 2016-11-04 11:54:47 +02:00
Angelos Chalaris
229ce771c9 Minor addition to card module 2016-11-04 11:54:12 +02:00
Angelos Chalaris
0ab9abc897 Deploying demo 2016-11-04 11:40:54 +02:00
Angelos Chalaris
93ba0c20b7 Card module update 2016-11-04 11:39:20 +02:00
Angelos Chalaris
9f4077833f Live page deployment 2016-11-03 23:05:18 +02:00
Angelos Chalaris
43f2cb7cbd Card module complete, fully responsive 2016-11-03 23:00:23 +02:00
Angelos Chalaris
a6d2863683 Cards module first test commit 2016-11-03 00:38:08 +02:00
Angelos Chalaris
ad02c60db7 Restructure and card module initial (empty) commit 2016-11-02 23:39:11 +02:00
Angelos Chalaris
cffcec5e8b Minor change to footer 2016-11-02 23:18:36 +02:00
Angelos Chalaris
3673fb4533 Deploying demo page 2016-11-02 23:05:45 +02:00
Angelos Chalaris
bd3b5cbc4e Utilities and helper classes complete 2016-11-02 23:04:56 +02:00
Angelos Chalaris
ad73495347 Utility module initial commit 2016-11-02 22:30:46 +02:00
Angelos Chalaris
57eb99dc19 Demo page updates 2016-11-02 21:25:11 +02:00
Angelos Chalaris
70d0a4ee9c Navigational elements complete 2016-11-02 21:16:35 +02:00
Angelos Chalaris
81d815f205 Deploying demo 2016-11-02 14:04:11 +02:00
Angelos Chalaris
f5e0872129 Navigation sidebar styles 2016-11-02 14:01:55 +02:00
Angelos Chalaris
076a46b6b9 Deploying live demo 2016-11-02 13:17:59 +02:00
Angelos Chalaris
0928dd8cec Navigation header complete 2016-11-02 13:17:25 +02:00
Angelos Chalaris
e382ae1a02 Checkbox/radio module complete 2016-11-02 11:18:17 +02:00
Angelos Chalaris
8aa5266cfa Deploying demo page 2016-10-30 22:16:00 +02:00
Angelos Chalaris
5b4a224c4c Initial commit for checkboxes 2016-10-30 22:15:18 +02:00
Angelos Chalaris
d83131cc6b Form module complete 2016-10-30 21:02:48 +02:00
Angelos Chalaris
4d99ab0610 Deploying demo page 2016-10-30 12:17:51 +02:00
Angelos Chalaris
7214588269 Major update to form module 2016-10-30 12:17:02 +02:00
Angelos Chalaris
6f3e909935 Minor changes to form module 2016-10-26 17:34:41 +03:00
Angelos Chalaris
6365aa0a0f Building and testing form module 2016-10-26 17:29:59 +03:00
Angelos Chalaris
b3ad255007 Depolying demo 2016-10-25 20:49:43 +03:00
Angelos Chalaris
2ad1bc879a Forms module initial commit 2016-10-25 20:48:17 +03:00
Angelos Chalaris
31bcceaa7d Finished button module, added alternate styles etc. 2016-10-25 19:38:57 +03:00
Angelos Chalaris
63e3f2f2bb Button module mixin for color variants 2016-10-25 17:53:07 +03:00
Angelos Chalaris
b30be1cb62 Demo update 2016-10-25 17:24:24 +03:00
Angelos Chalaris
e4b326ec36 Updated button module 2016-10-25 17:23:24 +03:00
Angelos Chalaris
8a1ff16104 Deploying demo page 2016-10-24 16:44:40 +03:00
Angelos Chalaris
08062eff88 Grid update 2016-10-24 16:43:27 +03:00
Angelos Chalaris
70991255d6 Housekeeping 2016-10-23 10:11:20 +03:00
Angelos Chalaris
e9380f1e1b Deploying demo page 2016-10-23 10:03:49 +03:00
Angelos Chalaris
3200d67830 Hardcoded button testing 2016-10-23 10:02:52 +03:00
Angelos Chalaris
5eda91c45a Button module initial commit 2016-10-23 09:14:18 +03:00
Angelos Chalaris
ae235b3f10 Deploying live page 2016-10-22 01:27:31 +03:00
Angelos Chalaris
c9d597fac2 Responsive tables 2016-10-22 01:25:48 +03:00
Angelos Chalaris
2edf1f3f32 Demo page update for progress bars 2016-10-21 23:42:36 +03:00
Angelos Chalaris
3c005b8f05 Updated demo, deploying 2016-10-21 17:50:43 +03:00
Angelos Chalaris
a97fea6596 New demo page for v2 2016-10-21 17:26:20 +03:00
Angelos Chalaris
13d31c82ed Minor change in grid system (customization) 2016-10-21 15:01:00 +03:00
Angelos Chalaris
85abbcb382 Grid system medium and large screens 2016-10-21 14:24:55 +03:00
Angelos Chalaris
7b684ebe9d Grid system small screens 2016-10-21 14:19:32 +03:00
Angelos Chalaris
67a6e6c7ec Grid system columns for extra small screens 2016-10-21 14:12:20 +03:00
Angelos Chalaris
691a568996 Grid system row 2016-10-21 12:28:00 +03:00
Angelos Chalaris
cc56a1a3a6 Grid system container 2016-10-21 11:51:18 +03:00
Angelos Chalaris
f6ee8d2cfe Progress module complete 2016-10-20 13:17:08 +03:00
Angelos Chalaris
7f49777519 Inline progress mixin and houskeeping 2016-10-20 12:34:51 +03:00
Angelos Chalaris
442e42233e Styled progress bar base 2016-10-20 12:09:29 +03:00
Angelos Chalaris
85eea9a6b7 Working on progress bars (unstable and unfinished) 2016-10-20 11:02:42 +03:00
Angelos Chalaris
936e32048d Mostly housekeeping 2016-10-19 22:28:40 +03:00
Angelos Chalaris
8e4629b240 Abbreviation style and fixes 2016-10-19 21:06:19 +03:00
Angelos Chalaris
2f2716f82b Module restructure - part 2 2016-10-19 20:38:11 +03:00
Angelos Chalaris
82e8c17c38 Restructuring of base and other modules - part 1 2016-10-19 20:18:26 +03:00
Angelos Chalaris
696bbcbdac Link styling added to base 2016-10-19 19:52:31 +03:00
Angelos Chalaris
25792357ab Mark documentation and style fixes 2016-10-19 18:01:01 +03:00
Angelos Chalaris
85c247b704 Updated palettes. 2016-10-19 17:55:15 +03:00
Angelos Chalaris
bd935a8188 Deploying index 2016-10-15 19:07:35 +03:00
Angelos Chalaris
9f771efecf Palette changes 2016-10-15 19:04:34 +03:00
Angelos Chalaris
84688d0b64 Created and added new logo 2016-10-15 18:00:07 +03:00
Angelos Chalaris
774fbdb8b7 Demo page update for consistency 2016-10-15 10:47:05 +03:00
Angelos Chalaris
6b580a334b Deploying test index 2016-10-15 10:45:22 +03:00
Angelos Chalaris
c5247edfb8 Mark base and variants 2016-10-15 10:44:05 +03:00
Angelos Chalaris
f723e23b8a Updated background properties to use shorthand 2016-10-15 09:26:20 +03:00
Angelos Chalaris
b2e004edf8 Deploying live version to test styling 2016-10-14 20:45:01 +03:00
Angelos Chalaris
42817a3213 Preformatted element changes and demo page update 2016-10-14 20:37:53 +03:00
Angelos Chalaris
635f40af7a Header small text variant, showcase page modifications 2016-10-14 20:10:52 +03:00
Angelos Chalaris
b3c4c46ae9 Minor changes to pre element styling 2016-10-13 19:57:33 +03:00
Angelos Chalaris
d2ad3e33d4 Bold styling and fix 2016-10-13 19:42:37 +03:00
Angelos Chalaris
27527bdc4b Fancy horizontal rule styles 2016-10-13 19:33:21 +03:00
Angelos Chalaris
51561e8ae3 Header and paragraph styling changes 2016-10-13 19:09:35 +03:00
Angelos Chalaris
e867634f9f Small element styles 2016-10-13 18:56:17 +03:00
Angelos Chalaris
77213d3211 Minor styling changes 2016-10-13 18:12:17 +03:00
Angelos Chalaris
5fef974202 Base styling for all code elements 2016-10-13 18:03:14 +03:00
Angelos Chalaris
715f1af41e Horizontal rule styling 2016-10-13 17:20:09 +03:00
Angelos Chalaris
f4a868aa17 Base header styles 2016-10-13 17:06:53 +03:00
Angelos Chalaris
7a2f4972af Basic styling for parts of the base 2016-10-13 16:47:16 +03:00
Angelos Chalaris
c2fb578a9f Initial commit for default flavor documentation. 2016-10-12 20:33:53 +03:00
Angelos Chalaris
4c4c06e2d3 Updated base 2016-10-12 20:15:17 +03:00
Angelos Chalaris
2f8b20432d Added normalize to base 2016-10-12 19:57:54 +03:00
Angelos Chalaris
e6d14ed368 Initial commit for v2 development. 2016-10-12 19:18:02 +03:00
Angelos Chalaris
255b35a462 1.1.0 2016-10-11 14:37:47 +03:00
Angelos Chalaris
d5eeb24b1b Releasing v1.1.0 2016-10-11 14:33:07 +03:00
Angelos Chalaris
63a6e2479a Bootstrap flavor - full 2016-10-11 14:16:33 +03:00
Angelos Chalaris
baee949488 Doc update 2016-10-11 10:07:22 +03:00
Angelos Chalaris
daf5d309ca Bootstrap flavor - Tabs, modals and dropdowns 2016-10-09 17:35:35 +03:00
Angelos Chalaris
56ce6acb00 Bootstrap flavor - labels 2016-10-08 13:40:02 +03:00
Angelos Chalaris
de06298227 Bootstrap flavor - core complete 2016-10-08 13:21:05 +03:00
Angelos Chalaris
acb55fc971 Bootstrap flavor - navigation 2016-10-08 13:03:27 +03:00
Angelos Chalaris
38989e8cb3 Bootstrap flavor - tables 2016-10-08 12:50:53 +03:00
Angelos Chalaris
c81e997592 Bootstrap flavor - forms 2016-10-08 12:37:09 +03:00
Angelos Chalaris
9594c9b25e Bootstrap flavor - grid 2016-10-08 12:10:45 +03:00
Angelos Chalaris
3dbdc27c55 Bootstrap flavor - buttons 2016-10-08 12:00:46 +03:00
Angelos Chalaris
d05cd28c56 Bootstrap flavor - base 2016-10-08 11:22:34 +03:00
Angelos Chalaris
ea8dfcc09f Initial commit for Bootstrap flavor (blank flavor so far) 2016-10-08 10:48:55 +03:00
Angelos Chalaris
478d32e634 Code cleanup and optimization, shaved off a few bytes 2016-10-07 17:11:42 +03:00
Angelos Chalaris
8c2c7d616c Resolved some utility module bugs, other changes 2016-10-07 16:15:19 +03:00
Angelos Chalaris
e646a5b4cb Flavors README added 2016-10-04 14:04:00 +03:00
Angelos Chalaris
0139657e94 Added spinner module 2016-10-04 13:57:30 +03:00
Angelos Chalaris
203100b465 Bug fixes and enhancements 2016-10-04 12:29:43 +03:00
Angelos Chalaris
505973ef3c Fixed README.md 2016-09-28 21:57:26 +03:00
Angelos Chalaris
9cf4c24db5 1.0.2 2016-09-28 21:53:53 +03:00
Angelos Chalaris
e08eaeefcd Bump to v1.0.2 2016-09-28 21:53:41 +03:00
Angelos Chalaris
b2e7f80d38 1.0.1 2016-09-28 21:48:54 +03:00
Angelos Chalaris
61a4425346 Releasing patch 1.0.1 2016-09-28 21:48:42 +03:00
Angelos Chalaris
efc429c40a Labels overlap fix - issue #4. 2016-09-28 21:25:07 +03:00
Angelos Chalaris
b3e2b8becd Better modal fix (transition display was problematic) - issue #3. 2016-09-28 21:09:41 +03:00
Angelos Chalaris
94eddbe7ea Modal fix (issue #3) 2016-09-28 21:05:50 +03:00
Angelos Chalaris
02d76895d9 MInor doc changes 2016-09-21 15:57:26 +03:00
68 changed files with 14722 additions and 7675 deletions

3
.npmignore Normal file
View File

@@ -0,0 +1,3 @@
docs/v1
docs/v2
docs/page_thumb.png

48
CHANGELOG.md Normal file
View File

@@ -0,0 +1,48 @@
# Changelog
## v2.0.2
- Added a new flavor, **sucroa**.
- Updated color palette for **default** flavor to deal with colorblindness issues.
- Added hugging cat.
## v2.0.1
- Updated module structure. `_core.scss` no longer contains all `@import` statements, but they are now included in the flavor files.
- Updated documentation for customization to reflect said changes.
## v2.0.0
- New version, rebuilt from scratch.
- Breaking changes in legacy browser compatibility.
- Full module and component redesign and restructure.
- New documentation and demo pages.
## v1.1.0
- Fixed a problem with disabled buttons not behaving properly (issue #7).
- Added support for `:disabled` pseudo-class for elements with disabled styles (issue #8).
- Added support for `:active` and `:focus` for the close utility class (issue #9).
- New module: Spinners (component comes in two styles) - part of the extra modules.
- Removed the `flavor.scss` file from the `/scss` directory. Default flavor base will be `/flavors/mini-default.scss`.
- Added hover styling and pointer cursor to the thumbnail styling (issue #10).
- Minor change to caret styling (should be virtually identical).
- Updated accordion definitions for consistency.
- Updated label style definitions for consistency.
- Minor changes to progress component styling (should be virtually identical).
- Minor changes to panel component styling (should be virtually identical).
- Bootstrap flavor added.
## v1.0.2
- Refactoring patch (all version will now use vMajor.Minor.Patch instead of just Major.Minor.Patch). Changes will be reflected in the updated links.
## v1.0.1
- Fixed modals covering other elements due to `z-index` (issue #3).
- Fixed label & badge display overlapping in smaller displays (issue #4).
- Fixed display of demo pages and incorrect padding of elements in panels (issue #5).
## v1.0.0
- Initial release.

View File

@@ -1,23 +1,56 @@
# mini.css
## A minimal Sass-y responsive mobile-first style-agnostic CSS framework
# mini.css v2.0.2
## A minimal, responsive, style-agnostic CSS toolkit
![Demo page](/docs/demo.png)
![Logo](/docs/page_thumb.PNG)
You can learn all about using it, its modules and components, as well as see a live demo [here](https://chalarangelo.github.io/mini.css/).
**mini.css** is a tiny CSS toolkit (under 7KB gzipped) that works well on most modern browsers and devices and allows you to customize it quickly and easily. It's written in Sass and tries to make use of HTML5 semantics and modern patterns to deal with common web design problems. You can learn all about using it, its modules and components, as well as see a live demo [here](https://chalarangelo.github.io/mini.css/).
## Setup
To give **mini.css** a try using the default flavor, paste the following code inside your HTML page's `<head>` tag:
**mini.css** is available in both NPM and Bower:
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/1.0.0/flavors/mini-default.min.css">
npm install mini.css
Alternatively, you can use one of the other [flavors](https://github.com/Chalarangelo/mini.css/tree/master/flavors). Simply replace the final part of the URL with the flavor's CSS file (minified or not) and you're good to go!
bower install mini.css
To try out **mini.css** using the default flavor, copy and paste the following code inside your HTML page's `<head>` tag:
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/version/dist/mini-default.min.css">
Replace `version` with a release tag (`v2.0.0` or later) from the [Releases page](https://github.com/Chalarangelo/mini.css/releases).
Alternatively, you can use one of the other [flavors](https://chalarangelo.github.io/mini.css/flavors.html). Simply replace the final part of the URL with the flavor's CSS file (minified or not) and you're good to go!
## Customization
If you want to develop your own flavor or tweak an existing one, head over to the [SCSS](https://github.com/Chalarangelo/mini.css/tree/master/scss) folder, grab all the files and open the [flavor.scss](https://github.com/Chalarangelo/mini.css/blob/master/scss/flavor.scss) file to start building your own flavor.
If you want to develop your own flavor or tweak an existing one, head over to the [Customization page](https://chalarangelo.github.io/mini.css/customization.html) to get started.
If you want to know all about the framework, the mixins and the variables, check the [wiki](https://github.com/Chalarangelo/mini.css/wiki).
## Contributing
### Flavors
To develop your own flavor:
- Fork into your own repository.
- Add a flavor file in the `src/flavors` folder by duplicating an existing file and renaming it to whatever you want to name it. **Make sure there are no naming conflicts between your flavor and any of the existing flavors**.
- Edit the flavor file as you desire.
- Submit a pull request. Please provide a brief description of your flavor and, if possible, a Codepen or some screenshots showcasing some of the styles in it.
To develop a module:
- Module contribution guidelines are very strict at the moment. New module will only be created upon request and **should always be in a new repository**, unless they are part of a Roadmap of a later version. Please submit an issue before developing a module or asking for new modules, as the discussion of said implementations is key to deciding the direction **mini.css** will follow in the future.
To develop some other part of **mini.css**:
- Create an issue for anything else.
- If you make any changes, submit a pull request with as much information as possible about what you changed.
## Contributors
- Angelos Chalaris (@chalarangelo)
- Angeliki Daskalakis (@angiedaskalakis)
- Rory Primrose (@roryprimrose)
## License

View File

@@ -1,6 +1,6 @@
{
"name": "mini.css",
"description": "A minimal Sass-y responsive mobile-first style-agnostic CSS framework.",
"description": "A minimal, responsive, style-agnostic CSS toolkit.",
"main": "flavors/mini-default.min.css",
"authors": [
"Angelos Chalaris (Chalarangelo)"
@@ -10,13 +10,17 @@
"mini.css",
"mini",
"CSS",
"responsive",
"framework",
"mobile",
"first",
"style",
"agnostic",
"toolkit",
"minimal",
"responsive",
"style-agnostic",
"Sass"
],
"ignore": [
"docs/v1",
"docs/v2",
"docs/page_thumb.png"
],
"homepage": "https://chalarangelo.github.io/mini.css/"
}

1581
dist/mini-default.css vendored Normal file

File diff suppressed because it is too large Load Diff

1
dist/mini-default.min.css vendored Normal file

File diff suppressed because one or more lines are too long

1596
dist/mini-sucroa.css vendored Normal file

File diff suppressed because it is too large Load Diff

1
dist/mini-sucroa.min.css vendored Normal file

File diff suppressed because one or more lines are too long

376
docs/card.html Normal file
View File

@@ -0,0 +1,376 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<title>mini.css - Card</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass, module, card">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<meta property="og:title" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta property="og:type" content="website"/>
<meta property="og:description" content="mini.css is a tiny CSS toolkit designed to build quick, modern and responsive websites."/>
<meta property="og:image" content="page_thumb.PNG">
<meta property="og:url" content="https://chalarangelo.github.io/mini.css/">
<link rel="icon" type="image/png" href="favicon.png">
<style>
/* Classes and ids used in multiple pages - page top and utilities */
#header-logo {
display: inline; height: 28px; width: 28px; margin-top: 4px; background: #558b2f; border-radius: 1px;
padding: 4px;
}
#top-logo {
display: inline-block; height: 66px; width: 70px; margin: 64px auto -30px; border-radius: 1px;
background: #558b2f; padding: 8px; padding-top: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
#top-heading {
color: #f5f5f5; font-size: 2.4em; text-shadow: 0 1px 2px rgba(0,0,0,0.35); margin-bottom: -8px;
}
#top-version-tag {
padding: 4px 6px; font-size: 0.85em; font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
.box-centered { text-align: center; }
.box-colored { background: #0277bd; border-radius: 2px; padding: 14px; margin-bottom: 8px; min-height: 14px;}
.box-colored.red { background: #e53935; }
.box-centered > .card.fluid {
-webkit-box-pack: start;
-webkit-box-align: start;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-self: auto;
align-self: auto;
}
[class^='col-'] .card.fluid { margin: 2px 0 20px; }
/* Local classes and ids for this page */
.fore-primary { color: #0d47a1; font-family: monospace, monospace; }
.fore-secondary { color: #b71c1c; font-family: monospace, monospace; }
.fore-tertiary { color: #1b5e20; font-family: monospace, monospace; }
.col-sm-12.col-sm-last.col-md-12.col-md-normal {
box-sizing: border-box;
border-bottom: 1px solid #bdbdbd;
}
@media (max-width: 767px){
.col-sm-12.col-sm-last.col-md-12.col-md-normal {
border: 0;
border-top: 1px solid #bdbdbd;
}
}
.box-colored.green { background: #689f38; }
.do {
border-top: 15px solid #689f38;
padding-top: 10px;
}
.dont {
border-top: 15px solid #e53935;
padding-top: 10px;
}
.box-colored {
color: #f5f5f5;
}
</style>
</head>
<body>
<header>
<a href="index.html"><img class="logo" src="mini-logo.svg" id="header-logo"></a><div style="display: inline; overflow: auto;">
<a href="index.html" class="button">Introduction</a>
<a href="modules.html" class="button">Modules</a>
<a href="flavors.html" class="button">Flavors</a>
<a href="customization.html" class="button">Customization</a>
<a href="quick_reference.html" class="button">Quick Reference</a>
<a href="https://github.com/Chalarangelo/mini.css" class="button">Github</a>
</div>
</header>
<div class="container" style="height: 320px; background: -webkit-linear-gradient(#455a64,#263238); background: linear-gradient(#455a64,#263238); box-shadow: 0 3px 9px rgba(0,0,0,0.26), 0 3px 6px rgba(0,0,0,0.35);">
<div class="row">
<div class="col-sm">
<div class="box-centered">
<img src="mini-logo.svg" id="top-logo">
<h1 id="top-heading"><span style="font-size: 1.35em;">m</span>ini<span style="font-size:0.65em; color: #558b2f;">.css</span></h1>
<mark class="tertiary" id="top-version-tag">v2.0</mark>
</div>
</div>
</div>
</div>
<!-- Insert your page content here-->
<main><div class="container">
<div class="row" style="padding-top: 40px;">
<div class="col-sm">
<h1>Card</h1>
<p>The <strong>card</strong> module provides you with modern, responsive, general-purpose containers for your page's contents. They are very easy to use and their structure is really simple and versatile. Layouts will respond to smaller screens, realigning the cards in a manner that makes your page mobile-friendly.</p>
<p><small>All examples showcased refer to the mini-default flavor, some class names and styles might differ based on the flavor you're using.</small></p>
<ul class="breadcrumbs"><li><a href="index.html">Home</a></li><li><a href="modules.html">Modules</a></li><li>Card</li></ul>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Quick overview</h2>
<p>The main content of a website or web app needs to be easy to access and well organized no matter the nature of the content itself. The <strong>card</strong> module seeks to help deal with this problem, by utilizing the <a href="https://css-tricks.com/snippets/css/a-guide-to-flexbox/">Flexbox Layout</a> in order to provide general-purpose containers that help you present the information you want in the best possible way. Cards are designed in a very modern way, self-aligning and structuring their content based on your needs, while also being fully responsive to changes and compatible with the versatile <a href="grid.html"><strong>grid</strong></a> module to deliver the best experience on any device.</p><br>
</div>
<div class="section">
<h2>Quick start</h2>
<p>To use the <strong>card</strong> module, simply include the link to the flavor you are using and start writing your HTML page as usual. Remember that the <strong>card</strong> module is heavily dependent on the <a href="grid.html"><strong>grid</strong></a> module, so you might want to first familiarize with its basic layout. One suggestion we will make is to add the following line inside your HTML page's <code>&lt;head&gt;</code> to utilize the viewport meta tag:</p><br>
<pre>&lt;<span class="fore-tertiary">meta</span> <span class="fore-secondary">name</span>=<span class="fore-primary">&quot;viewport&quot;</span> <span class="fore-secondary">content</span>=<span class="fore-primary">&quot;width=device-width, initial-scale=1&quot;</span>&gt;</pre><br>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Basic syntax</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-12 col-md-normal">
<div class="container">
<br>
<div class="row">
<div class="card"><div class="section"><h3>Card 1</h3><p>This is a basic card with some sample content.</p></div></div>
<div class="card"><div class="section"><h3>Card 2</h3><p>This is another card with some sample content.</p></div></div>
<div class="card"><div class="section"><h3>Card 3</h3><p>This is one more card with some sample content.</p></div></div>
</div>
<br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-12 col-md-normal">
<p>To start using cards in your layout, you need to be somewhat familiar with the <a href="grid.html"><strong>grid</strong></a> module, so if you aren't, take a minute to read how its basic layout works. The basic syntax for cards is composed of three components, presented below in the order they should be added to the DOM tree:</p>
<ol>
<li>At the outermost level of the card layout syntax is a <code>.row</code>, which serves as a wrapper for all the cards inside it.</li>
<li>Inside the <code>.row</code>, cards are defined as <code>&lt;div&gt;</code> elements of the <code>.card</code> class.</li>
<li>Finally, inside the <code>.card</code>s, you can define sections using the <code>.section</code> class to wrap your content.</li>
</ol>
<p>Note that cards will respond to screen changes, realigning themselves as necessary to fit on the page.</p>
<h3>Sample code</h3>
<pre>&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;card&quot;&gt;
&lt;div class=&quot;section&quot;&gt;
&lt;h3&gt;Card Title&lt;/h3&gt;
&lt;p&gt;Card content...&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;card&quot;&gt;
&lt;div class=&quot;section&quot;&gt;
&lt;h3&gt;Card Title&lt;/h3&gt;
&lt;p&gt;Card content...&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>The <strong>card</strong> module is compatible with modern browsers, but might not display properly in older browsers.</li>
<li>If you want to further customize your <code>.section</code>s, check the section below.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6 col-lg-4">
<pre>&lt;div class=&quot;card&quot;&gt;
&lt;div class=&quot;section&quot;&gt;
&lt;h3&gt;Card Title&lt;/h3&gt;
&lt;/div&gt;
&lt;div class=&quot;section&quot;&gt;
&lt;p&gt;Card content...&lt;/p&gt;
&lt;p&gt;More card content...&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can add as many <code>.section</code>s as you like to a card.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal col-lg-4 col-lg-last">
<pre>&lt;div class=&quot;card&quot;&gt;
&lt;div class=&quot;section&quot;&gt;
&lt;h3&gt;Card Title&lt;/h3&gt;
&lt;/div&gt;
&lt;p&gt;Content not in a section!&lt;/p&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid using cards with content inside them that is not wrapped in sections. Try to use a single <code>.section</code> to wrap the content inside these to avoid unexpected behavior.</p>
</div>
<div class="col-sm-12 col-md-6 col-lg-4">
<pre>&lt;div class=&quot;card&quot;&gt;
&lt;h3 class=&quot;section&quot;&gt;Card Title&lt;/h3&gt;
&lt;p class=&quot;section&quot;&gt;Card content...&lt;/p&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can use the <code>.section</code> class for things other than <code>&lt;div&gt;</code> elements (e.g. <code>&lt;h1&gt;</code>-<code>&lt;h6&gt;</code>, <code>&lt;p&gt;</code>, <code>&lt;button&gt;</code>).</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal col-lg-4 col-lg-last">
<pre>&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;card&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;card&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;If you want to place multiple cards side by side, add them all inside the same <code>.row</code>. Placing cards inside different rows or not inside rows at all can result in unexpected behavior. </p>
</div>
<div class="col-sm-12 col-md-6 col-lg-4">
<pre>&lt;div class=&quot;card&quot;&gt;
&lt;div class=&quot;section row&quot;&gt;
&lt;div class=&quot;card&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
<span class="fore-tertiary">&lt;!-- or --&gt;</span>
&lt;div class=&quot;card&quot;&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;card&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can place <code>.row</code> elements inside <code>.card</code> elements, if you want. you should normally also make those rows into card <code>.section</code>s, but for this specific case you might want to make an exception sometimes.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal col-lg-4 col-lg-last">
<pre>&lt;div class=&quot;card row&quot;&gt;
&lt;/div&gt;
<span class="fore-secondary">&lt;!-- or --&gt;</span>
&lt;div class=&quot;card col-sm&quot;&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;You should not have elements that are both cards and rows or columns at the same time.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Sections &amp; media</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-12 col-md-normal">
<div class="container">
<br>
<div class="row">
<div class="card"><div class="section"><h3>Card with image</h3></div><img class="section media" src="http://placehold.it/800x600"><div class="section"><p>Content</p></div></div>
<div class="card"><iframe class="section media" width="1280" height="720" src="https://www.youtube.com/embed/ScMzIvxBSi4" frameborder="0"></iframe><div class="section"><h3>Card with video</h3></div></div>
<div class="card"><div class="section"><h3>Normal section</h3></div><div class="section double-padded"><h3>Double-padded section</h3></div></div>
<div class="card"><div class="section"><h3>Normal section</h3></div><div class="section dark"><h3>Dark section</h3></div><div class="section darker"><h3>Darker section</h3></div></div>
<div class="card inverse"><div class="section"><h3>Inverse card</h3></div><img class="section media" src="http://placehold.it/800x600"><div class="section"><p>Content</p></div><div class="section"><p>More content</p></div></div>
</div>
<br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-12 col-md-normal">
<p>You can do a lot more with card sections apart from filling them with textual content. First off, you can add media sections to your cards, applying the styles of <code>.section</code> and <code>.media</code> to an <code>&lt;img&gt;</code> element or a video element of your choice (e.g. using a <code>&lt;iframe&gt;</code> element in the same manner). If you want a section to have more space around it, use the <code>.double-padded</code> class. There are also two section color variations: <code>.dark</code> and <code>.darker</code>. Finally, you can turn a whole <code>.card</code> black, by applying the <code>.inverse</code> class to it. This is not really a section trick, but we thought we should include it here anyway.</p>
<h3>Sample code</h3>
<pre>&lt;div class=&quot;card&quot;&gt;
&lt;img src=&quot;...&quot; class=&quot;section media&quot;&gt;
&lt;div class=&quot;section double-padded&quot;&gt;&lt;p&gt;Content&lt;/p&gt;&lt;/div&gt;
&lt;div class=&quot;section dark&quot;&gt;&lt;p&gt;Content&lt;/p&gt;&lt;/div&gt;
&lt;div class=&quot;section darker&quot;&gt;&lt;p&gt;Content&lt;/p&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;card inverse&quot;&gt;
&lt;div class=&quot;section&quot;&gt;&lt;p&gt;Content&lt;/p&gt;&lt;/div&gt;
&lt;/div&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>The <code>.media</code> class might not be well supported in older browsers, especially legacy versions of Internet Explorer.</li>
<li>Due to the <code>.media</code> class using <a href="http://caniuse.com/#feat=object-fit"><code>object-fit</code></a>, you might want to use a polyfill for better browser support, especially if you are targeting Microsoft browsers. We recommend <a href="https://github.com/bfred-it/object-fit-images">this one</a> for images and <a href="https://github.com/jonathantneal/fitie">this one</a> for videos.</li>
<li>Depending on the source website, some embedded videos might not display properly inside a <code>.media</code> section.</li>
<li>The <code>.media</code> class has a preset size of <code>height: 200px</code>. If you want to customize this, you should check the <a href="customization.html">customization page</a> for instructions.</li>
</ul>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Card sizing &amp; fluidity</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-12 col-md-normal">
<div class="container">
<br>
<div class="row">
<div class="card small"><div class="section"><h3>Small Card</h3><p>Small cards are <code>240px</code> wide.</p></div></div>
<div class="card large"><div class="section"><h3>Large Card</h3><p>Large cards are <code>480px</code> wide.</p></div></div>
<div class="col-sm-12 col-md-12 col-lg">
<div class="card fluid" style="margin: 2px 10px 20px;"><div class="section"><h3>Fluid Card</h3><p>Fluid cards scale their width based on their container. Always wrap them in a column.</p></div></div>
</div>
</div>
<br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-12 col-md-normal">
<p>Apart from the normal-sized cards (<code>320px</code> wide), there are also two different fixed-width card styles, which can be applied using the <code>.small</code> and <code>.large</code> classes respectively. Fluid cards are available via the <code>.fluid</code> class, but they require one extra step in the card structure, between the <code>.row</code> and <code>.card</code> step, which is to insert either a <code>.col-<span class="fore-primary">SCR_SZ</span></code>, replacing <code><span class="fore-primary">SCR_SZ</span></code> with one of the available screen size names (<code><span class="fore-tertiary">sm</span></code> for smaller screens, <code><span class="fore-tertiary">md</span></code> for medium-sized screens or <code><span class="fore-tertiary">lg</span></code> for larger screens) or a <code>.col-<span class="fore-primary">SCR_SZ</span>-<span class="fore-secondary">COL_WD</span></code> to specify columns with fixed width, replacing <code><span class="fore-primary">SCR_SZ</span></code> with one of the available screen size names and <code><span class="fore-secondary">COL_WD</span></code> with a number from <code>1</code> to <code>12</code> specifying the width of the column.</p>
<h3>Sample code</h3>
<pre>&lt;div class=&quot;card small&quot;&gt;
&lt;div class=&quot;section&quot;&gt;
&lt;p&gt;Content&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;card large&quot;&gt;
&lt;div class=&quot;section&quot;&gt;
&lt;p&gt;Content&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-12&quot;&gt;
&lt;div class=&quot;card fluid&quot;&gt;
&lt;div class=&quot;section&quot;&gt;
&lt;p&gt;Content&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li><code>.fluid</code> cards might not display properly in older browsers, especially legacy versions of Internet Explorer.</li>
<li>Due to the fact that <code>.fluid</code> cards stretch to fill their parent container, they might not fully respect their margins, like the rest of the cards. However, this should not cause any noticable problems with layout, except maybe the odd pixel here and there.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;div class=&quot;card&quot;&gt;
&lt;div class=&quot;section&quot;&gt;
&lt;p&gt;Content&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;card fluid&quot;&gt;
&lt;div class=&quot;section&quot;&gt;
&lt;p&gt;Content&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid mixing fixed-width cards with <code>.fluid</code> cards. Mixing the two could result in some unexpected behaviors. You can, however, mix fixed-width cards with fluid columns, which can contain <code>.fluid</code> cards inside them, effectively achieving the desired effect.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;card fluid&quot;&gt;
&lt;div class=&quot;section&quot;&gt;
&lt;p&gt;Content&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid using <code>.fluid</code> cards without wrapping them in columns. Try to use a single <code>.col-sm</code> to wrap the card inside it, otherwise there might be unexpected behavior.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row" style="padding-bottom: 20px; padding-top:20px;">
<div class="col-sm">
<p>If you want to learn more about <strong>mini.css</strong>'s modules, go back to the <a href="modules.html">modules page</a> and choose another module to see its documentation.</p>
</div>
</div>
</div></main>
<!-- End of page content-->
<footer><strong>mini.css</strong> was designed and built with <i class="fa fa-heart-o" aria-hidden="true"></i> by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</footer>
</body>
</html>

283
docs/contextual.html Normal file
View File

@@ -0,0 +1,283 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<title>mini.css - Contextual</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass, module, contextual">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<meta property="og:title" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta property="og:type" content="website"/>
<meta property="og:description" content="mini.css is a tiny CSS toolkit designed to build quick, modern and responsive websites."/>
<meta property="og:image" content="page_thumb.PNG">
<meta property="og:url" content="https://chalarangelo.github.io/mini.css/">
<link rel="icon" type="image/png" href="favicon.png">
<style>
/* Classes and ids used in multiple pages - page top and utilities */
#header-logo {
display: inline; height: 28px; width: 28px; margin-top: 4px; background: #558b2f; border-radius: 1px;
padding: 4px;
}
#top-logo {
display: inline-block; height: 66px; width: 70px; margin: 64px auto -30px; border-radius: 1px;
background: #558b2f; padding: 8px; padding-top: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
#top-heading {
color: #f5f5f5; font-size: 2.4em; text-shadow: 0 1px 2px rgba(0,0,0,0.35); margin-bottom: -8px;
}
#top-version-tag {
padding: 4px 6px; font-size: 0.85em; font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
.box-centered { text-align: center; }
.box-colored { background: #0277bd; border-radius: 2px; padding: 14px; margin-bottom: 8px; min-height: 14px;}
.box-colored.red { background: #e53935; }
.box-centered > .card.fluid {
-webkit-box-pack: start;
-webkit-box-align: start;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-self: auto;
align-self: auto;
}
[class^='col-'] .card.fluid { margin: 2px 0 20px; }
/* Local classes and ids for this page */
.fore-primary { color: #0d47a1; font-family: monospace, monospace; }
.fore-secondary { color: #b71c1c; font-family: monospace, monospace; }
.fore-tertiary { color: #1b5e20; font-family: monospace, monospace; }
.col-sm-12.col-sm-last.col-md-4.col-md-normal {
box-sizing: border-box;
border-right: 1px solid #bdbdbd;
}
@media (max-width: 767px){
.col-sm-12.col-sm-last.col-md-4.col-md-normal {
border: 0;
border-top: 1px solid #bdbdbd;
}
}
.box-colored.green { background: #689f38; }
.do {
border-top: 15px solid #689f38;
padding-top: 10px;
}
.dont {
border-top: 15px solid #e53935;
padding-top: 10px;
}
.box-colored {
color: #f5f5f5;
}
</style>
</head>
<body>
<header>
<a href="index.html"><img class="logo" src="mini-logo.svg" id="header-logo"></a><div style="display: inline; overflow: auto;">
<a href="index.html" class="button">Introduction</a>
<a href="modules.html" class="button">Modules</a>
<a href="flavors.html" class="button">Flavors</a>
<a href="customization.html" class="button">Customization</a>
<a href="quick_reference.html" class="button">Quick Reference</a>
<a href="https://github.com/Chalarangelo/mini.css" class="button">Github</a>
</div>
</header>
<div class="container" style="height: 320px; background: -webkit-linear-gradient(#455a64,#263238); background: linear-gradient(#455a64,#263238); box-shadow: 0 3px 9px rgba(0,0,0,0.26), 0 3px 6px rgba(0,0,0,0.35);">
<div class="row">
<div class="col-sm">
<div class="box-centered">
<img src="mini-logo.svg" id="top-logo">
<h1 id="top-heading"><span style="font-size: 1.35em;">m</span>ini<span style="font-size:0.65em; color: #558b2f;">.css</span></h1>
<mark class="tertiary" id="top-version-tag">v2.0</mark>
</div>
</div>
</div>
</div>
<!-- Insert your page content here-->
<main><div class="container">
<div class="row" style="padding-top: 40px;">
<div class="col-sm">
<h1>Contextual</h1>
<p>The <strong>contextual</strong> module provides you with simple tags, marks and highlights for your pages, allowing you to easily emphasize parts of your text. The contextual alerts aim to replace the commonly used modal dialog design paradigm with a more modern one. HTML5 elements and simple rules are used in order to make important messages and pieces of content stand out easily.</p>
<p><small>All examples showcased refer to the mini-default flavor, some class names and styles might differ based on the flavor you're using.</small></p>
<ul class="breadcrumbs"><li><a href="index.html">Home</a></li><li><a href="modules.html">Modules</a></li><li>Contextual</li></ul>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Quick overview</h2>
<p>Almost every piece of content present on the web has some sort of content that needs highlighting in one way or another. The <strong>contextual</strong> module provides you with simple semantic text highlighting that utilises the <code>&lt;mark&gt;</code> HTML element. Apart from that, this module contains styles and definitions for a simple <code>.alert</code> container, that you can use to show alerts on your websites and web apps. Alerts replace the traditional design paradigms of modals, messages and alerts by defining a simple, usable container that is also mobile friendly. All components in this module are fully accessible, so that's another thing not to worry about.</p><br>
</div>
<div class="section">
<h2>Quick start</h2>
<p>To use the <strong>contextual</strong> module, simply include the link to the flavor you are using and start writing your HTML page as usual. One suggestion we will make is to add the following line inside your HTML page's <code>&lt;head&gt;</code> to utilize the viewport meta tag:</p><br>
<pre>&lt;<span class="fore-tertiary">meta</span> <span class="fore-secondary">name</span>=<span class="fore-primary">&quot;viewport&quot;</span> <span class="fore-secondary">content</span>=<span class="fore-primary">&quot;width=device-width, initial-scale=1&quot;</span>&gt;</pre><br>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Text highlighting</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div>
<p>This is some text with a <mark>highlight</mark>.</p>
<p>Apart from the primary highlight style, there are also <mark class="secondary">secondary</mark> and <mark class="tertiary">tertiary</mark> styles for highlighting.</p><br>
<p><mark class="inline-block">If you want to highlight a longer piece of text, without line breaks, you can turn the highlight into an inline-block like you see this piece of text being displayed.</mark></p><br>
<p>Finally, you can create contextual tags like <mark class="tag">this</mark> or <mark class="tag">7</mark>.</p><br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>To add simple highlights in your text, you can use the <code>&lt;mark&gt;</code> HTML element. These highlights come pre-styled to use the default primary color, but if you would rather use another color for your highlight you can easily add the <code>.secondary</code> or <code>.tertiary</code> class to a <code>&lt;mark&gt;</code> element. For longer pieces of text that need highlighting, consider adding the <code>.inline-block</code> class to make them stand out even more. Finally, you can create contextual tags, using the <code>.tag</code> class.</p>
<h3>Sample code</h3>
<pre>&lt;mark&gt;primary&lt;/mark&gt;
&lt;mark class=&quot;secondary&quot;&gt;secondary&lt;/mark&gt;
&lt;mark class=&quot;tertiary&quot;&gt;tertiary&lt;/mark&gt;
&lt;mark class=&quot;inline-block&quot;&gt;long highlight text...&lt;/mark&gt;
&lt;mark class=&quot;tag&quot;&gt;tag&lt;/mark&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>Try to use elements with the <code>.inline-block</code> class only when absolutely necessary, as they break the normal text flow of the document. Avoid using this class on shorter pieces of text that span a few words and contain no line breaks.</li>
<li><code>&lt;mark&gt;</code> elements, along with their supporting classes (except for <code>.inline-block</code>) can be easily used in paragraphs, headings and other elements, as they scale according to their parent element.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;mark class=&quot;tag tertiary&quot;&gt;green tag&lt;/mark&gt;
<span class="fore-tertiary">&lt;!-- or --&gt;</span>
&lt;mark class=&quot;inline-block secondary&quot;&gt;red chunk&lt;/mark&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can combine any of the contextual color classes (<code>.secondary</code> or <code>.tertiary</code>) with the <code>.tag</code> or <code>.inline-block</code> class.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;mark class=&quot;secondary tertiary&quot;&gt;no, no&lt;/mark&gt;
<span class="fore-secondary">&lt;!-- or --&gt;</span>
&lt;mark class=&quot;inline-block tag&quot;&gt;oh, no&lt;/mark&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid combining two contextual color classes or a <code>.tag</code> and an <code>.inline-block</code>, as these combinations might result in unexpected behavior.</p>
</div>
<div class="col-sm-12 col-md-6">
<pre>&lt;mark class=&quot;inline-block&quot;&gt;some
&lt;mark class=&quot;secondary&quot;&gt;text&lt;/mark&gt;
&lt;/mark&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can only nest a <code>&lt;mark&gt;</code> inside another if the outer one is of the <code>.inline-block</code> class. You can color the inner <code>&lt;mark&gt;</code> using any of the contextual color classes or even make it a <code>.tag</code>. Be careful, however, to not make the inner <code>&lt;mark&gt;</code> an <code>.inline-block</code> as well.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;mark&gt;some
&lt;mark class=&quot;secondary&quot;&gt;text&lt;/mark&gt;
&lt;/mark&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid using nested <code>&lt;mark&gt;</code> elements, unless the outer <code>&lt;mark&gt;</code> element is an <code>.inline-block</code>.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Alerts</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div>
<div class="alert" style="margin-top: 8px; margin-bottom: 8px;"><h3>This is an alert</h3><p>Make sure you read this!</p></div>
<div class="alert urgent" style="margin-bottom: 8px;"><h3>This is an urgent alert</h3><p>Make absolutely sure you read this!</p></div>
<div class="alert critical" style="margin-bottom: 8px;"><h3>This is a critical alert</h3><p>Make certain you read and actually understand this!</p></div>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>Alerts replace modal dialogs, along with messages, notifications and traditional alerts with a simpler, easier design paradigm. To create an alert, use a <code>&lt;div&gt;</code> element, which will contain one or more elements (for example a <code>&lt;h3&gt;</code> and a <code>&lt;p&gt;</code>) and add the <code>.alert</code> class to it. For more urgent alerts, use the <code>.urgent</code> class and for critical alerts, use the <code>.critical</code> class.</p>
<h3>Sample code</h3>
<pre>&lt;div class=&quot;alert&quot;&gt;
&lt;h3&gt;This is an alert&lt;/h3&gt;
&lt;p&gt;Make sure you read this!&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&quot;alert urgent&quot;&gt;
&lt;h3&gt;This is an urgent alert&lt;/h3&gt;
&lt;p&gt;Make absolutely sure you read this!&lt;/p&gt;
&lt;/div&gt;
&lt;div class=&quot;alert critical&quot;&gt;
&lt;h3&gt;This is a critical alert&lt;/h3&gt;
&lt;p&gt;Make certain you read and actually understand this!&lt;/p&gt;
&lt;/div&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>Alert elements do not have any pre-defined behavior. You should use your own Javascript code and interactive HTML elements to deal with showing and hiding them as necessary.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;p class=&quot;alert&quot;&gt;Short and to the point&lt;/p&gt;
<span class="fore-tertiary">&lt;!-- or --&gt;</span>
&lt;h2 class=&quot;alert urgent&quot;&gt;Large and to the point&lt;/h2&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;Instead of using a <code>&lt;div&gt;</code> element, you can also apply the <code>.alert</code> class to common textual elements, such as paragraphs or headings.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;button class=&quot;alert&quot;&gt;Not a good alert&lt;/button&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid applying the <code>.alert</code> class to non-textual HTML elements, such as buttons or images. Doing so might result in unexpected behavior.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Animated alerts</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div>
<div class="animated alert" style="margin-top: 8px; margin-bottom: 8px;"><h3>This is an alert</h3><p>Make sure you read this!</p></div>
<div class="animated alert urgent" style="margin-bottom: 8px;"><h3>This is an urgent alert</h3><p>Make absolutely sure you read this!</p></div>
<div class="animated alert critical" style="margin-bottom: 8px;"><h3>This is a critical alert</h3><p>Make certain you read and actually understand this!</p></div>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>Alerts can be animated, so that they pop out a little more to make sure your users can see them. To animate an alert box, use the <code>.animated</code> class on an existing <code>.alert</code> and it shall periodically scale up a little bit to make users notice it.</p>
<h3>Sample code</h3>
<pre>&lt;div class=&quot;alert animated&quot;&gt;
&lt;h3&gt;Animated alert&lt;/h3&gt;
&lt;/div&gt;
&lt;div class=&quot;alert urgent animated&quot;&gt;
&lt;h3&gt;Animated urgent alert&lt;/h3&gt;
&lt;/div&gt;
&lt;div class=&quot;alert critical animated&quot;&gt;
&lt;h3&gt;Animated critical alert&lt;/h3&gt;
&lt;/div&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>Animated alerts may not display properly on older browsers, especially legacy versions of Internet Explorer.</li>
<li>It has been reported that some Webkit-based browsers, such as Chrome, display animated alerts in a very blurry fashion. Despite our best attempts at solving these problems, they seem to be quite persistent and we do not yet know how to fix them. Thus, you might want to hold off on using animated alerts if you think this might be an issue or try to control them using Javascript code to make the animation stop after a short amount of time (i.e. removing the <code>.animated</code> class).</li>
</ul>
</div>
</div>
</div>
</div>
<div class="row" style="padding-bottom: 20px; padding-top:20px;">
<div class="col-sm">
<p>If you want to learn more about <strong>mini.css</strong>'s modules, go back to the <a href="modules.html">modules page</a> and choose another module to see its documentation.</p>
</div>
</div>
</div></main>
<!-- End of page content-->
<footer><strong>mini.css</strong> was designed and built with <i class="fa fa-heart-o" aria-hidden="true"></i> by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</footer>
</body>
</html>

268
docs/core.html Normal file
View File

@@ -0,0 +1,268 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<title>mini.css - Core</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass, module, core">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<meta property="og:title" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta property="og:type" content="website"/>
<meta property="og:description" content="mini.css is a tiny CSS toolkit designed to build quick, modern and responsive websites."/>
<meta property="og:image" content="page_thumb.PNG">
<meta property="og:url" content="https://chalarangelo.github.io/mini.css/">
<link rel="icon" type="image/png" href="favicon.png">
<style>
/* Classes and ids used in multiple pages - page top and utilities */
#header-logo {
display: inline; height: 28px; width: 28px; margin-top: 4px; background: #558b2f; border-radius: 1px;
padding: 4px;
}
#top-logo {
display: inline-block; height: 66px; width: 70px; margin: 64px auto -30px; border-radius: 1px;
background: #558b2f; padding: 8px; padding-top: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
#top-heading {
color: #f5f5f5; font-size: 2.4em; text-shadow: 0 1px 2px rgba(0,0,0,0.35); margin-bottom: -8px;
}
#top-version-tag {
padding: 4px 6px; font-size: 0.85em; font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
.box-centered { text-align: center; }
.box-colored { background: #0277bd; border-radius: 2px; padding: 14px; margin-bottom: 8px; min-height: 14px;}
.box-colored.red { background: #e53935; }
.box-centered > .card.fluid {
-webkit-box-pack: start;
-webkit-box-align: start;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-self: auto;
align-self: auto;
}
[class^='col-'] .card.fluid { margin: 2px 0 20px; }
/* Local classes and ids for this page */
.fore-primary { color: #0d47a1; font-family: monospace, monospace; }
.fore-secondary { color: #b71c1c; font-family: monospace, monospace; }
.fore-tertiary { color: #1b5e20; font-family: monospace, monospace; }
.col-sm-12.col-sm-last.col-md-4.col-md-normal {
box-sizing: border-box;
border-right: 1px solid #bdbdbd;
}
@media (max-width: 767px){
.col-sm-12.col-sm-last.col-md-4.col-md-normal {
border: 0;
border-top: 1px solid #bdbdbd;
}
}
</style>
</head>
<body>
<header>
<a href="index.html"><img class="logo" src="mini-logo.svg" id="header-logo"></a><div style="display: inline; overflow: auto;">
<a href="index.html" class="button">Introduction</a>
<a href="modules.html" class="button">Modules</a>
<a href="flavors.html" class="button">Flavors</a>
<a href="customization.html" class="button">Customization</a>
<a href="quick_reference.html" class="button">Quick Reference</a>
<a href="https://github.com/Chalarangelo/mini.css" class="button">Github</a>
</div>
</header>
<div class="container" style="height: 320px; background: -webkit-linear-gradient(#455a64,#263238); background: linear-gradient(#455a64,#263238); box-shadow: 0 3px 9px rgba(0,0,0,0.26), 0 3px 6px rgba(0,0,0,0.35);">
<div class="row">
<div class="col-sm">
<div class="box-centered">
<img src="mini-logo.svg" id="top-logo">
<h1 id="top-heading"><span style="font-size: 1.35em;">m</span>ini<span style="font-size:0.65em; color: #558b2f;">.css</span></h1>
<mark class="tertiary" id="top-version-tag">v2.0</mark>
</div>
</div>
</div>
</div>
<!-- Insert your page content here-->
<main><div class="container">
<div class="row" style="padding-top: 40px;">
<div class="col-sm">
<h1>Core</h1>
<p>The <strong>core</strong> module contains basic reset and fix rules, based on <a href="http://necolas.github.io/normalize.css/">Normalize.css</a> v5.0.0, along with lots of custom typography rules. Most textual HTML5 elements are styled by this module, so you can start writing your pages immediately without worrying about font families, weights, sizes, line heights, paddings and the like.</p>
<p><small>All examples showcased refer to the mini-default flavor, some class names and styles might differ based on the flavor you're using.</small></p>
<ul class="breadcrumbs"><li><a href="index.html">Home</a></li><li><a href="modules.html">Modules</a></li><li>Core</li></ul>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Quick overview</h2>
<p>Before applying any typography and styling rules, some resets need to be applied to make sure that different elements display consistently on all browsers. The <strong>core</strong> module utilizes the ruleset of <a href="http://necolas.github.io/normalize.css/">Normalize.css</a> v5.0.0 to apply those much needed resets and fixes. However, to keep the framework small, we removed some rules that only help with legacy browser support and also tweaked a lot of the rules around to use customizable variables so no duplicate rules are applied, taking up unnecessary space. The typography rules in <strong>core</strong> deal with a page's basics, like fonts and styling of headings and paragraphs, horizontal rules, colors, margins, padding etc.</p><br>
</div>
<div class="section">
<h2>Quick start</h2>
<p>To use the <strong>core</strong> module, simply include the link to the flavor you are using and start writing your HTML page as usual. One suggestion we will make is to add the following line inside your HTML page's <code>&lt;head&gt;</code> to utilize the viewport meta tag:</p><br>
<pre>&lt;<span class="fore-tertiary">meta</span> <span class="fore-secondary">name</span>=<span class="fore-primary">&quot;viewport&quot;</span> <span class="fore-secondary">content</span>=<span class="fore-primary">&quot;width=device-width, initial-scale=1&quot;</span>&gt;</pre><br>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Typography</h2>
</div>
<div class="section row">
<div class="col-sm-12">
<p>For the basic typography rules we did the following, along with other things presented below:</p>
<ul>
<li>We use a <a href="https://www.smashingmagazine.com/2015/11/using-system-ui-fonts-practical-guide/">native font stack</a> to figure out the best font for your device.</li>
<li>We set the colors to <code>background: #f5f5f5;</code> and <code>color: #212121;</code>.</li>
<li>We use a <code>font-size</code> of <code>16px</code> for the root element.</li>
<li>We set <code>line-height</code> to <code>1.5</code>.</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Headings</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal row">
<div class="col-sm-12 col-lg-6 col-lg-first"><h1>Heading 1<small>Subheading</small></h1></div>
<div class="col-sm-12 col-lg-6"><h2>Heading 2<small>Subheading</small></h2></div>
<div class="col-sm-12 col-lg-6 col-lg-last"><h3>Heading 3<small>Subheading</small></h3></div>
<div class="col-sm-12 col-lg-6 col-lg-first"><h4>Heading 4<small>Subheading</small></h4></div>
<div class="col-sm-12 col-lg-6"><h5>Heading 5<small>Subheading</small></h5></div>
<div class="col-sm-12 col-lg-6 col-lg-last"><h6>Heading 6<small>Subheading</small></h6></div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>All six of the HTML headings (<code>&lt;h1&gt;</code> - <code>&lt;h6&gt;</code>) are styled with simple rules, providing a clean base for your pages' headings. Apart from the headings themselves, complementary rules are provided for <code>&lt;small&gt;</code> elements inside headings, allowing you to define subheadings or explanatory text for those headings. These subheadings are stylized to display below the headings in smaller, lighter type.</p>
<h3>Sample code</h3>
<pre>&lt;h1&gt;Heading 1&lt;small&gt;Subheading&lt;/small&gt;&lt;/h1&gt;
&lt;h2&gt;Heading 2&lt;small&gt;Subheading&lt;/small&gt;&lt;/h2&gt;
&lt;h3&gt;Heading 3&lt;small&gt;Subheading&lt;/small&gt;&lt;/h3&gt;
&lt;h4&gt;Heading 4&lt;small&gt;Subheading&lt;/small&gt;&lt;/h4&gt;
&lt;h5&gt;Heading 5&lt;small&gt;Subheading&lt;/small&gt;&lt;/h5&gt;
&lt;h6&gt;Heading 6&lt;small&gt;Subheading&lt;/small&gt;&lt;/h6&gt;</pre><br>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Common textual elements</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div><br><p>This is a paragraph with some sample text. Did you know <strong>mini.css</strong> v2.0 is codenamed <strong>Fermion</strong>? No? Well, now you do! Oh, by the way, that was some Bold text and here is some <em>text in Italics</em>. Maybe you want to know what our inline elements look like. For example a <a href="https://github.com/Chalarangelo/mini.css">link to the Github repository of mini.css</a> looks like that! Neat, right? Maybe you want to see some <code>inline code</code> or some sample <kbd>input</kbd>. Oh, also <small>small text</small> is cool, along with its siblings: the subscript<sub>hi!</sub> and the superscript<sup>hello!</sup>. Finally, check out the horizontal rule, preformatted code block and quotation below.</p>
<hr>
<pre>function sum(num1, num2) {
var num3 = num1 + num2;
console.log('Result: ' + num3);
}</pre>
<blockquote cite="Mr. Quotalot">This is some quoted text from elsewhere.</blockquote><br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>The most common HTML5 elements must be things like <code>&lt;p&gt;</code>aragraphs, bold (<code>&lt;strong&gt;</code>) &amp; italics (<code>&lt;em&gt;</code>) text, links (<code>&lt;a&gt;</code>), horizontal rules (<code>&lt;hr&gt;</code>) and <code>&lt;small&gt;</code> text. These, along with a few others, are styled by default using clean, modern design to make your pages look cool and stand out from the rest of the internet.</p>
<h3>Sample code</h3>
<pre>&lt;p&gt;This is a paragraph with some &lt;strong&gt;bold text&lt;/strong&gt; and some &lt;em&gt;italics text&lt;/em&gt;.&lt;/p&gt;
&lt;a href=&quot;#&quot;&gt;This is a link.&lt;/a&gt;
&lt;small&gt;This is some small text.&lt;/small&gt;
&lt;sub&gt;Subscript&lt;/sub&gt;
&lt;sup&gt;Superscript&lt;/sup&gt;
&lt;code&gt;Inline code&lt;/code&gt;
&lt;kbd&gt;Keyboard Input&lt;/kbd&gt;
&lt;hr&gt;
&lt;pre&gt;This is some preformatted text.&lt;/pre&gt;
&lt;blockquote cite=&quot;Quotation source&quot;&gt;
This is some quoted text from another website or person.
&lt;/blockquote&gt;</pre><br>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Lists</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div>
<br>
<ul>
<li>Apple</li>
<li>Orange</li>
<li>Strawberry</li>
</ul>
<br>
<ol>
<li>Wake up</li>
<li>Eat breakfast</li>
<li>Go to work</li>
</ol>
<br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>Lists are also very commonly used in websites and apps. We tweaked a few margins and paddings to save some space and make them align properly with the rest of the common HTML elements that we use, but both unordered lists (<code>&lt;ul&gt;</code>) and ordered lists (<code>&lt;ol&gt;</code>) are minimally pre-styled to make things a little bit easier for you.</p>
<h3>Sample code</h3>
<pre>&lt;ul&gt;
&lt;li&gt;Apple&lt;/li&gt;
&lt;li&gt;Orange&lt;/li&gt;
&lt;li&gt;Strawberry&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;Wake up&lt;/li&gt;
&lt;li&gt;Eat breakfast&lt;/li&gt;
&lt;li&gt;Go to work&lt;/li&gt;
&lt;/ol&gt;</pre><br>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Image responsiveness</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div>
<img src="http://placehold.it/800x600">
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>Image elements (<code>&lt;img&gt;</code>) are responsive by default, without the need for any special classes or anything else. We made sure they will scale down as necessary to display properly on smaller devices, while keeping their original aspect ratio, but they will never scale up above their original size.</p>
<h3>Sample code</h3>
<pre>&lt;img src=&quot;...&quot;&gt;</pre><br>
</div>
</div>
</div>
</div>
</div>
<div class="row" style="padding-bottom: 20px; padding-top:20px;">
<div class="col-sm">
<p>If you want to learn more about <strong>mini.css</strong>'s modules, go back to the <a href="modules.html">modules page</a> and choose another module to see its documentation.</p>
</div>
</div>
</div></main>
<!-- End of page content-->
<footer><strong>mini.css</strong> was designed and built with <i class="fa fa-heart-o" aria-hidden="true"></i> by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</footer>
</body>
</html>

247
docs/customization.html Normal file
View File

@@ -0,0 +1,247 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<title>mini.css - Customization</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass, customization, flavor">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<link rel="icon" type="image/png" href="favicon.png">
<style>
/* Classes and ids used in multiple pages - page top and utilities */
#header-logo {
display: inline; height: 28px; width: 28px; margin-top: 4px; background: #558b2f; border-radius: 1px;
padding: 4px;
}
#top-logo {
display: inline-block; height: 66px; width: 70px; margin: 64px auto -30px; border-radius: 1px;
background: #558b2f; padding: 8px; padding-top: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
#top-heading {
color: #f5f5f5; font-size: 2.4em; text-shadow: 0 1px 2px rgba(0,0,0,0.35); margin-bottom: -8px;
}
#top-version-tag {
padding: 4px 6px; font-size: 0.85em; font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
.box-centered { text-align: center; }
.box-colored { background: #0277bd; border-radius: 2px; padding: 14px; margin-bottom: 8px; min-height: 14px;}
.box-colored.red { background: #e53935; }
.box-centered > .card.fluid {
-webkit-box-pack: start;
-webkit-box-align: start;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-self: auto;
align-self: auto;
}
[class^='col-'] .card.fluid { margin: 2px 0 20px; }
/* Local classes and ids for this page */
.box-left { text-align: left; }
.fore-primary { color: #0d47a1; font-family: monospace, monospace; }
.fore-secondary { color: #b71c1c; font-family: monospace, monospace; }
.fore-tertiary { color: #1b5e20; font-family: monospace, monospace; }
</style>
</head>
<body>
<header>
<a href="index.html"><img class="logo" src="mini-logo.svg" id="header-logo"></a><div style="display: inline; overflow: auto;">
<a href="index.html" class="button">Introduction</a>
<a href="modules.html" class="button">Modules</a>
<a href="flavors.html" class="button">Flavors</a>
<a href="customization.html" class="button">Customization</a>
<a href="quick_reference.html" class="button">Quick Reference</a>
<a href="https://github.com/Chalarangelo/mini.css" class="button">Github</a>
</div>
</header>
<div class="container" style="height: 320px; background: -webkit-linear-gradient(#455a64,#263238); background: linear-gradient(#455a64,#263238); box-shadow: 0 3px 9px rgba(0,0,0,0.26), 0 3px 6px rgba(0,0,0,0.35);">
<div class="row">
<div class="col-sm">
<div class="box-centered">
<img src="mini-logo.svg" id="top-logo">
<h1 id="top-heading"><span style="font-size: 1.35em;">m</span>ini<span style="font-size:0.65em; color: #558b2f;">.css</span></h1>
<mark class="tertiary" id="top-version-tag">v2.0</mark>
</div>
</div>
</div>
</div>
<!-- Insert your page content here-->
<main><div class="container">
<div class="row" style="padding-top: 40px;">
<div class="col-sm">
<h1>Customization</h1>
<p><strong>mini.css</strong> is built in such a way that customizing it is really simple. You can try out one of the <a href="flavors.html">pre-defined flavors</a>, if you want to start learning and build something quickly. We strongly suggest, however, that you customize an existing flavor or build your own, by tweaking variables and using mixins, in order to create your own, unique style. In this page, we will try to give you some guidelines and tips on how to do so and explain a few more things about the inner workings of <strong>mini.css</strong>.</p><br>
<h2>Introduction &amp; basics</h2>
<p><strong>mini.css</strong> is written using <a href="http://sass-lang.com/">Sass</a>, a very popular CSS preprocessor. We use Sass to do four things:</p>
<ul>
<li>Make the code modular</li>
<li>Create variables that can be changed on the fly</li>
<li>Optimize the code</li>
<li>Create reusable mixins</li>
</ul>
</div>
</div>
<div class="row">
<div class="col-sm-12 col-md-6">
<h3>Modules &amp; file structure</h3>
<p>At the heart of <strong>mini.css</strong> are modules - groups of classes and styles that aim to solve one set of needs. There are 10 modules in <strong>mini.css</strong>, which have been already written for you. All of the modules are built using partial files, named <code>_module_name.scss</code> and placed in the <code>src/mini</code> folder. You can edit any of the modules' code and/or add your own modules, following the same structure. The only thing you need to remember to do, in order to add your module to your flavor, is to add an <code>@import</code> statement after all the required variable declarations towards the bottom of your flavor file and it will be compiled along with the rest of <strong>mini.css</strong>. Similarly, to disable a module, just comment out its <code>@import</code> statement from the flavor file.</p>
</div>
<div class="col-sm-12 col-md-6">
<h3>Variables</h3>
<p>Everything in <strong>mini.css</strong> is based on Sass variables. We try to make our variable names as descriptive as possible, usually using names like <code>$block-element-property-name</code>, but some things might vary a little bit. Changing the values of variables should be reasonably easy, simply navigate to the <code>src/flavors/flavor-name.scss</code> file for a pre-defined flavor and you will see a list of variables that you can tweak. Change the values as you see fit and your finalized stylesheet will reflect the changes you have made. We did our best to make everything as customizable as possible, so that different people can build entirely different flavors using the same building blocks.</p>
</div>
</div>
<div class="row">
<div class="col-sm-12 col-md-6">
<h3>Code optimization</h3>
<p>Building <strong>mini.css</strong> was no small task. Making it lightweight and customizable made things even harder, because these two things don't go well together most of the time. What we did was put more of the load on the preprocessor, instead of the final file. In order to accomplish this, we optimized as much of the code as possible, using conditions, flags and other tricks, so that compiling a flavor file might take one second longer, but loading won't. If you add any code to a flavor yourself, remember not only to make it customizable, but also to optimize it as best as possible.</p>
</div>
<div class="col-sm-12 col-md-6">
<h3>Mixins</h3>
<p>A lot of elements and components can be styled in many ways and most of the time we want a few styles to be available, without having to rewrite everything. We utilized the <code>@mixin</code> directive of Sass wherever we could to make it possible for you to easily create styles for pre-existing components and elements without having to tweak the base code for said elements or components. To use a mixin, simply <code>@include</code> it, passing values to at least its mandatory parameters. We recommend you write mixins wherever possible, if you create any new modules for <strong>mini.css</strong>.</p>
</div>
</div>
<div class="row">
<div class="col-sm-12">
<br>
<h2>Building a flavor</h2>
<p>Creating your own flavor can be as easy or as complicated as your needs. Adding and removing modules is as simple as adding an <code>@import</code> statement or commenting it out, after declaring all the required variables. In this section, we will briefly walk you through most of the variables usually present in a flavor, along with some flags and mixins. This section serves as a complementary documentation to the comment column present in our pre-defined flavors, instead of a replacement and should be always viewed alongside it.</p><br>
<div class="card fluid">
<div class="section">
<h3>Core</h3>
</div>
<div class="section">
<p>The <strong>core</strong> module uses a lot of variables, most of which are pretty straightforward. Some of the most important ones are as follows:</p>
<ul>
<li><code>$fore-color</code> - base text color</li>
<li><code>$back-color</code> - base background color or image</li>
<li><code>$base-font-family</code> - font stack</li>
<li><code>$base-root-font-size</code> - font size of the page's root element, <strong>must be specified in <mark>px</mark> units</strong></li>
<li><code>$base-line-height</code> - base line height for the page's text</li>
<li><code>$body-margin</code> - margin of the <code>&lt;body&gt;</code> element</li>
</ul>
<p>Apart from the above variables, you should take note of the boolean <code>$apply-defaults-to-all</code>, which will reset font styling for all elements, utilizing the value of <code>$base-font-size</code> in the process. Certain elements like headings, horizontal rules and code blocks have some opinionated &quot;modern&quot; styles which can be turned on or off, using the boolean variables <code>$make-heading-smalltext-block</code>, <code>$horizontal-rule-fancy-style</code> and <code>$add-pre-element-sidebar</code>. The <code>$style-samp-element</code> and <code>$include-dfn-fix</code> boolean variables will either add styling for the elements they affect or completely omit it. This is part of the code optimization process, as most websites rarely use these elements. Finally, there are two boolean variables for link styling, <code>$apply-link-underline</code> and <code>$apply-link-hover-fade</code>.</p>
</div>
</div>
<div class="card fluid">
<div class="section">
<h3>Grid</h3>
</div>
<div class="section">
<p>The <strong>grid</strong> module contains two important variables, the boolean <code>$use-four-step-grid</code> which determines if the grid has 3 or 4 breakpoints and the <code>$grid-column-count</code> which determines the amount of vertical columns used for the grid's layout. Apart from those, there are a few variables that set the names for the grid system's classes, prefixes and suffixes and the grid's screen size breakpoint definitions.</p>
</div>
</div>
<div class="card fluid">
<div class="section">
<h3>Navigation</h3>
</div>
<div class="section">
<p>The <strong>navigation</strong> module contains a plethora of variables used in the styling of the navigational elements. Most of them concern colors, spacing and sizing or similar things. Bear in mind that the presentation of buttons inside the <code>&lt;header&gt;</code> element will be affected by the styling of all button elements, as defined in the <code>input_control</code> module. The variable that stands out in this module is <code>$nav-sublink-depth</code> which determines how deep a navigational hierarchy tree can be.</p>
</div>
</div>
<div class="card fluid">
<div class="section">
<h3>Input Control</h3>
</div>
<div class="section">
<p>The <strong>input_control</strong> module is one of the larger modules, containg a lot of variables to style a multitude of elements. Forms and textual <code>&lt;input&gt;</code> elements utilize variables that concern color, spacing, sizing etc. Button variables are more interesting, especially the ones concerning the opacity of button elements (<code>$button-back-opacity</code> and <code>$button-hover-back-opacity</code>). The <code>$hide-file-inputs</code> boolean variable determines how <code>&lt;input <span class="fore-secondary">type</span>=<span class="fore-primary">&quot;file&quot;</span>&gt;</code> elements will be handled. Checkboxes and radio buttons also use a few variables concerning basic styling, but special attention needs to be paid to the <code>$checkbox-size</code> variable, as it determines a few attributes of both elements.</p>
<p>There are two mixins in the <strong>input_control</strong> module, specifically:</p>
<ul>
<li><code>make-button-alt-color</code> - button color variants</li>
<li><code>make-button-alt-style</code> - button size and spacing variants</li>
</ul>
</div>
</div>
<div class="card fluid">
<div class="section">
<h3>Table</h3>
</div>
<div class="section">
<p>The <strong>table</strong> module's variables deal mostly with basic table styling. The <code>$table-mobile-breakpoint</code> is very important as it determines the breakpoint for responsive tables' mobile view, along with <code>$table-mobile-card-label</code> which determines the attribute that will be used to display the table headings on mobile devices.</p>
</div>
</div>
<div class="card fluid">
<div class="section">
<h3>Card</h3>
</div>
<div class="section">
<p>The <strong>card</strong> modules' variables mostly deal with things like class names, spacing, sizing and colors. Cards offer a handful of mixins, specifically:</p>
<ul>
<li><code>make-card-alt-size</code> - card size variants</li>
<li><code>make-card-alt-color</code> - card color variants</li>
<li><code>make-card-section-alt-color</code> - card section color variants</li>
<li><code>make-card-section-alt-style</code> - card section size and spacing variants</li>
</ul>
</div>
</div>
<div class="card fluid">
<div class="section">
<h3>Tab</h3>
</div>
<div class="section">
<p>The <strong>tab</strong> module utilizes a few naming and color variables, along with some sizing and spacing variables to deal with presentation and functionality. Many of the sizing variables are very dependent on each other's values. The <code>$tab-stacked-breakpoint</code> variable is especially important, as it determines the mobile view breakpoint for the tabs component.</p>
</div>
</div>
<div class="card fluid">
<div class="section">
<h3>Contextual</h3>
</div>
<div class="section">
<p>The <strong>contextual</strong> module features, apart from basic naming and styling variables, a few things of note. The boolean variable <code>$alert-include-animated</code> determines if animated alerts will be inluded or not. There is also a handful of mixins, which are the most important part of the contextual module as they are what makes it useful:</p>
<ul>
<li><code>make-mark-alt-color</code> - mark color variants</li>
<li><code>make-mark-alt-style</code> - mark size and spacing variants</li>
<li><code>make-alert-alt-color</code> - alert color variants</li>
<li><code>make-alert-alt-style</code> - alert size and spacing variants</li>
</ul>
</div>
</div>
<div class="card fluid">
<div class="section">
<h3>Progress</h3>
</div>
<div class="section">
<p>The <strong>progress</strong> module contains lots of variables that affect basic styling, but it also features a few interesting mixins:</p>
<ul>
<li><code>make-progress-inline</code> - inline progress variant</li>
<li><code>make-progress-alt-color</code> - progress color variants</li>
<li><code>make-progress-alt-style</code> - progress size and spacing variants</li>
<li><code>make-spinner-donut-alt-color</code> - spinner donut color variants</li>
<li><code>make-spinner-donut-alt-style</code> - spinner donut size and spacing variants</li>
</ul>
</div>
</div>
<div class="card fluid">
<div class="section">
<h3>Utility</h3>
</div>
<div class="section">
<p>The <strong>utility</strong> module contains a few variables dealing with naming and basic styling, but its most important feature is its mixins:</p>
<ul>
<li><code>make-border-generic</code> - generic border</li>
<li><code>make-border-radial-style</code> - border radius variants</li>
<li><code>make-box-shadow-generic</code> - generic shadow variants</li>
<li><code>make-margin-responsive</code> - responsive margins</li>
<li><code>make-padding-responsive</code> - responsive paddings</li>
<li><code>make-floats</code> - quick floats</li>
</ul>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<p>If you would rather use one of the pre-defined flavors, check out our <a href="flavors.html">flavors</a> page for a list of all flavors currently available.</p>
</div>
</div>
<div class="row box-centered">
<div class="col-sm-12">
</div>
</div>
</div></main>
<!-- End of page content-->
<footer><strong>mini.css</strong> was designed and built with <i class="fa fa-heart-o" aria-hidden="true"></i> by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</footer>
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

128
docs/flavors.html Normal file
View File

@@ -0,0 +1,128 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<title>mini.css - Flavors</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass, flavor, flavors">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<meta property="og:title" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta property="og:type" content="website"/>
<meta property="og:description" content="mini.css is a tiny CSS toolkit designed to build quick, modern and responsive websites."/>
<meta property="og:image" content="page_thumb.PNG">
<meta property="og:url" content="https://chalarangelo.github.io/mini.css/">
<link rel="icon" type="image/png" href="favicon.png">
<style>
/* Classes and ids used in multiple pages - page top and utilities */
#header-logo {
display: inline; height: 28px; width: 28px; margin-top: 4px; background: #558b2f; border-radius: 1px;
padding: 4px;
}
#top-logo {
display: inline-block; height: 66px; width: 70px; margin: 64px auto -30px; border-radius: 1px;
background: #558b2f; padding: 8px; padding-top: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
#top-heading {
color: #f5f5f5; font-size: 2.4em; text-shadow: 0 1px 2px rgba(0,0,0,0.35); margin-bottom: -8px;
}
#top-version-tag {
padding: 4px 6px; font-size: 0.85em; font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
.box-centered { text-align: center; }
.box-colored { background: #0277bd; border-radius: 2px; padding: 14px; margin-bottom: 8px; min-height: 14px;}
.box-colored.red { background: #e53935; }
.box-centered > .card.fluid {
-webkit-box-pack: start;
-webkit-box-align: start;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-self: auto;
align-self: auto;
}
[class^='col-'] .card.fluid { margin: 2px 0 20px; }
/* Local classes and ids for this page */
h2 > a{
font-size: 1rem;
float: right;
}
.box-left { text-align: left; }
.fore-primary { color: #0d47a1; font-family: monospace, monospace; }
.fore-secondary { color: #b71c1c; font-family: monospace, monospace; }
.fore-tertiary { color: #1b5e20; font-family: monospace, monospace; }
</style>
</head>
<body>
<header>
<a href="index.html"><img class="logo" src="mini-logo.svg" id="header-logo"></a><div style="display: inline; overflow: auto;">
<a href="index.html" class="button">Introduction</a>
<a href="modules.html" class="button">Modules</a>
<a href="flavors.html" class="button">Flavors</a>
<a href="customization.html" class="button">Customization</a>
<a href="quick_reference.html" class="button">Quick Reference</a>
<a href="https://github.com/Chalarangelo/mini.css" class="button">Github</a>
</div>
</header>
<div class="container" style="height: 320px; background: -webkit-linear-gradient(#455a64,#263238); background: linear-gradient(#455a64,#263238); box-shadow: 0 3px 9px rgba(0,0,0,0.26), 0 3px 6px rgba(0,0,0,0.35);">
<div class="row">
<div class="col-sm">
<div class="box-centered">
<img src="mini-logo.svg" id="top-logo">
<h1 id="top-heading"><span style="font-size: 1.35em;">m</span>ini<span style="font-size:0.65em; color: #558b2f;">.css</span></h1>
<mark class="tertiary" id="top-version-tag">v2.0</mark>
</div>
</div>
</div>
</div>
<!-- Insert your page content here-->
<main><div class="container">
<div class="row" style="padding-top: 40px;">
<div class="col-sm">
<h1>Flavors</h1>
<p>One of the core ideas behind <strong>mini.css</strong> is its flavor system. A flavor is the final compiled stylesheet a website or web app uses. When you start using <strong>mini.css</strong>, you usually try out the default flavor, using the following reference inside your HTML page's <code>&lt;head&gt;</code> tag:</p>
<pre>&lt;<span class="fore-tertiary">link</span> <span class="fore-secondary">rel</span>=<span class="fore-primary">&quot;stylesheet&quot;</span> <span class="fore-secondary">href</span>=<span class="fore-primary">&quot;https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css&quot;</span>&gt;</pre><br>
<p>There are, however a handful of other flavors included with <strong>mini.css</strong>. Below, you can see a full list of them:</p><br>
<ul style="margin-left:0px; padding-left: 10px">
<li class="card fluid">
<h2 class="section double-padded">Default <small>mini-default</small></h2>
<pre class="section double-padded" style="border-left:0; box-shadow: none;">&lt;<span class="fore-tertiary">link</span> <span class="fore-secondary">rel</span>=<span class="fore-primary">&quot;stylesheet&quot;</span> <span class="fore-secondary">href</span>=<span class="fore-primary">&quot;https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css&quot;</span>&gt;</pre>
<p class="section double-padded">The default flavor for <strong>mini.css</strong> uses a light gray background and gray-black foreground color. Certain containers, such as cards and tabs use white-gray backgrounds. The grid system has 12 columns and most of the components and modules use sharp corners with blurred shadows to give it a material-like design. All of the colors used in this flavor are based on <a href="https://material.google.com/style/color.html">Google's Material design color palette</a>.</p>
<div class="section double-padded">
<p><strong>Author:</strong> <a href="https://github.com/Chalarangelo">Chalarangelo</a></p>
<p><strong>Latest version:</strong> v2.0.2</p>
<p><strong>Size:</strong> 7 KB</p>
</p>
</div>
</li>
<li class="card fluid">
<h2 class="section double-padded">Classic <small>mini-classic</small></h2>
<p class="section double-padded">Simpler, lighter version of the default flavor. Coming soon...</p>
</li>
<li class="card fluid">
<h2 class="section double-padded">Sucroa <a href="http://codepen.io/chalarangelo/pen/YNKYgz" target="_blank" class="button small"><i class="fa fa-codepen" aria-hidden="true"></i>&nbsp;View on Codepen</a><small>mini-sucroa</small></h2>
<pre class="section double-padded" style="border-left:0; box-shadow: none;">&lt;<span class="fore-tertiary">link</span> <span class="fore-secondary">rel</span>=<span class="fore-primary">&quot;stylesheet&quot;</span> <span class="fore-secondary">href</span>=<span class="fore-primary">&quot;https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-sucroa.min.css&quot;</span>&gt;</pre>
<p class="section double-padded">Sucroa is a full flavor that uses a yellow-pink-lilac background color palette with dark purple-black foreground colors. It uses the default naming conventions (<code>.primary</code>, <code>.secondary</code> etc.). The grid system has 12 columns and most components use soft shadows combined with rounded corners. The card module's <code>.dark</code> and <code>.darker</code> classes have been replaced by the <code>.light</code> and <code>.lighter</code> classes respectively. Finally, <code>.animated</code> alerts are not available.</p>
<div class="section double-padded">
<p><strong>Author:</strong> <a href="https://github.com/AngieDaskalakis">Angeliki Daskalakis</a></p>
<p><strong>Latest version:</strong> v2.0.2</p>
<p><strong>Size:</strong> 7 KB</p>
</p>
</div>
</li>
</ul>
<p>If you would rather modify one of the pre-defined flavors or create your own, check out our <a href="customization.html">customization</a> page for instructions.</p>
</div>
</div>
<div class="row box-centered">
<div class="col-sm-12">
</div>
</div>
</div></main>
<!-- End of page content-->
<footer><strong>mini.css</strong> was designed and built with <i class="fa fa-heart-o" aria-hidden="true"></i> by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</footer>
</body>
</html>

555
docs/grid.html Normal file
View File

@@ -0,0 +1,555 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<title>mini.css - Grid</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass, module, grid">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<meta property="og:title" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta property="og:type" content="website"/>
<meta property="og:description" content="mini.css is a tiny CSS toolkit designed to build quick, modern and responsive websites."/>
<meta property="og:image" content="page_thumb.PNG">
<meta property="og:url" content="https://chalarangelo.github.io/mini.css/">
<link rel="icon" type="image/png" href="favicon.png">
<style>
/* Classes and ids used in multiple pages - page top and utilities */
#header-logo {
display: inline; height: 28px; width: 28px; margin-top: 4px; background: #558b2f; border-radius: 1px;
padding: 4px;
}
#top-logo {
display: inline-block; height: 66px; width: 70px; margin: 64px auto -30px; border-radius: 1px;
background: #558b2f; padding: 8px; padding-top: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
#top-heading {
color: #f5f5f5; font-size: 2.4em; text-shadow: 0 1px 2px rgba(0,0,0,0.35); margin-bottom: -8px;
}
#top-version-tag {
padding: 4px 6px; font-size: 0.85em; font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
.box-centered { text-align: center; }
.box-colored { background: #0277bd; border-radius: 2px; padding: 14px; margin-bottom: 8px; min-height: 14px;}
.box-colored.red { background: #e53935; }
.box-centered > .card.fluid {
-webkit-box-pack: start;
-webkit-box-align: start;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-self: auto;
align-self: auto;
}
[class^='col-'] .card.fluid { margin: 2px 0 20px; }
/* Local classes and ids for this page */
.fore-primary { color: #0d47a1; font-family: monospace, monospace; }
.fore-secondary { color: #b71c1c; font-family: monospace, monospace; }
.fore-tertiary { color: #1b5e20; font-family: monospace, monospace; }
.col-sm-12.col-sm-last.col-md-4.col-md-normal {
box-sizing: border-box;
border-right: 1px solid #bdbdbd;
}
@media (max-width: 767px){
.col-sm-12.col-sm-last.col-md-4.col-md-normal {
border: 0;
border-top: 1px solid #bdbdbd;
}
}
.box-colored.green { background: #689f38; }
.do {
border-top: 15px solid #689f38;
padding-top: 10px;
}
.dont {
border-top: 15px solid #e53935;
padding-top: 10px;
}
.box-colored {
color: #f5f5f5;
}
</style>
</head>
<body>
<header>
<a href="index.html"><img class="logo" src="mini-logo.svg" id="header-logo"></a><div style="display: inline; overflow: auto;">
<a href="index.html" class="button">Introduction</a>
<a href="modules.html" class="button">Modules</a>
<a href="flavors.html" class="button">Flavors</a>
<a href="customization.html" class="button">Customization</a>
<a href="quick_reference.html" class="button">Quick Reference</a>
<a href="https://github.com/Chalarangelo/mini.css" class="button">Github</a>
</div>
</header>
<div class="container" style="height: 320px; background: -webkit-linear-gradient(#455a64,#263238); background: linear-gradient(#455a64,#263238); box-shadow: 0 3px 9px rgba(0,0,0,0.26), 0 3px 6px rgba(0,0,0,0.35);">
<div class="row">
<div class="col-sm">
<div class="box-centered">
<img src="mini-logo.svg" id="top-logo">
<h1 id="top-heading"><span style="font-size: 1.35em;">m</span>ini<span style="font-size:0.65em; color: #558b2f;">.css</span></h1>
<mark class="tertiary" id="top-version-tag">v2.0</mark>
</div>
</div>
</div>
</div>
<!-- Insert your page content here-->
<main><div class="container">
<div class="row" style="padding-top: 40px;">
<div class="col-sm">
<h1>Grid</h1>
<p>The <strong>grid</strong> module provides you with a modern, responsive grid system based on the Flexible Layout Module (commonly known as <em>flexbox</em>). The structure of the grid is simple and logical, allowing you to quickly build your pages from scratch. Setting the layout for a page is easy and will behave the way you want them to on mobile devices and smaller screens.</p>
<p><small>All examples showcased refer to the mini-default flavor, some class names and styles might differ based on the flavor you're using.</small></p>
<ul class="breadcrumbs"><li><a href="index.html">Home</a></li><li><a href="modules.html">Modules</a></li><li>Grid</li></ul>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Quick overview</h2>
<p>Easy page layout is one of the main advantages of using a CSS toolkit over writing your own styles. The <strong>grid</strong> module utilizes the <a href="https://css-tricks.com/snippets/css/a-guide-to-flexbox/">Flexbox Layout</a> to provide you with a modern and responsive layout grid system for all your needs. Rules in the <strong>grid</strong> module help you create basic fluid containers for your grid and allow you to design layouts that work well on all screen sizes using a simple row and column structure. The grid system contains definitions for both fluid columns that resize according to their siblings and columns with preset sizes on different screen sizes, as well as rules that allow you to offset or move certain columns to the first or last place on the grid's row on different devices, helping you present the page in a different layout without duplicating any content. All of the rules in the module are built around accessibility, so screen readers can easily read you pages.</p><br>
</div>
<div class="section">
<h2>Quick start</h2>
<p>To use the <strong>grid</strong> module, simply include the link to the flavor you are using and start writing your HTML page as usual. One suggestion we will make is to add the following line inside your HTML page's <code>&lt;head&gt;</code> to utilize the viewport meta tag:</p><br>
<pre>&lt;<span class="fore-tertiary">meta</span> <span class="fore-secondary">name</span>=<span class="fore-primary">&quot;viewport&quot;</span> <span class="fore-secondary">content</span>=<span class="fore-primary">&quot;width=device-width, initial-scale=1&quot;</span>&gt;</pre><br>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Basic layout</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div class="container"><br>
<div class="row"><div class="col-sm-1"><div class="box-colored">1</div></div><div class="col-sm-11"><div class="box-colored">11</div></div></div>
<div class="row"><div class="col-sm-2"><div class="box-colored">2</div></div><div class="col-sm-10"><div class="box-colored">10</div></div></div>
<div class="row"><div class="col-sm-3"><div class="box-colored">3</div></div><div class="col-sm-9"><div class="box-colored">9</div></div></div>
<div class="row"><div class="col-sm-4"><div class="box-colored">4</div></div><div class="col-sm-8"><div class="box-colored">8</div></div></div>
<div class="row"><div class="col-sm-5"><div class="box-colored">5</div></div><div class="col-sm-7"><div class="box-colored">7</div></div></div>
<div class="row"><div class="col-sm-6"><div class="box-colored">6</div></div><div class="col-sm-6"><div class="box-colored">6</div></div></div>
<div class="row"><div class="col-sm-12"><div class="box-colored">12</div></div></div>
<div class="row"><div class="col-sm"><div class="box-colored">fluid</div></div><div class="col-sm"><div class="box-colored">fluid</div></div></div>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>The grid system's basic layout is composed of three components, presented below in the order they should be added to the DOM tree:</p>
<ol>
<li>The grid's <code>.container</code> is the outermost layer of your grid system. It is a fluid container that wraps the flexible grid system inside it.</li>
<li>Inside the container, <code>.row</code>s are added to specify each row of the grid layout. Rows serve to provide you with a simple basis for your layout's columns.</li>
<li>Finally, inside the rows, <code>.col-</code> elements are added for the columns. The columns are a little bit more complex than the container and rows, as they are what makes the layout respond to changes. There are two basic ways to define a column for your layout:
<ul>
<li>using <code>.col-<span class="fore-primary">SCR_SZ</span></code> to specify fluid columns, replacing <code><span class="fore-primary">SCR_SZ</span></code> with one of the available screen size names (<code><span class="fore-tertiary">sm</span></code> for smaller screens, <code><span class="fore-tertiary">md</span></code> for medium-sized screens or <code><span class="fore-tertiary">lg</span></code> for larger screens).</li>
<li>using <code>.col-<span class="fore-primary">SCR_SZ</span>-<span class="fore-secondary">COL_WD</span></code> to specify columns with fixed width, replacing <code><span class="fore-primary">SCR_SZ</span></code> with one of the available screen size names and <code><span class="fore-secondary">COL_WD</span></code> with a number from <code>1</code> to <code>12</code> specifying the width of the column (<code>1</code> meaning 1/12 of the width of the row and <code>12</code> meaning 100% of the width of the row).</li>
</ul>
</li>
</ol>
<h3>Sample code</h3>
<p>The sample code is a bit lengthy, so we hid it by default to make it easier for mobile device users to read this page. Click or tap on <strong>Show sample code</strong> below to see the code sample for this example. Also, the example presented showcases the grid system's syntax for smaller screens, but you can do the same thing for any screen size.</p><br>
<div class="container"><div class="row"><div class="tabs stacked"">
<input type="checkbox" id="grid-base-sample" autocomplete="off">
<label for="grid-base-sample">Show sample code</label>
<div>
<pre>&lt;div class=&quot;container&quot;&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-1&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-11&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-2&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-10&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-3&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-9&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-4&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-8&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-5&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-7&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-6&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-6&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-12&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
</div>
</div></div></div><br>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li><strong>mini.css</strong> uses a mobile-first approach in its grid system. This means that specifying a layout for smaller device sizes will apply the same layout on medium-sized and larger screens, so you do not have to rewrite the same layout for all three screen sizes. However, if you want to change the layout on different screen sizes, check the section below.</li>
<li>The <strong>grid</strong> module is compatible with modern browsers, but might not display properly in older browsers.</li>
<li>The specific breakpoints for small, medium and large screen sizes are as follows:
<ul>
<li><strong>small</strong>: less than <code>768px</code> wide</li>
<li><strong>medium</strong>: more than or equal to <code>768px</code> wide but less than <code>1280px</code> wide</li>
<li><strong>large</strong>: <code>1280px</code> wide or more</li>
</ul>
</li>
<li>Fluid columns can be used for sizes that are not of the form <code>100%/12&times;<span class="fore-tertiary">X</span></code> where <code><span class="fore-tertiary">X</span></code> an integer value between <code>1</code> and <code>12</code>. For example, if you have 7 <code>.col-sm</code> elements in one row, each of the elements will have a width of 1/7th the width of the row.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6 col-lg-4">
<pre>&lt;div class=&quot;col-sm&quot;&gt;
&lt;div class=&quot;container&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
<span class="fore-tertiary">&lt;!-- or --&gt;</span>
&lt;div class=&quot;col-sm&quot;&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;A column can contain a container or a row inside it. The container can also be skipped if inside a column, so you only need to add a row.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal col-lg-4 col-lg-last">
<pre>&lt;div class=&quot;col-sm&quot;&gt;
&lt;div class=&quot;col-sm&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid using columns inside columns without a row wrapping them. Either make the outer column a row in itself or wrap the inside columns in a row.</p>
</div>
<div class="col-sm-12 col-md-6 col-lg-4">
<pre>&lt;div class=&quot;col-sm row&quot;&gt;
&lt;div class=&quot;col-sm-6&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-6&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;A column can also be a row at the same time, if you want to include sub-columns inside it. You can make the same element both a column in its own row and a row for its containing columns. The same idea can be applied for the container. Containers can, however, be omitted, when already inside a grid.</p>
<p></p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal col-lg-4 col-lg-last">
<pre>&lt;div class=&quot;row&quot;&gt;
&lt;p&gt;Content without columns...&lt;/p&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid using rows with content inside that is not wrapped in columns. Try to use a single <code>.col-sm</code> to wrap the content inside these, otherwise there might be unexpected behavior.</p>
</div>
<div class="col-sm-12 col-md-6 col-lg-4">
<pre>&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm&quot;&gt;
&lt;div&gt;
&lt;div class=&quot;col-sm-4&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
<span class="fore-tertiary">&lt;!-- or --&gt;</span>
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-12&quot;&gt;
&lt;div&gt;
&lt;div class=&quot;col-sm-12&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;Mix fluid columns with fixed, if you like. Fluid columns will adapt to the size of the container left for them. You can also use columns with a total size of more than <code>12</code>, meaning with a total width of over 100%. The remaining content will flow below the rest, allowing you to specify multiple blocks of content inside the same row if you need to.</p>
<p></p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal col-lg-4 col-lg-last">
<pre>&lt;div class=&quot;container&quot;&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm&quot;&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;p&gt;Normal paragraph.&lt;/p&gt;
&lt;/div&gt;
<span class="fore-secondary">&lt;!-- or --&gt;</span>
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm&quot;&gt;
&lt;/div&gt;
&lt;p&gt;Normal paragraph.&lt;/p&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid mixing rows and columns with normal content that is not wrapped on the respective level of the grid system. Always wrap content inside the proper containers (container, row or column) in your grid layout.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Screen-specific layouts</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div class="container">
<div class="row"><div class="col-sm"><h4>Small screen layout</h4><hr></div></div>
<div class="row"><div class="col-sm"><div class="box-colored"></div></div></div>
<div class="row"><div class="col-sm-12"><div class="box-colored red" style="height: 40px;"></div></div><div class="col-sm-12"><div class="box-colored green" style="height: 60px;"></div></div><div class="col-sm-12"><div class="box-colored red" style="height: 40px;"></div></div></div>
<div class="row"><div class="col-sm"><div class="box-colored"></div></div></div>
<div class="row"><div class="col-sm"><h4>Medium/Large screen layout</h4><hr></div></div>
<div class="row"><div class="col-sm"><div class="box-colored"></div></div></div>
<div class="row"><div class="col-sm-3"><div class="box-colored red" style="height: 100px;"></div></div><div class="col-sm-5"><div class="box-colored green" style="height: 100px;"></div></div><div class="col-sm-4"><div class="box-colored red" style="height: 100px;"></div></div></div>
<div class="row"><div class="col-sm"><div class="box-colored"></div></div></div>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>You can specify different layouts for your pages and web apps, using the grid system's columns. To do this add classes to your columns for different screen sizes, using either the fluid column syntax (<code>.col-<span class="fore-primary">SCR_SZ</span></code>) or the fixed width column syntax (<code>.col-<span class="fore-primary">SCR_SZ</span>-<span class="fore-secondary">COL_WD</span></code>) or even both.</p>
<h3>Sample code</h3>
<pre>&lt;div class=&quot;container&quot;&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-12 col-md-3 col-lg-2&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-12 col-md-5 col-lg-7&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-12 col-md-4 col-lg-3&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</pre><br>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>Leaving a column's size unspecified for a resolution will use the style applied for the previous largest resolution recursively.</li>
<li>Changing the layout for different screen sizes can sometimes require complex content realignment, offsetting and reordering. For these features, check the sections below.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-12 col-md-6&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-12 col-md-6&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can radically change the layout of your content for different displays. Laying out your content vertically in <code>.col-sm-12</code>s for small devices and then compacting it to <code>.col-md-6</code>s for medium displays is pretty common. If your columns exceed a total size of <code>12</code> on some displays, they will wrap accordingly, so do not worry.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-12 col-md-6&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-12 col-md-6&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;If you want to place two columns side by side on some displays, but not on others (e.g. placing them vertically on smaller displays, then next to each other on medium-sized or larger displays), place them in one row, not multiple, otherwise you will not achieve the desired effect.</p>
</div>
<div class="col-sm-12 col-md-6">
<pre>&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm col-lg-3&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-6 col-md-8&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;Specify only the screen-specific column sizes that you need. You can omit the medium-sized screens' size from a column if its layout on smaller screens is fluid or should be the same as in medium-sized displays. Or, if your larger screen layout is the same as your medium-sized screen layout, you can omit the class for the larger screen.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-md&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-lg&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Never omit the class needed for the smallest screen size you have (<code>.col-sm</code> or <code>.col-sm-<span class="fore-secondary">COL_WD</span></code>), otherwise the column's layout on smaller displays might behave unexpectedly. You can, however, omit layout for the other two screen sizes if you want.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Column offsets</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div class="container">
<br>
<div class="row"><div class="col-sm-10 col-sm-offset-1"><div class="box-colored">size = 10, offset = 1</div></div></div>
<div class="row"><div class="col-sm col-sm-offset-2"><div class="box-colored">fluid, offset = 2</div></div></div>
<div class="row"><div class="col-sm-6 col-sm-offset-3"><div class="box-colored">size = 6, offset = 3</div></div></div>
<div class="row"><div class="col-sm-8 col-sm-offset-4"><div class="box-colored">size = 8, offset = 4</div></div></div>
<div class="row">
<div class="col-sm-5 col-sm-offset-1"><div class="box-colored">size = 5, offset = 1</div></div>
<div class="col-sm-5 col-sm-offset-1"><div class="box-colored">size = 5, offset = 1</div></div>
</div>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>If you want to move columns to the right, you can use the offset classes on your columns. Offset classes use the <code>.col-<span class="fore-primary">SCR_SZ</span>-offset-<span class="fore-secondary">COL_WD</span></code> syntax, where <code><span class="fore-primary">SCR_SZ</span></code> is one of the available screen size names (<code><span class="fore-tertiary">sm</span></code>, <code><span class="fore-tertiary">md</span></code> or <code><span class="fore-tertiary">lg</span></code>) and <code><span class="fore-secondary">COL_WD</span></code> a number from <code>0</code> to <code>11</code> specifying the width of the column's offset. Offsets can also be used in combination with screen-specific layouts and column sizes, providing you with greater flexibility when spacing out your content.</p>
<h3>Sample code</h3>
<p>The example presented below showcases the grid system's offsetting syntax for smaller screens, but you can do the same thing for any screen size.</p>
<pre>&lt;div class=&quot;container&quot;&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-10 col-sm-offset-1&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm col-sm-offset-2&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-6 col-sm-offset-3&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-8 col-sm-offset-4&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-5 col-sm-offset-1&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-5 col-sm-offset-1&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</pre><br>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>Columns with offsets and columns without offsets can be mixed for better results. In fact, we strongly suggest you try that.</li>
<li>Remember to specify a basic layout and/or screen specific layouts in addition to the offset classes.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm col-md-offset-1 col-md-5 col-lg-4&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm col-md-5 col-lg-4 col-lg-offset-2&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can specify offset classes when you need them and omit them otherwise. This means that, if you want to offset a column only on a medium-sized or a larger screen, you can just specify the offset for that specific screen. Specifying an offset for a smaller screen, however, will apply it to medium-sized and larger screens as well, medium-sized screen offsets will apply to larger screens etc. similar to how the layout system works.</p>
</div>
<div class="col-sm-12 col-md-6">
<pre>&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm col-md-10 col-offset-1 col-lg col-lg-offset-0&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;To remove a previously applied offset from a column (i.e. one applied from the layout from a smaller screen size) or to make sure no offsets are active on a column, you can use the <code>.col-<span class="fore-primary">SCR_SZ</span>-offset-0</code> class, replacing <code><span class="fore-primary">SCR_SZ</span></code> with the desired screen size, effectively resetting all offsets.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Column reordering</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div class="container">
<div class="row"><div class="col-sm"><h4>Small screen layout</h4><hr></div></div>
<div class="row">
<div class="col-sm col-sm"><div class="box-colored">&nbsp;</div></div>
<div class="col-sm col-sm"><div class="box-colored red">normal</div></div>
<div class="col-sm col-sm"><div class="box-colored">&nbsp;</div></div>
</div>
<div class="row"><div class="col-sm"><h4>Medium screen layout</h4><hr></div></div>
<div class="row">
<div class="col-sm col-sm"><div class="box-colored red">first</div></div>
<div class="col-sm col-sm"><div class="box-colored">&nbsp;</div></div>
<div class="col-sm col-sm"><div class="box-colored">&nbsp;</div></div>
</div><div class="row"><div class="col-sm"><h4>Large screen layout</h4><hr></div></div>
<div class="row">
<div class="col-sm col-sm"><div class="box-colored">&nbsp;</div></div>
<div class="col-sm col-sm"><div class="box-colored">&nbsp;</div></div>
<div class="col-sm col-sm"><div class="box-colored red">last</div></div>
</div>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>Finally, if you want to reorder your columns, you can do that to some extent using the <code>.col-<span class="fore-primary">SCR_SZ</span>-first</code>, <code>.col-<span class="fore-primary">SCR_SZ</span>-last</code> and <code>.col-<span class="fore-primary">SCR_SZ</span>-normal</code> classes to your columns, replacing <code><span class="fore-primary">SCR_SZ</span></code> with one of the available screen size names (<code><span class="fore-tertiary">sm</span></code>, <code><span class="fore-tertiary">md</span></code> or <code><span class="fore-tertiary">lg</span></code>). These classes will change the ordering of your columns appropriately to allow you to move content around any way you want (e.g. moving a navigation sidebar from the left of the content on larger displays to the end of the content on smaller displays).</p>
<h3>Sample code</h3>
<pre>&lt;div class=&quot;container&quot;&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm col-md-last col-lg-normal&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-first col-md-normal&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm col-md-first col-lg-normal&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</pre><br>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>Columns are ordered by default in order of appearance. You should only apply column reordering classes to the columns you want to reorder on the screen-specific layouts you need them.</li>
<li>Remember to specify a basic layout and/or screen specific layouts in addition to the column reordering classes.</li>
<li>Column reordering is applied from smaller to larger screens, similar to how column layout and offsetting work.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm col-md-last&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm col-md-last&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can use multiple <code>.col-<span class="fore-primary">SCR_SZ</span>-first</code>s and <code>.col-<span class="fore-primary">SCR_SZ</span>-last</code>s, replacing <code><span class="fore-primary">SCR_SZ</span></code> with the desired screen size, in the same row for the same screen size. If you specify more than one column to be first or last, the columns with the same order will be placed at the beggining or end of the row and the order between them will be determined based on their order of appearance in the DOM tree afterwards.</p>
</div>
<div class="col-sm-12 col-md-6">
<pre>&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-last col-md-normal&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;To remove a previously applied reorder from a column (i.e. one applied from the layout from a smaller screen size) or to make sure no reordering is active on a column, you can use the <code>.col-<span class="fore-primary">SCR_SZ</span>-normal</code> class, replacing <code><span class="fore-primary">SCR_SZ</span></code> with the desired screen size, effectively resetting all reorders. You do not, however, need to add this class to all other columns or use it when there are no reorders applied.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row" style="padding-bottom: 20px; padding-top:20px;">
<div class="col-sm">
<p>If you want to learn more about <strong>mini.css</strong>'s modules, go back to the <a href="modules.html">modules page</a> and choose another module to see its documentation.</p>
</div>
</div>
</div></main>
<!-- End of page content-->
<footer><strong>mini.css</strong> was designed and built with <i class="fa fa-heart-o" aria-hidden="true"></i> by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</footer>
</body>
</html>

View File

@@ -1,122 +1,276 @@
<!DOCTYPE html>
<html>
<head>
<title>mini.css - A minimal Sass-y responsive mobile-first style-agnostic CSS framework</title>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<title>mini.css - Minimal, responsive, style-agnostic CSS toolkit</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - A minimal Sass-y responsive mobile-first style-agnostic CSS framework">
<meta name="keywords" content="mini, mini.css, CSS, responsive, framework, mobile first, style agnostic, Sass">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<link rel="icon" type="image/png" href="favicon.png">
<!-- For local testing only -->
<!-- <link rel="stylesheet" href="../flavors/mini-default.min.css"> -->
<!-- Old link -->
<!-- <link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/6b3db97a893cf4e7ec1b9f5aa40fc5957b1b94fc/flavors/mini-default.min.css"> -->
<!-- Correct link -->
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/1.0.0/flavors/mini-default.min.css">
<meta property="og:title" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta property="og:type" content="website"/>
<meta property="og:description" content="mini.css is a tiny CSS toolkit designed to build quick, modern and responsive websites."/>
<meta property="og:image" content="page_thumb.PNG">
<meta property="og:url" content="https://chalarangelo.github.io/mini.css/">
<link rel="icon" type="image/png" href="favicon.png">
<style>
.footer{background-color:#272727; color:#ddd;}
.footer a, .footer a:hover, .footer a:visited, .footer a:visited:hover, .footer a:active, .footer a:visited:active{color: #fff;}
.footer a:hover{text-decoration: underline;}
/* Classes and ids used in multiple pages - page top and utilities */
#header-logo {
display: inline; height: 28px; width: 28px; margin-top: 4px; background: #558b2f; border-radius: 1px;
padding: 4px;
}
#top-logo {
display: inline-block; height: 66px; width: 70px; margin: 64px auto -30px; border-radius: 1px;
background: #558b2f; padding: 8px; padding-top: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
#top-heading {
color: #f5f5f5; font-size: 2.4em; text-shadow: 0 1px 2px rgba(0,0,0,0.35); margin-bottom: -8px;
}
#top-version-tag {
padding: 4px 6px; font-size: 0.85em; font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
.box-centered { text-align: center; }
.box-colored { background: #0277bd; border-radius: 2px; padding: 14px; margin-bottom: 8px; min-height: 14px;}
.box-colored.red { background: #e53935; }
.box-centered > .card.fluid {
-webkit-box-pack: start;
-webkit-box-align: start;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-self: auto;
align-self: auto;
}
[class^='col-'] .card.fluid { margin: 2px 0 20px; }
/* Local classes and ids for this page */
.fore-primary { color: #0d47a1; font-family: monospace, monospace; }
.fore-secondary { color: #b71c1c; font-family: monospace, monospace; }
.fore-tertiary { color: #1b5e20; font-family: monospace, monospace; }
</style>
</head>
<body>
<input type="checkbox" class="hidden" id="nav-toggle" autocomplete="off" class="hidden">
<div class="nav fixed">
<a href="https://chalarangelo.github.io/mini.css"><span class="logo">&nbsp;<img src="favicon.png" style="height: 34px; width: auto; display: inline-block; vertical-align: middle;">&nbsp;mini.css&nbsp;</span></a>
<ul>
<li><a href="https://chalarangelo.github.io/mini.css/#why-mini-css" class="link">Introduction</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/#modules" class="link">Module overview</a></li>
<li><label class="link dropdown" for="menu-drop1">Module demos</label></li>
</ul>
<input type="checkbox" id="menu-drop1" class="dropdown" autocomplete="off"><div>
<ul>
<li><a href="https://chalarangelo.github.io/mini.css/modules#base" class="link">Base</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#grid" class="link">Responsive Grid</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#nav" class="link">Navigation</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#dropdown" class="link">Dropdowns</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#tab" class="link">Tabs</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#table" class="link">Tables</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#form" class="link">Forms</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#button" class="link">Buttons</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#label" class="link">Labels</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#modal" class="link">Modals</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#collapse" class="link">Collapse</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#progress" class="link">Progress Bars</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#carousel" class="link">Carousel</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#utility" class="link">Utilities &amp; Helper Classes</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#utility-extra" class="link">Utilities &amp; Experimental Classes</a></li>
</ul>
<body>
<header>
<a href="index.html"><img class="logo" src="mini-logo.svg" id="header-logo"></a><div style="display: inline; overflow: auto;">
<a href="index.html" class="button">Introduction</a>
<a href="modules.html" class="button">Modules</a>
<a href="flavors.html" class="button">Flavors</a>
<a href="customization.html" class="button">Customization</a>
<a href="quick_reference.html" class="button">Quick Reference</a>
<a href="https://github.com/Chalarangelo/mini.css" class="button">Github</a>
</div>
</div>
<label for="nav-toggle"></label>
<br>
<div class="grid-container">
</header>
<div class="container" style="height: 320px; background: -webkit-linear-gradient(#455a64,#263238); background: linear-gradient(#455a64,#263238); box-shadow: 0 3px 9px rgba(0,0,0,0.26), 0 3px 6px rgba(0,0,0,0.35);">
<div class="row">
<div class="col xs-no md-1"></div>
<div class="col xs-12 md-10">
<h1>mini.css<small> a minimal Sass-y responsive mobile-first style-agnostic CSS framework</small></h1>
<p>If you want to create your own flavor, get involved or report an issue, head over to <strong>mini.css</strong>'s <a href="https://github.com/Chalarangelo/mini.css">Github repository</a> or the <a href="https://github.com/Chalarangelo/mini.css/wiki">wiki</a>. If you want to give <strong>mini.css</strong> a try using the default flavor, paste the following code inside your HTML page's <code>&lt;head&gt;</code> tag:</p>
<pre style="overflow: auto;">&lt;link rel=&quot;stylesheet&quot; href=&quot;https://cdn.rawgit.com/Chalarangelo/mini.css/1.0.0/flavors/mini-default.min.css&quot;&gt;</pre>
<br>
<h2 id="why-mini-css">Why mini.css?</h2><hr>
<ul>
<li><strong>Size matters!</strong> - The key focus of <strong>mini.css</strong> is to provide developers with a very light framework to build their pages with. To accomplish this, we stripped down most of the commonly-used components to their essentials, utilising the magic of CSS. By building lighter components, using only CSS, we made <strong>mini.css</strong> really tiny, just under 5KB for the default flavor.</li>
<li><strong>Easily customize your pages!</strong> - <strong>mini.css</strong> does not rely on a huge monolithic CSS file to do everything. In fact, we split the framework into smaller modules using Sass(SCSS), so you can easily distinguish what pieces you want in your final stylesheet. But that's not all! Every single detail of the provided modules can be changed, from colors and border styles to class names and structure. It's all really simple and you can do it without a lot of CSS or Sass knowledge. These customized stylesheets are called <strong>flavors</strong> and are one of the key differences between <strong>mini.css</strong> and other frameworks.</li>
<li><strong>We are mobile-friendly!</strong><sup>*</sup> - That's right! We built <strong>mini.css</strong> from the ground up to support mobile devices as best as possible and be responsive. All of this functionality can be fully customized to suit your end-users.</li>
<li><strong>No Javascript!</strong> - As much as we all love Javascript, we tried to keep all of the modules in <strong>mini.css</strong> pure CSS. This means no dependencies on Javascript libraries or excessive code for events you might never use.</li>
</ul>
<small>(*): We do not want to claim that any website will ever instantly work 100% the way you want on mobile, but mini.css eliminates a lot of the tedious work of making your websites mobile-friendly, so you can focus on the interesting parts that actually need your attention.</small>
<h2 id="modules">What does it contain?</h2>
<p><strong>mini.css</strong> is split up into modules, each with a specific focus or set of components. These modules are categorized under core modules and extra modules. We suggest that you use most of the core modules in your projects, as most projects can make good use of them. As for the extra modules, we suggest you carefully pick the ones you need for your project. Below is a quick overview of all the modules:</p>
<ul>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#base">Core : Base</a></h3><p>A modified version of <a href="https://necolas.github.io/normalize.css/">normalize.css</a> combined with a long list of variables produces a customized base for your projects along with typography rules and colors.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#grid">Core : Responsive Grid</a></h3><p>A customizable reponsive grid that lets you build pages that look great on all devices wih minimal tweaking..</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#nav">Core : Navigation</a></h3><p>A customizable responsive navigation bar for your pages.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#dropdown">Extra : Navigation - Dropdown</a></h3><p>The navigation system can easily be extended using the dropdown component.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#tab">Extra : Navigation - Tabs</a></h3><p>If you would rather use tabs instead of the usual navigation bar, you can use this module to enable tabbed navigation.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#table">Core : Tables</a></h3><p>Give a fresh style to your tables without overloading your page.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#form">Core : Forms</a></h3><p>Simple, elegant and light forms that will work well and give feedback to the user.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#button">Core : Buttons</a></h3><p>Tiny button styles that allow you to beautify your buttons, labels and links.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#label">Extra : Labels &amp; Badges</a></h3><p>Small badges and labels to provide your user's with all the info they need.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#modal">Extra : Modals</a></h3><p>Modal dialog prompts to notify your users the easy way.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#collapse">Extra : Collapse</a></h3><p>Hide and show text using customizable collapse buttons.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#progress">Extra : Progress Bars</a></h3><p>A simple module that allows you to create progess bars for your pages.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#carousel">Extra : Carousel</a></h3><p>Really light and customizable imaage slideshow for all your showcase needs.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#utility">Core : Utilities &amp; Helper Classes</a></h3><p>Classes for generic borders, image thumbnails, contextual text coloring, utility buttons and more.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#utility-extra">Extra : Utilities &amp; Experimental Classes</a></h3><p>Breadcrumbs, containers, panels, alerts, popovers, button groups and more.</p></li>
</ul>
<div class="col-sm">
<div class="box-centered">
<img src="mini-logo.svg" id="top-logo">
<h1 id="top-heading"><span style="font-size: 1.35em;">m</span>ini<span style="font-size:0.65em; color: #558b2f;">.css</span></h1>
<mark class="tertiary" id="top-version-tag">v2.0</mark>
</div>
</div>
<div class="row footer">
<div class="col xs-no md-1"></div>
<div class="col xs-12 md-10 footer">
<p style="padding-top: 10px;"><strong>mini.css</strong> was designed and built by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</p>
</div>
</div>
</div>
</div>
<!-- Insert your page content here-->
<main><div class="container">
<div class="row" style="padding-top: 40px;">
<div class="col-sm-12 col-md box-centered row">
<div class="card fluid">
<div class="section">
<h2>Minimal<small>Size matters!</small></h2><br>
<i class="fa fa-compress fa-4x" aria-hidden="true"></i>
<br><br>
<p><strong>mini.css</strong> aims to provide as much functionality as possible in about 5KB gzipped. This very small footprint means that your websites and web applications will load faster, while still looking great utilising the modern components we provide!</p><br>
</div>
</div>
</div>
<div class="col-sm-12 col-md box-centered row">
<div class="card fluid">
<div class="section">
<h2>Responsive<small>Think mobile!</small></h2><br>
<i class="fa fa-mobile fa-4x" aria-hidden="true"></i>
<br><br>
<p><strong>mini.css</strong> is crafted with both desktops and mobile devices in mind. All of its components are well-tested on different devices and will respond to any changes in the viewport, allowing for an experience tailored to each user's device!</p><br>
</div>
</div>
</div>
<div class="col-sm-12 col-md box-centered row">
<div class="card fluid">
<div class="section">
<h2>Style-agnostic<small>Infinitely customizable!</small></h2><br>
<i class="fa fa-paint-brush fa-4x" aria-hidden="true"></i>
<br><br>
<p><strong>mini.css</strong> provides you with a customizable flavor system, allowing you to be a designer without all the hard work. This way you can create your own custom design and personalize your websites any way you want!</p><br>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<h2>Setup &amp; usage</h2>
<p>You can import the default flavor of <strong>mini.css</strong> in your webpage by simply adding the following reference inside your HTML page's <code>&lt;head&gt;</code> tag:</p>
<pre>&lt;<span class="fore-tertiary">link</span> <span class="fore-secondary">rel</span>=<span class="fore-primary">&quot;stylesheet&quot;</span> <span class="fore-secondary">href</span>=<span class="fore-primary">&quot;https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css&quot;</span>&gt;</pre><br>
<p>If you want to download the package using your favorite package manager, you can use either <strong>Bower</strong> or <strong>NPM</strong>:</p>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre><span class="fore-tertiary">bower install</span> <span class="fore-primary">mini.css</span></pre>
</div>
<div class="col-sm-12 col-md-6">
<pre><span class="fore-tertiary">npm install</span> <span class="fore-primary">mini.css</span></pre>
</div>
</div><br>
<p>If you are interested in tinkering with the flavor files and cooking your own flavor, check out the <a href="customization.html">Customization</a> page for information, tips on how to get started and general guidelines.</p>
<hr>
</div>
<div class="row">
<div class="col-sm-12">
<h2>Quick overview</h2>
<p>Take a couple of minutes to learn how <strong>mini.css</strong> differs from all those other UI toolkits (Bootstrap, Semantic UI etc):</p>
<table>
<caption>Toolkit file size comparison</caption>
<thead>
<tr>
<th>Name</th>
<th>Version</th>
<th>Size (uncompressed)</th>
<th>Size (minified)</th>
<th>Size (gzipped)</th>
</tr>
</thead>
<tbody>
<tr>
<td data-label="Name">Bootstrap</td>
<td data-label="Version"><a href="https://github.com/twbs/bootstrap/blob/0b9c4a4007c44201dce9a6cc1a38407005c26c86/dist/css/bootstrap.css">v3.3.7</a></td>
<td data-label="Size (uncompressed)">143 KB</td>
<td data-label="Size (minified)">117 KB</td>
<td data-label="Size (gzipped)">20 KB</td>
</tr>
<tr>
<td data-label="Name">Material Framework</td>
<td data-label="Version"><a href="https://github.com/nt1m/material-framework/blob/c5f7fed174686118dded31aecca311d4cc9d8b07/css/material.css">v3.0</a></td>
<td data-label="Size (uncompressed)">114 KB</td>
<td data-label="Size (minified)">90 KB</td>
<td data-label="Size (gzipped)">18 KB</td>
</tr>
<tr>
<td data-label="Name">mini.css</td>
<td data-label="Version"><a href="https://github.com/chalarangelo/mini.css/blob/v2.0/dist/css/mini-default.css">v2.0</a></td>
<td data-label="Size (uncompressed)">47 KB</td>
<td data-label="Size (minified)">36 KB</td>
<td data-label="Size (gzipped)">7 KB</td>
</tr>
<tr>
<td data-label="Name">Semantic UI</td>
<td data-label="Version"><a href="https://github.com/Semantic-Org/Semantic-UI/blob/0b1b59b0e1c780e842820df5c1904a162034812c/dist/semantic.css">v2.2.6</a></td>
<td data-label="Size (uncompressed)">730 KB</td>
<td data-label="Size (minified)">550 KB</td>
<td data-label="Size (gzipped)">95 KB</td>
</tr>
<tr>
<td data-label="Name">Zurb Foundation</td>
<td data-label="Version"><a href="https://github.com/zurb/foundation-sites/blob/ab172838d6de406204956015c9fd393c5a526e0e/dist/foundation.css">v3.0</a></td>
<td data-label="Size (uncompressed)">90 KB</td>
<td data-label="Size (minified)">64 KB</td>
<td data-label="Size (gzipped)">12 KB</td>
</tr>
</tbody>
</table><br>
<p><mark class="secondary" style="font-size: 1.4em; padding: 3px 10px;">!</mark>&nbsp;The above comparison takes into account only the CSS files of each framework. <strong>mini.css</strong>'s size is an approximation due to the nature of its flavor system. The calculated results were produced using <a href="http://refresh-sf.com/">Refresh-SF</a>.</p>
<br>
</div>
<div class="col-sm-12 col-md">
<h3>Module list</h3>
<ul>
<li><strong>Core</strong> - Resets, typography rules and fixes</li>
<li><strong>Grid</strong> - Powerful, responsive flexbox-based grid</li>
<li><strong>Navigation</strong> - Common elements for navigation</li>
<li><strong>Input Control</strong> - Forms, buttons and inputs</li>
<li><strong>Table</strong> - Modern, responsive tables</li>
<li><strong>Card</strong> - Sleek, modern content containers</li>
<li><strong>Tab</strong> - Responsive tabs and accordions</li>
<li><strong>Contextual</strong> - Contextual highlights and alerts</li>
<li><strong>Progress</strong> - Modern progress bars and loaders</li>
<li><strong>Utility</strong> - Utility and helper classes</li>
</ul>
</div>
<div class="col-sm-12 col-md">
<h3>Why does <strong>mini.css</strong> have so few modules?</h3>
<p>Modules are what make toolkits so powerful, by giving developers the essential components they need to structure and style their websites. <strong>mini.css</strong> simplifies the crafting and learning process for new developers by providing a handful of very powerful modules that can do many different things. This way, new developers will only have to learn a few different HTML structures and patterns, while having the ability to build a lot of interesting things with them. For example, cards can be used for almost any type of layout and can be customized to behave exactly as the developer needs them to. Tabs, on the other hand, are very responsive on mobile, collapsing to a stack below a certain width, but they can also be forced into a stack, allowing accordions and collapses to be built using the same building block as tabs.</p>
</div>
</div>
<div class="col-sm-12">
<table>
<caption>Browser support</caption>
<thead>
<tr>
<th>Browser</th>
<th>Not supported</th>
<th>Partially supported</th>
<th>Fully supported</th>
</tr>
</thead>
<tbody>
<tr>
<td data-label="Browser"><i class="fa fa-internet-explorer" aria-hidden="true" style="color: #1565c0;"></i>&nbsp;Internet Explorer</td>
<td data-label="Not supported">8-</td>
<td data-label="Partially supported">9-10</td>
<td data-label="Fully supported">11+</td>
</tr>
<tr>
<td data-label="Browser"><i class="fa fa-edge" aria-hidden="true" style="color: #0d47a1;"></i>&nbsp;Edge</td>
<td data-label="Not supported">n/a</td>
<td data-label="Partially supported">n/a</td>
<td data-label="Fully supported">12+</td>
</tr>
<tr>
<td data-label="Browser"><i class="fa fa-firefox" aria-hidden="true" style="color: #bf360c;"></i>&nbsp;Firefox</td>
<td data-label="Not supported">21-</td>
<td data-label="Partially supported">22-27</td>
<td data-label="Fully supported">28+</td>
</tr>
<tr>
<td data-label="Browser"><i class="fa fa-chrome" aria-hidden="true" style="color: #ff8f00;"></i>&nbsp;Chrome</td>
<td data-label="Not supported">20-</td>
<td data-label="Partially supported">n/a</td>
<td data-label="Fully supported">21+</td>
</tr>
<tr>
<td data-label="Browser"><i class="fa fa-safari" aria-hidden="true" style="color: #0277bd;"></i>&nbsp;Safari</td>
<td data-label="Not supported">6-</td>
<td data-label="Partially supported">n/a</td>
<td data-label="Fully supported">6.1+</td>
</tr>
<tr>
<td data-label="Browser"><i class="fa fa-opera" aria-hidden="true" style="color: #b71c1c;"></i>&nbsp;Opera</td>
<td data-label="Not supported">11.5-</td>
<td data-label="Partially supported">12.1-16</td>
<td data-label="Fully supported">17+</td>
</tr>
<tr>
<td data-label="Browser"><i class="fa fa-android" aria-hidden="true" style="color: #827717;"></i>&nbsp;Android Browser</td>
<td data-label="Not supported">4.3-</td>
<td data-label="Partially supported">n/a</td>
<td data-label="Fully supported">4.4+</td>
</tr>
</tbody>
</table><br>
<p><mark class="secondary" style="font-size: 1.4em; padding: 3px 10px;">!</mark>&nbsp;Due to the way <strong>mini.css</strong> is crafted, some legacy browsers are not supported anymore and some others are partially supported. This could be a dealbreaker for some developers, however most legacy browsers will display a less feature-rich and modern website. Apart from the table above, note that some mobile browsers like Opera Mini, IE Mobile and UC Browser for Android are officially supported, but some features may not be displayed properly or behave as expected due to the browsers themselves.</p>
<hr>
</div>
<div class="row" style="padding-bottom: 40px;">
<div class="col-sm">
<h2>Getting started</h2>
<p>If you are still here after reading this far, we will assume you are interested or at least curious. Based on that assumption, here are a few links to help get you started:</p>
<ul>
<li>For a quick guide on getting started, you might wanna take a look at the available <a href="modules.html">modules</a> list and the tutorials provided for each one!</li>
<li>If you are familiar with <strong>mini.css</strong> and want a cheat sheet or quick reference guide, check the <a href="quick_reference.html">quick reference</a> page!</li>
<li><strong>mini.css</strong> comes with a few nice pre-built customizable <a href="flavors.html">flavors</a>. See which one of them better suits your needs!</li>
<li>If you are more experienced or demanding, you can always take a look at the <a href="customization.html">customization</a> section to cook up a flavor of your own custom-tailored to your needs!</li>
</ul>
</div>
</div>
</div></main>
<!-- End of page content-->
<footer><strong>mini.css</strong> was designed and built with <i class="fa fa-heart-o" aria-hidden="true"></i> by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</footer>
</body>
</html>

529
docs/input_control.html Normal file
View File

@@ -0,0 +1,529 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<title>mini.css - Input Control</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass, module, input, control, form, button">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<meta property="og:title" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta property="og:type" content="website"/>
<meta property="og:description" content="mini.css is a tiny CSS toolkit designed to build quick, modern and responsive websites."/>
<meta property="og:image" content="page_thumb.PNG">
<meta property="og:url" content="https://chalarangelo.github.io/mini.css/">
<link rel="icon" type="image/png" href="favicon.png">
<style>
/* Classes and ids used in multiple pages - page top and utilities */
#header-logo {
display: inline; height: 28px; width: 28px; margin-top: 4px; background: #558b2f; border-radius: 1px;
padding: 4px;
}
#top-logo {
display: inline-block; height: 66px; width: 70px; margin: 64px auto -30px; border-radius: 1px;
background: #558b2f; padding: 8px; padding-top: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
#top-heading {
color: #f5f5f5; font-size: 2.4em; text-shadow: 0 1px 2px rgba(0,0,0,0.35); margin-bottom: -8px;
}
#top-version-tag {
padding: 4px 6px; font-size: 0.85em; font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
.box-centered { text-align: center; }
.box-colored { background: #0277bd; border-radius: 2px; padding: 14px; margin-bottom: 8px; min-height: 14px;}
.box-colored.red { background: #e53935; }
.box-centered > .card.fluid {
-webkit-box-pack: start;
-webkit-box-align: start;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-self: auto;
align-self: auto;
}
[class^='col-'] .card.fluid { margin: 2px 0 20px; }
/* Local classes and ids for this page */
.fore-primary { color: #0d47a1; font-family: monospace, monospace; }
.fore-secondary { color: #b71c1c; font-family: monospace, monospace; }
.fore-tertiary { color: #1b5e20; font-family: monospace, monospace; }
.col-sm-12.col-sm-last.col-lg-4.col-lg-normal {
box-sizing: border-box;
border-right: 1px solid #bdbdbd;
}
@media (max-width: 767px){
.col-sm-12.col-sm-last.col-lg-4.col-lg-normal {
border: 0;
border-top: 1px solid #bdbdbd;
}
}
.box-colored.green { background: #689f38; }
.do {
border-top: 15px solid #689f38;
padding-top: 10px;
}
.dont {
border-top: 15px solid #e53935;
padding-top: 10px;
}
.box-colored {
color: #f5f5f5;
}
</style>
</head>
<body>
<header>
<a href="index.html"><img class="logo" src="mini-logo.svg" id="header-logo"></a><div style="display: inline; overflow: auto;">
<a href="index.html" class="button">Introduction</a>
<a href="modules.html" class="button">Modules</a>
<a href="flavors.html" class="button">Flavors</a>
<a href="customization.html" class="button">Customization</a>
<a href="quick_reference.html" class="button">Quick Reference</a>
<a href="https://github.com/Chalarangelo/mini.css" class="button">Github</a>
</div>
</header>
<div class="container" style="height: 320px; background: -webkit-linear-gradient(#455a64,#263238); background: linear-gradient(#455a64,#263238); box-shadow: 0 3px 9px rgba(0,0,0,0.26), 0 3px 6px rgba(0,0,0,0.35);">
<div class="row">
<div class="col-sm">
<div class="box-centered">
<img src="mini-logo.svg" id="top-logo">
<h1 id="top-heading"><span style="font-size: 1.35em;">m</span>ini<span style="font-size:0.65em; color: #558b2f;">.css</span></h1>
<mark class="tertiary" id="top-version-tag">v2.0</mark>
</div>
</div>
</div>
</div>
<!-- Insert your page content here-->
<main><div class="container">
<div class="row" style="padding-top: 40px;">
<div class="col-sm">
<h1>Input Control</h1>
<p>The <strong>input_control</strong> module contains rules that affect forms, input elements, buttons, checkboxes and radio buttons. All of these elements' styles are predefined, allowing you to create modern, responsive forms quickly. Layout alternatives are also provided if you want your forms to look a certain way.</p>
<p><small>All examples showcased refer to the mini-default flavor, some class names and styles might differ based on the flavor you're using.</small></p>
<ul class="breadcrumbs"><li><a href="index.html">Home</a></li><li><a href="modules.html">Modules</a></li><li>Input Control</li></ul>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Quick overview</h2>
<p>The presentation of forms, input fields, buttons and other interactive elements is always very important for any website or app. The <strong>input_control</strong> module provides you with much needed styling improvements for all of these elements, while keeping everything simple to use and understand, as well as combine with the other modules. Forms and input elements have a clean, modern design, while some elements like checkoxes and radio buttons get a much needed facelift. Buttons have also been stylized to look the same in all browsers, while keeping their design clean and allowing for a few color and size variants. Grouping inputs and labels or buttons is also part of this module and, as always, responsiveness is an important feature. Finally, all of the components are accessible, with a few minor caveats, that are discussed in their respective section in this page.</p><br>
</div>
<div class="section">
<h2>Quick start</h2>
<p>To use the <strong>input_control</strong> module, simply include the link to the flavor you are using and start writing your HTML page as usual. One suggestion we will make is to add the following line inside your HTML page's <code>&lt;head&gt;</code> to utilize the viewport meta tag:</p><br>
<pre>&lt;<span class="fore-tertiary">meta</span> <span class="fore-secondary">name</span>=<span class="fore-primary">&quot;viewport&quot;</span> <span class="fore-secondary">content</span>=<span class="fore-primary">&quot;width=device-width, initial-scale=1&quot;</span>&gt;</pre><br>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Forms &amp; input</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-lg-4 col-lg-normal">
<form>
<fieldset>
<legend>Inline form (default style)</legend>
<div class="input-group"><label for="username">username</label> <input type="email" value="" id="username" placeholder="username">&nbsp;</div>
<div class="input-group"><label for="pwd">password</label> <input type="password" value="" id="pwd" placeholder="password"></div>
</fieldset>
</form>
<style>
.responsive-label {
align-items: center;
}
@media (min-width: 768px) {
.responsive-label .col-md-3 {
text-align: right;
}
}
</style>
<form>
<fieldset>
<legend>Aligned form (using grid)</legend>
<div class="row responsive-label">
<div class="col-sm-12 col-md-3">
<label for="number">Number</label>
</div>
<div class="col-sm-12 col-md">
<input type="number" value="4" id="number" style="width:85%;">
</div>
</div>
<div class="row responsive-label">
<div class="col-sm-12 col-md-3">
<label for="disabled">Disabled</label>
</div>
<div class="col-sm-12 col-md">
<input disabled value="disabled" id="disabled" style="width:85%;">
</div>
</div>
<div class="row responsive-label">
<div class="col-sm-12 col-md-3">
<label for="readonly">Readonly</label>
</div>
<div class="col-sm-12 col-md">
<input readonly value="readonly" id="readonly" style="width:85%;">
</div>
</div>
<div class="row responsive-label">
<div class="col-sm-12 col-md-3">
<label for="select">Select</label>
</div>
<div class="col-sm-12 col-md">
<select id="select">
<option>Apples</option>
<option>Oranges</option>
</select>
</div>
</div>
</fieldset>
</form>
</div>
<div class="col-sm-12 col-sm-first col-lg-8 col-lg-normal">
<p>Forms are structured the same way you would structure a normal form in HTML5. Simply create a root <code>&lt;form&gt;</code> element and add your <code>&lt;input&gt;</code> elements inside. Link them to <code>&lt;label&gt;</code> elements for ease of acces and you are pretty much set. We highly recommend using the <code>&lt;fieldset&gt;</code> and <code>&lt;legend&gt;</code> elements to annotate your forms as well, but you can skip them if you wish.</p>
<p>Forms are inline by default. Use the <code>.input-group</code> class on a <code>&lt;div&gt;</code> wrapping inside it an <code>&lt;input&gt;</code> and <code>&lt;label&gt;</code> pair to make sure they always display together in one line. If you want to create aligned forms with a preset layout, you can utilize the <a href="grid.html"><strong>grid</strong></a> module's rows and columns.</p>
<h3>Sample code</h3>
<pre>&lt;form&gt;
&lt;fieldset&gt;
&lt;legend&gt;Simple form&lt;/legend&gt;
&lt;div class=&quot;input-group&quot;&gt;
&lt;label for=&quot;username&quot;&gt;username&lt;/label&gt;
&lt;input type=&quot;email&quot; value=&quot;&quot; id=&quot;username&quot; placeholder=&quot;username&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;input-group&quot;&gt;
&lt;label for=&quot;pwd&quot;&gt;password&lt;/label&gt;
&lt;input type=&quot;password&quot; value=&quot;&quot; id=&quot;pwd&quot; placeholder=&quot;password&quot;&gt;
&lt;/div&gt;
&lt;/fieldset&gt;
&lt;/form&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>Using the <code>&lt;fieldset&gt;</code> and <code>&lt;legend&gt;</code> elements is highly recommended for a better presentational effect. Using these elements is a matter of personal preference, however try to keep your forms consistent (i.e. either use them in all forms or no forms as to not confuse users).</li>
<li>Some <code>&lt;input&gt;</code> elements, such as date &amp; time, color and range types, are not supported and, as a result, do not have a default style defined for them. You can define said styles manually if you need to use them in your website or app.</li>
<li>Checkboxes and radio buttons are not stylized the same way as most of the other elements, nor do they follow the exact same stucture for layout. Please refer to the next section for information on how to use those.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;form&gt;
&lt;fieldset&gt;
&lt;legend&gt;Responsive form&lt;/legend&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-12 col-md-4&quot;&gt;
&lt;label for=&quot;username&quot;&gt;username&lt;/label&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-12 col-md&quot;&gt;
&lt;input type=&quot;email&quot; value=&quot;&quot; id=&quot;username&quot; placeholder=&quot;username&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-12 col-md-4&quot;&gt;
&lt;label for=&quot;pwd&quot;&gt;password&lt;/label&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-12 col-md-4&quot;&gt;
&lt;input type=&quot;password&quot; value=&quot;&quot; id=&quot;pwd&quot; placeholder=&quot;password&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/fieldset&gt;
&lt;/form&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can use <code>.row</code> and <code>.col-<span class="fore-primary">SCR_SZ</span></code> or <code>.col-<span class="fore-primary">SCR_SZ</span>-<span class="fore-secondary">COL_WD</span></code> (replacing <code><span class="fore-primary">SCR_SZ</span></code> with one of the available screen size names (<code><span class="fore-tertiary">sm</span></code> for smaller screens, <code><span class="fore-tertiary">md</span></code> for medium-sized screens or <code><span class="fore-tertiary">lg</span></code> for larger screens and <code><span class="fore-secondary">COL_WD</span></code> with a number from <code>1</code> to <code>12</code> specifying the width of the column) to set specific layouts for your aligned forms. You can also use the same column classes to make them responsive for different screen sizes.</p>
</div>
<div class="col-sm-12 col-md-6">
<pre>&lt;form&gt;
&lt;fieldset&gt;
&lt;legend&gt;Responsive form&lt;/legend&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-12 col-md-10 col-md-offset-1&quot;&gt;
&lt;label for=&quot;username&quot;&gt;username&lt;/label&gt;
&lt;input type=&quot;email&quot; value=&quot;&quot; id=&quot;username&quot; placeholder=&quot;username&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col-sm-12 col-md-10 col-md-offset-1&quot;&gt;
&lt;label for=&quot;pwd&quot;&gt;password&lt;/label&gt;
&lt;input type=&quot;password&quot; value=&quot;&quot; id=&quot;pwd&quot; placeholder=&quot;password&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/fieldset&gt;
&lt;/form&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;Apart from using <code>.row</code> and <code>.col-<span class="fore-primary">SCR_SZ</span></code> or <code>.col-<span class="fore-primary">SCR_SZ</span>-<span class="fore-secondary">COL_WD</span></code> for responsiveness, you can also use other classes from the <strong>grid</strong> module such as the offset classes to make your form layouts more interesting.</p>
</div>
<div class="col-sm-12 col-md-6">
<pre>&lt;style&gt;
.label-aligned {
align-items: center;
}
&lt;/style&gt;
&lt;form&gt;
&lt;fieldset&gt;
&lt;legend&gt;Responsive form&lt;/legend&gt;
&lt;div class=&quot;row label-aligned&quot;&gt;
&lt;div class=&quot;col-sm-12 col-md-4&quot;&gt;
&lt;label for=&quot;username&quot;&gt;username&lt;/label&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-12 col-md&quot;&gt;
&lt;input type=&quot;email&quot; value=&quot;&quot; id=&quot;username&quot; placeholder=&quot;username&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/fieldset&gt;
&lt;/form&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;When creating aligned forms using the <strong>grid</strong> module's classes, labels might be off-center vertically compared to their inline counterparts. Use a simple styling for their parent <code>.row</code> element, if you want to adjust their vertical alignment.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre><&lt;form&gt;
&lt;fieldset&gt;
&lt;legend&gt;Responsive form&lt;/legend&gt;
&lt;div class=&quot;row input-group&quot;&gt;
&lt;div class=&quot;col-sm-12 col-md-4&quot;&gt;
&lt;label for=&quot;username&quot;&gt;username&lt;/label&gt;
&lt;/div&gt;
&lt;div class=&quot;col-sm-12 col-md&quot;&gt;
&lt;input type=&quot;email&quot; value=&quot;&quot; id=&quot;username&quot; placeholder=&quot;username&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/fieldset&gt;
&lt;/form&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid using the <code>.input-group</code> class when creating aligned forms. This might cause unexpected behavior.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Checkboxes &amp; radio buttons</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-lg-4 col-lg-normal">
<div class="box-centered">
<br>
<div class="input-group">
<input type="checkbox" id="chk1" tabindex="0" autocomplete="off"> <label for="chk1">&nbsp;Checkbox</label>
</div>
<br><br>
<div class="input-group">
<input type="radio" name="radios" value="r1" id="r1" tabindex="0" autocomplete="off" checked> <label for="r1">&nbsp;Value 1</label>&nbsp;&nbsp;<br>
<input type="radio" name="radios" value="r2" id="r2" tabindex="0" autocomplete="off"> <label for="r2">&nbsp;Value 2</label>&nbsp;&nbsp;<br>
<input type="radio" name="radios" value="r3" id="r3" tabindex="0" autocomplete="off"> <label for="r3">&nbsp;Value 3</label>&nbsp;&nbsp;<br>
</div>
<br><br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-lg-8 col-lg-normal">
<p>Checkboxes and radio buttons come pre-styled, using the <a href="https://css-tricks.com/the-checkbox-hack/">checkbox hack</a>, while remaining fully accessible. To create a checkbox or radio button, start using a <code>&lt;div&gt;</code> that implements the <code>.input-group</code> class, and then add an <code>&lt;input&gt;</code> of the proper <code><span class="secondary">type</span></code> inside it (<code><span class="fore-primary">&quot;checkbox&quot;</span></code> or <code><span class="fore-primary">&quot;radio&quot;</span></code>), followed immediately by a <code>&lt;label&gt;</code> linking to it. Remember to add <code><span class="fore-secondary">tabindex</span>=<span class="fore-primary">&quot;0&quot;</span></code> to your <code>&lt;input&gt;</code>, so that it will register properly for screen readers.</p>
<h3>Sample code</h3>
<pre>&lt;div class=&quot;input-group&quot;&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;check1&quot; tabindex=&quot;0&quot;&gt;
&lt;label for=&quot;check1&quot;&gt;Checkbox&lt;/label&gt;
&lt;/div&gt;
&lt;div class=&quot;input-group&quot;&gt;
&lt;input type=&quot;radio&quot; id=&quot;rad1&quot; tabindex=&quot;0&quot; name=&quot;radio-group-1&quot;&gt;
&lt;label for=&quot;rad1&quot;&gt;Radio&lt;/label&gt;
&lt;/div&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>Checkboxes and radio buttons are fully accessible. However, if not provided with a label, they are not visible to users, but only to screen readers.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6 col-lg-4">
<pre>&lt;div class=&quot;input-group&quot;&gt;
&lt;input type=&quot;radio&quot; id=&quot;rad1&quot; tabindex=&quot;0&quot; name=&quot;radio-group-1&quot;&gt;
&lt;label for=&quot;rad1&quot;&gt;Value 1&lt;/label&gt;
&lt;input type=&quot;radio&quot; id=&quot;rad2&quot; tabindex=&quot;0&quot; name=&quot;radio-group-1&quot;&gt;
&lt;label for=&quot;rad2&quot;&gt;Value 2&lt;/label&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can add multiple <code>radio</code> buttons inside one <code>.input-group</code>, as long as they follow the syntax shown above. In fact, we strongly recommend grouping controls that are relevant to each other in this manner.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal col-lg-4 col-lg-last">
<pre>&lt;input type=&quot;checkbox&quot; id=&quot;check1&quot; tabindex=&quot;0&quot;&gt;
&lt;label for=&quot;check1&quot;&gt;Checkbox&lt;/label&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Always use an <code>.input-group</code> for your checkboxes and radio buttons. Not doing so will cause the checkbox or radio button to not display properly.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal col-lg-4 col-lg-last">
<pre>&lt;div class=&quot;input-group&quot;&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;check1&quot;
&lt;label for=&quot;check1&quot;&gt;Checkbox&lt;/label&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Remember to add <code><span class="fore-secondary">tabindex</span>=<span class="fore-primary">&quot;0&quot;</span></code> to all your checkboxes and radio buttons to make them accessible.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal col-lg-4 col-lg-last">
<pre>&lt;div class=&quot;input-group&quot;&gt;
&lt;label for=&quot;check1&quot;&gt;Checkbox&lt;/label&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;check1&quot; tabindex=&quot;0&quot;&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;The structure of checkboxes and radio buttons is very strict, meaning that the <code>&lt;label&gt;</code> should always be after the <code>&lt;input&gt;</code> and never before, otherwise the checkbox or radio button will not display properly.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal col-lg-4 col-lg-last">
<pre>&lt;div class=&quot;input-group&quot;&gt;
&lt;input type=&quot;radio&quot; id=&quot;rad1&quot; tabindex=&quot;0&quot; name=&quot;radio-group-1&quot;&gt;
&lt;input type=&quot;radio&quot; id=&quot;rad2&quot; tabindex=&quot;0&quot; name=&quot;radio-group-1&quot;&gt;
&lt;label for=&quot;rad2&quot;&gt;Value 2&lt;/label&gt;
&lt;label for=&quot;rad1&quot;&gt;Value 1&lt;/label&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;When using multiple radio buttons inside an <code>.input-group</code>, remember to use the usual structure of the radio button component for each radio button (i.e. the <code>&lt;input&gt;</code> and <code>&lt;label&gt;</code>). Not doing so will cause the radio buttons to not display properly.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal col-lg-4 col-lg-last">
<pre>&lt;div class=&quot;input-group&quot;&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;check1&quot; tabindex=&quot;0&quot;&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Never leave a checkbox or radio button without a <code>&lt;label&gt;</code>. The <code>&lt;label&gt;</code> is essential to properly display the checkbox or radio button.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Buttons &amp; button groups</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-lg-4 col-lg-normal">
<button>Default button</button>
<button class="primary">Primary button</button>
<button class="secondary">Secondary button</button>
<button class="tertiary">Tertiary button</button>
<button class="inverse">Inverse button</button>
<button class="small">Small button</button>
<button class="large">Large button</button>
<button disabled>Disabled button</button>
<h4>Button group</h4>
<div class="button-group">
<button>Button</button>
<button>Button</button>
<button>Button</button>
</div>
</div>
<div class="col-sm-12 col-sm-first col-lg-8 col-lg-normal">
<p>All button types have been stylized by default, while maintaining accessiblity. Simply add any <code>&lt;button&gt;</code> or an <code>&lt;input&gt;</code> with a button <code><span class="secondary">type</span></code> (i.e. <code><span class="fore-primary">&quot;button&quot;</span></code>, <code><span class="fore-primary">&quot;submit&quot;</span></code> or <code><span class="fore-primary">&quot;reset&quot;</span></code>) and they will be styled accordingly. You can also use the <code>.button</code> class for links, labels and other elements of your choice to make them look like buttons.</p>
<p>Color variants are available in the form of the <code>.primary</code>, <code>.secondary</code>, <code>.tertiary</code> and <code>.inverse</code> classes. Size variants are available as well in the form of <code>.small</code> and <code>.large</code> classes.</p>
<p>Finally, you can create responsive groups of buttons by wrapping them inside a <code>&lt;div&gt;</code> with the <code>.button-group</code> class.</p>
<h3>Sample code</h3>
<pre>&lt;button&gt;Default button&lt;/button&gt;
&lt;input type=&quot;button&quot; class=&quot;primary&quot; value=&quot;Primary button&quot;&gt;
&lt;input type=&quot;reset&quot; class=&quot;secondary&quot; value=&quot;Secondary button&quot;&gt;
&lt;input type=&quot;submit&quot; class=&quot;tertiary&quot; value=&quot;Tertiary button&quot;&gt;
&lt;button class=&quot;inverse&quot;&gt;Inverse button&lt;/button&gt;
&lt;button class=&quot;small&quot;&gt;Small button&lt;/button&gt;
&lt;button class=&quot;large&quot;&gt;Large button&lt;/button&gt;
&lt;button disabled&gt;Disabled button&lt;/button&gt;
&lt;a href=&quot;#&quot; class=&quot;button&quot;&gt;Link button&lt;/a&gt;
&lt;label class=&quot;button&quot;&gt;Label button&lt;/label&gt;
&lt;div class=&quot;button-group&quot;&gt;
&lt;button&gt;Button&lt;/button&gt;
&lt;button&gt;Button&lt;/button&gt;
&lt;button&gt;Button&lt;/button&gt;
&lt;/div&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>If you want more color or size variants for your buttons, check out the <a href="customization.html">customization</a> page.</li>
<li>The <code>.button-group</code> component is compatible with modern browsers, but might not display properly in older browsers.</li>
<li><code>.button-group</code>s will display as a horizontal container with all their buttons in one row on medium-sized and larger displays, however they will collapse into a column view for smaller displays.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;button class=&quot;inverse small&quot;&gt;Small inverse button&lt;/button&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can mix and match button color and size variants to achieve the desired effect.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;button class=&quot;secondary inverse&quot;&gt;Problematic button&lt;/button&gt;
<span class="fore-secondary">&lt;!-- or --&gt;</span>
&lt;button class=&quot;small large&quot;&gt;Problematic button&lt;/button&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid mixing two or more button color or size variants, as these combinations might result in unexpected behavior.</p>
</div>
<div class="col-sm-12 col-md-6">
<pre>&lt;div class=&quot;button-group&quot;&gt;
&lt;button&gt;Button&lt;/button&gt;
&lt;input type=&quot;reset&quot; class=&quot;secondary&quot; value=&quot;Secondary button&quot;&gt;
&lt;label class=&quot;button inverse&quot;&gt;Label button&lt;/label&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can use button color variants inside the same <code>.button-group</code>. You can also use any component styled like a button inside a <code>.button-group</code>.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;div class=&quot;button-group&quot;&gt;
&lt;button class=&quot;large&quot;&gt;Button&lt;/button&gt;
&lt;button&gt;Button&lt;/button&gt;
&lt;button class=&quot;small&quot;&gt;Button&lt;/button&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid using button size variants inside a <code>.button-group</code>, as this might result in unexpected behavior.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>File upload buttons</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-lg-4 col-lg-normal">
<div class="input-group">
<br>
<input type="file" id="file-input-demo">
<label for="file-input-demo" class="button"><i class="fa fa-upload" aria-hidden="true"></i>&nbsp;Upload file</label>
<br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-lg-8 col-lg-normal">
<p>File upload buttons are commonly a sore spot in UI toolkits. We try to remedy this problem by hiding the <code>&lt;input <span class="fore-secondary">type</span>=<span class="fore-primary">&quot;file&quot;</span>&gt;</code>, while maintaining accessiblity and using a linked <code>&lt;label&gt;</code> of the <code>.button</code> class to display it in a modern way.</p>
<h3>Sample code</h3>
<pre>&lt;input type=&quot;file&quot; id=&quot;file-input&quot;&gt;
&lt;label for=&quot;file-input&quot; class=&quot;button&quot;&gt;Upload file...&lt;/label&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>The icon displayed in the example above is not part of the button styling.</li>
<li>File upload buttons do not change their text to the name of the file after the user has selected a file to upload. You can, however, add this functionality using a few lines of Javascript.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12">
<pre>&lt;div class=&quot;input-group&quot;&gt;
&lt;input type=&quot;file&quot; id=&quot;file-input&quot;&gt;
&lt;label for=&quot;file-input&quot; class=&quot;button&quot;&gt;Upload file...&lt;/label&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can use an <code>.input-group</code> to wrap the file upload <code>&lt;input&gt;</code> and its linked <code>&lt;label&gt;</code>, if you wish.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row" style="padding-bottom: 20px; padding-top:20px;">
<div class="col-sm">
<p>If you want to learn more about <strong>mini.css</strong>'s modules, go back to the <a href="modules.html">modules page</a> and choose another module to see its documentation.</p>
</div>
</div>
</div></main>
<!-- End of page content-->
<footer><strong>mini.css</strong> was designed and built with <i class="fa fa-heart-o" aria-hidden="true"></i> by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</footer>
</body>
</html>

1
docs/mini-logo.svg Normal file
View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="401px" height="520px" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="239 62 131 170" preserveAspectRatio="xMidYMid meet" ><rect id="svgEditorBackground" x="0" y="0" width="1160" height="520" style="fill: none; stroke: none;"/><g id="e605_group" transform="matrix(1.2583, 0, 0, 1.2583, -50.238, -27.3693)"><circle id="e401_circle" cx="300.899" cy="92.3735" style="stroke-width: 6px;" stroke="white" r="10.0499" fill="white" transform="matrix(0.837071, 0, 0, 0.837071, 46.4308, 12.3787)"/><path d="M281.412,149.35 c-13.5,23.5 23,37 21.5,-22.5" style="fill: none; stroke-width: 3px; stroke-linecap: round; stroke-linejoin: round;" stroke="white" id="e402_arc3" transform="matrix(1.38342, 0, 0, 1.38342, -117.247, -48.1062)"/></g><g id="e630_group" transform="matrix(1.2583, 0, 0, 1.2583, -50.238, -27.3693)"><path d="M299,90 c-65,-12 -87,55 2.5,37.5" style="fill: none; stroke-width: 3px; stroke-linecap: round; stroke-linejoin: miter;" stroke="white" id="e631_arc3"/></g></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -1,844 +1,164 @@
<!DOCTYPE html>
<html>
<head>
<title>mini.css - A minimal Sass-y responsive mobile-first style-agnostic CSS framework</title>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<title>mini.css - Modules</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - A minimal Sass-y responsive mobile-first style-agnostic CSS framework">
<meta name="keywords" content="mini, mini.css, CSS, responsive, framework, mobile first, style agnostic, Sass">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass, module, modules">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<link rel="icon" type="image/png" href="favicon.png">
<!-- For local testing only -->
<!-- <link rel="stylesheet" href="../flavors/mini-default.min.css"> -->
<!-- Old link -->
<!-- <link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/6b3db97a893cf4e7ec1b9f5aa40fc5957b1b94fc/flavors/mini-default.min.css"> -->
<!-- Correct link -->
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/1.0.0/flavors/mini-default.min.css">
<meta property="og:title" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta property="og:type" content="website"/>
<meta property="og:description" content="mini.css is a tiny CSS toolkit designed to build quick, modern and responsive websites."/>
<meta property="og:image" content="page_thumb.PNG">
<meta property="og:url" content="https://chalarangelo.github.io/mini.css/">
<link rel="icon" type="image/png" href="favicon.png">
<style>
.panelcode{ border-top-left-radius:0; border-top-right-radius:0; margin-bottom:0; }
pre{ overflow: auto; }
input[type="checkbox"].stateful{display: none;}
input[type="checkbox"].stateful+label{display:block;}
input[type="checkbox"].stateful+label+label{display:none;}
input[type="checkbox"]:checked.stateful+label{display:none;}
input[type="checkbox"]:checked.stateful+label+label{display:block;}
.btn-grp .btn{margin-left:-5px;}
.footer{background-color:#272727; color:#ddd;}
.footer a, .footer a:hover, .footer a:visited, .footer a:visited:hover, .footer a:active, .footer a:visited:active{color: #fff;}
.footer a:hover{text-decoration: underline;}
/* Classes and ids used in multiple pages - page top and utilities */
#header-logo {
display: inline; height: 28px; width: 28px; margin-top: 4px; background: #558b2f; border-radius: 1px;
padding: 4px;
}
#top-logo {
display: inline-block; height: 66px; width: 70px; margin: 64px auto -30px; border-radius: 1px;
background: #558b2f; padding: 8px; padding-top: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
#top-heading {
color: #f5f5f5; font-size: 2.4em; text-shadow: 0 1px 2px rgba(0,0,0,0.35); margin-bottom: -8px;
}
#top-version-tag {
padding: 4px 6px; font-size: 0.85em; font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
.box-centered { text-align: center; }
.box-colored { background: #0277bd; border-radius: 2px; padding: 14px; margin-bottom: 8px; min-height: 14px;}
.box-colored.red { background: #e53935; }
.box-centered > .card.fluid {
-webkit-box-pack: start;
-webkit-box-align: start;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-self: auto;
align-self: auto;
}
[class^='col-'] .card.fluid { margin: 2px 0 20px; }
/* Local classes and ids for this page */
.box-left { text-align: left; }
</style>
</head>
<body>
<input type="checkbox" class="modal" id="modal1"><div><label for="modal1" autocomplete="off"></label><div><label for="modal1"><span class="close"></span></label><h3>Modal dialog</h3><hr><p>This is a modal dialog.</p></div></div>
<input type="checkbox" id="nav-toggle" autocomplete="off" class="hidden">
<div class="nav fixed">
<a href="https://chalarangelo.github.io/mini.css"><span class="logo">&nbsp;<img src="favicon.png" style="height: 34px; width: auto; display: inline-block; vertical-align: middle;">&nbsp;mini.css&nbsp;</span></a>
<ul>
<li><a href="https://chalarangelo.github.io/mini.css/#why-mini-css" class="link">Introduction</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/#modules" class="link">Module overview</a></li>
<li><label class="link dropdown" for="menu-drop1">Module demos</label></li>
</ul>
<input type="checkbox" id="menu-drop1" class="dropdown" autocomplete="off"><div>
<ul>
<li><a href="https://chalarangelo.github.io/mini.css/modules#base" class="link">Base</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#grid" class="link">Responsive Grid</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#nav" class="link">Navigation</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#dropdown" class="link">Dropdowns</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#tab" class="link">Tabs</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#table" class="link">Tables</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#form" class="link">Forms</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#button" class="link">Buttons</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#label" class="link">Labels</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#modal" class="link">Modals</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#collapse" class="link">Collapse</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#progress" class="link">Progress Bars</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#carousel" class="link">Carousel</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#utility" class="link">Utilities &amp; Helper Classes</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#utility-extra" class="link">Utilities &amp; Experimental Classes</a></li>
</ul>
<body>
<header>
<a href="index.html"><img class="logo" src="mini-logo.svg" id="header-logo"></a><div style="display: inline; overflow: auto;">
<a href="index.html" class="button">Introduction</a>
<a href="modules.html" class="button">Modules</a>
<a href="flavors.html" class="button">Flavors</a>
<a href="customization.html" class="button">Customization</a>
<a href="quick_reference.html" class="button">Quick Reference</a>
<a href="https://github.com/Chalarangelo/mini.css" class="button">Github</a>
</div>
</div>
<label for="nav-toggle"></label>
<br>
<div class="grid-container">
</header>
<div class="container" style="height: 320px; background: -webkit-linear-gradient(#455a64,#263238); background: linear-gradient(#455a64,#263238); box-shadow: 0 3px 9px rgba(0,0,0,0.26), 0 3px 6px rgba(0,0,0,0.35);">
<div class="row">
<div class="col xs-no md-1"></div>
<div class="col xs-12 md-10">
<h1>mini.css<small> a minimal Sass-y responsive mobile-first style-agnostic CSS framework</small></h1>
<p>Below you can see each module in action, along with certain suggestions on how to add functionality to the various components. Bear in mind that this demo is for the <strong>Default</strong> flavor. Naming conventions may vary between flavors, however the structure and functionality of the modules should be the same. Please refer to specific flavors for those differences. The <strong><a href="https://chalarangelo.github.io/mini.css/modules-niteowl">NiteOwl</a></strong> flavor uses the same naming conventions for the module components, so you won't have any trouble. If you are migrating from Bootstrap and want to use the <strong>Bootstrap</strong> flavor, most naming conventions are based on the original naming conventions of Bootstrap 3.3.7.</p>
<p><strong>To use the Default flavor, add the following code inside your HTML page's <code>&lt;head&gt;</code> tag:</strong></p>
<pre style="overflow: auto;">&lt;link rel=&quot;stylesheet&quot; href=&quot;https://cdn.rawgit.com/Chalarangelo/mini.css/1.0.0/flavors/mini-default.min.css&quot;&gt;</pre><br>
<h2 id="base">Base</h2>
<p>The Base module contains customized typography rules, colors and most of the functionality provided in <a href="https://necolas.github.io/normalize.css/">normalize.css</a>. Below we showcase some of the most important typography styles.</p>
<h3>Fonts, sizes and colors</h3>
<p>The default flavor uses the <strong>Helvetica</strong> font family and a font-size of <strong>1em</strong> with a line-height of <strong>1.5</strong>. Colors used are <strong>#f5f5f5</strong> for the background and <strong>#222</strong> for the text. Most of the things in this module are subjective to one's preferences and should be changed according to your liking. Heading, <code>&lt;sub&gt;</code>, <code>&lt;sup&gt;</code> and <code>&lt;small&gt;</code> elements use multipliers, so changing the base font-size should affect those too. Apart from that, colors and styles for links can easily be changed, as well as a lot of other parameters. Images are responsive by default, so they will shrink to fit smaller viewports without any additional work. Below we highlight some important things, like heading and code styling, but you can see most of the typography rules in action in these pages.</p>
<h3>Headings</h3>
<div class="panel"><h4 class="head">Example</h4>
<h1>Heading 1 <small>small text</small></h1>
<h2>Heading 2 <small>small text</small></h2>
<h3>Heading 3 <small>small text</small></h3>
<h4>Heading 4 <small>small text</small></h4>
<h5>Heading 5 <small>small text</small></h5>
<h6>Heading 6 <small>small text</small></h6>
<pre class="panelcode">&lt;h1&gt;Heading 1 &lt;small&gt;small text&lt;/small&gt;&lt;/h1&gt;
&lt;h2&gt;Heading 2 &lt;small&gt;small text&lt;/small&gt;&lt;/h2&gt;
&lt;h3&gt;Heading 3 &lt;small&gt;small text&lt;/small&gt;&lt;/h3&gt;
&lt;h4&gt;Heading 4 &lt;small&gt;small text&lt;/small&gt;&lt;/h4&gt;
&lt;h5&gt;Heading 5 &lt;small&gt;small text&lt;/small&gt;&lt;/h5&gt;
&lt;h6&gt;Heading 6 &lt;small&gt;small text&lt;/small&gt;&lt;/h6&gt;</pre>
<div class="col-sm">
<div class="box-centered">
<img src="mini-logo.svg" id="top-logo">
<h1 id="top-heading"><span style="font-size: 1.35em;">m</span>ini<span style="font-size:0.65em; color: #558b2f;">.css</span></h1>
<mark class="tertiary" id="top-version-tag">v2.0</mark>
</div>
<h3>Code, <code>&lt;pre&gt;</code> and <code>&lt;kbd&gt;</code> elements</h3>
<div class="panel"><h4 class="head">Example</h4>
<p>Inline code looks like <code>this</code>. User input looks like <kbd>this</kbd>. Finally, code blocks look like...</p>
<pre style="margin-left: 10px; margin-right: 10px;">this! This is a code block!</pre>
<br><pre class="panelcode">&lt;code&gt;Inline code&lt;/code&gt;
&lt;kbd&gt;User input&lt;/kbd&gt;
&lt;pre&gt;Code block&lt;/pre&gt;</pre>
</div><br>
<h2 id="grid">Responsive grid</h2>
<p>The grid system provided can be fully customized to use as many columns as you wish and have custom breakpoints for different device sizes. The default grid uses 12 columns (as shown below). Customized classes are also defined to hide certain columns in certain viewport sizes. This can be specifically used to customize column offseting on different devices.</p>
<h3>Grid structure</h3>
<p>The basic grid structure is as follows:</p>
<ul>
<li>The outer wrapper of the grid system uses the <code>.grid-container</code> class.</li>
<li>Inside this wrapper, rows can be defined using the <code>.row</code> class.</li>
<li>Inside the rows, columns can be defined using the <code>.col</code> class.</li>
<li>Column width can be specified for different devices using the respective class prefixes (<code>.xs-</code>, <code>.sm-</code>, <code>.md-</code>, <code>.lg-</code>) followed by the width (in columns) of the specific column.</li>
<li>Columns can be hidden in certain viewports, using the <code>-no</code> suffix for the specific screen size.</li>
</ul>
<h3>12-column grid example</h3>
<div class="panel"><h4 class="head">Example</h4>
<div class="grid-container">
<div class="row">
<div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div>
<div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div>
<div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div>
<div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div>
</div>
<div class="row">
<div class="col xs-2 bordered">1/6</div><div class="col xs-2 bordered">1/6</div><div class="col xs-2 bordered">1/6</div>
<div class="col xs-2 bordered">1/6</div><div class="col xs-2 bordered">1/6</div><div class="col xs-2 bordered">1/6</div>
</div>
<div class="row">
<div class="col xs-3 bordered">1/4</div><div class="col xs-3 bordered">1/4</div><div class="col xs-3 bordered">1/4</div>
<div class="col xs-3 bordered">1/4</div>
</div>
<div class="row">
<div class="col xs-4 bordered">1/3</div><div class="col xs-4 bordered">1/3</div><div class="col xs-4 bordered">1/3</div>
</div>
<div class="row">
<div class="col xs-6 bordered">1/2</div><div class="col xs-6 bordered">1/2</div>
</div>
<div class="row">
<div class="col xs-12 bordered">1/1</div>
</div>
</div>
<pre class="panelcode">&lt;div class=&quot;grid-container&quot;&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col xs-2&quot;&gt;1/6&lt;/div&gt;
&lt;div class=&quot;col xs-2&quot;&gt;1/6&lt;/div&gt;
&lt;div class=&quot;col xs-2&quot;&gt;1/6&lt;/div&gt;
&lt;div class=&quot;col xs-2&quot;&gt;1/6&lt;/div&gt;
&lt;div class=&quot;col xs-2&quot;&gt;1/6&lt;/div&gt;
&lt;div class=&quot;col xs-2&quot;&gt;1/6&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col xs-3&quot;&gt;1/4&lt;/div&gt;
&lt;div class=&quot;col xs-3&quot;&gt;1/4&lt;/div&gt;
&lt;div class=&quot;col xs-3&quot;&gt;1/4&lt;/div&gt;
&lt;div class=&quot;col xs-3&quot;&gt;1/4&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col xs-4&quot;&gt;1/3&lt;/div&gt;
&lt;div class=&quot;col xs-4&quot;&gt;1/3&lt;/div&gt;
&lt;div class=&quot;col xs-4&quot;&gt;1/3&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col xs-6&quot;&gt;1/2&lt;/div&gt;
&lt;div class=&quot;col xs-6&quot;&gt;1/2&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col xs-12&quot;&gt;1/1&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
</div><br>
<h2 id="nav">Navigation</h2>
<p>The navigation system provided contains custom classes for the navigation bar, logo and links. Navigation bars can be horizontal or vertical, fixed or otherwise. Navigation bars are responsive by default, so fixed navigation bars will properly shrink down to a button on smaller screens and, when the menu is opened, it will be displayed on top of the page's content.</p>
<h3>Navigation structure</h3>
<p>The structure of the navigation system is as follows:</p>
<ul>
<li>You should wrap your navigation system in a <code>&lt;div&gt;</code> with the <code>.nav</code> class.</li>
<li>If you want your navigation bar to be vertical (horizontal is the default), use the <code>.vertical</code> class.</li>
<li>If you want your navigation bar to be fixed, use the <code>.fixed</code> class.</li>
<li>Use an element with the <code>.logo</code> class for your website's logo.</li>
<li>For the navigation links, use an unordered list (<code>&lt;ul&gt;</code>) and <strong>inside</strong> each <code>&lt;li&gt;</code> element, add another element with the <code>.link</code> class to stylize the element as a navigation link.</li>
<li>Responsiveness can be added for fixed navigation bars by adding a hidden <code>&lt;input type=&quot;checkbox&quot;&gt;</code> right before the navigation bar and a label linking to that specific checkbox right after the navigation bar.</li>
<li>Use <code>autocomplete=&quot;off&quot;</code> to make your menu not open by default in mobile devices.</li>
</ul>
<h3>Horizontal navigation bar</h3>
<div class="panel"><h4 class="head">Example</h4><br>
<div class="nav" style="margin-left: 10px; margin-right: 10px;">
<span class="logo">Logo</span>
<ul>
<li><a href="#" class="link">Link 1</a></li>
<li><a href="#" class="link">Link 2</a></li>
</ul>
</div><br>
<pre class="panelcode">&lt;div class=&quot;nav&quot;&gt;
&lt;span class=&quot;logo&quot;&gt;Logo&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 2&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</pre>
</div>
<h3>Vertical navigation bar</h3>
<div class="panel"><h4 class="head">Example</h4><br>
<div class="nav vertical" style="margin-left: 10px; margin-right: 10px;">
<span class="logo">Logo</span>
<ul>
<li><a href="#" class="link">Link 1</a></li>
<li><a href="#" class="link">Link 2</a></li>
</ul>
</div><br>
<pre class="panelcode">&lt;div class=&quot;nav vertical&quot;&gt;
&lt;span class=&quot;logo&quot;&gt;Logo&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 2&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</pre>
</div><br>
<h2 id="dropdown">Dropdowns</h2>
<p>The dropdown module is an extra module that allows you to add dropdown components to your navigation bars. These components can be customized and work well on mobile devices. <strong>Using too many dropdowns or nesting dropdowns is yet undocumented and might cause unexpected behavior.</strong></p>
<h3>Dropdown structure</h3>
<p>The basic structure of dropdowns is as follows</p>
<ul>
<li>To add a dropdown component, add the <code>.dropdown</code> class to one of your link elements inside the navigation bar.</li>
<li>Add an <code>&lt;input type=&quot;checkbox&quot;&gt;</code> with the <code>.dropdown</code> class and right after it a <code>&lt;div&gt;</code> element that contains an unordered list with list elements that contains navigation links, exactly like you would make a normal navigation menu.</li>
<li>For multiple dropdowns, you should use <code>&lt;input type=&quot;radio&quot;&gt;</code> elements.</li>
<li>On mobile devices, there might be issues with the dropdown not closing after a link is clicked (mainly when it links to the same page). This can be easily dealt with using javascript (by making all the links inside the dropdown's <code>&lt;div&gt;</code> element uncheck the navigation bar's checkbox) or using <code>&lt;label&gt;</code> elements creatively inside the links.</li>
<li>Use <code>autocomplete=&quot;off&quot;</code> to make your dropdown not open by default in mobile devices.</li>
</ul>
<h3>Horizontal navigation dropdown example</h3>
<div class="panel"><h4 class="head">Example</h4><br>
<div class="nav">
<span class="logo">Logo</span>
<ul>
<li><a href="#" class="link">Link 1</a></li>
<li><label class="link dropdown" for="dropdown1">Dropdown</label></li>
</ul>
<input type="checkbox" id="dropdown1" class="dropdown" autocomplete="off">
<div>
<ul>
<li><a href="#" class="link">Link 2</a></li>
<li><a href="#" class="link">Link 3</a></li>
</ul>
</div>
</div><br>
<pre class="panelcode">&lt;div class=&quot;nav&quot;&gt;
&lt;span class=&quot;logo&quot;&gt;Logo&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;label class=&quot;link dropdown&quot; for=&quot;dropdown1&quot;&gt;Dropdown&lt;/label&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;dropdown1&quot; class=&quot;dropdown&quot; autocomplete=&quot;off&quot;&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 3&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
</div>
<h3>Vertical navigation dropdown example</h3>
<div class="panel"><h4 class="head">Example</h4><br>
<div class="nav vertical" style="margin-left: 10px; margin-right: 10px;">
<span class="logo">Logo</span>
<ul>
<li><a href="#" class="link">Link 1</a></li>
<li><label class="link dropdown" for="dropdown2">Dropdown</label></li>
</ul>
<input type="checkbox" id="dropdown2" class="dropdown" autocomplete="off">
<div>
<ul>
<li><a href="#" class="link">Link 2</a></li>
<li><a href="#" class="link">Link 3</a></li>
</ul>
</div>
</div><br>
<pre class="panelcode">&lt;div class=&quot;nav vertical&quot;&gt;
&lt;span class=&quot;logo&quot;&gt;Logo&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;label class=&quot;link dropdown&quot; for=&quot;dropdown1&quot;&gt;Dropdown&lt;/label&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;dropdown1&quot; class=&quot;dropdown&quot; autocomplete=&quot;off&quot;&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 3&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
</div><br>
<h2 id="tab">Tabs</h2>
<p>The tabbed navigation module allows you to easily create tabbed navigation systems, that are fully customizable to fit your needs. <strong>Nested tabs are not supported and might cause unexpected behavior.</strong></p>
<h3>Tabbed navigation structure</h3>
<p>The structure of the tabbed navigation system is as follows:</p>
<ul>
<li>Use the <code>.tabs</code> class to specify the container for the tabbed navigation system.</li>
<li>For each tab use an <code>&lt;input type=&quot;radio&quot;&gt;</code>, immediately followed by a <code>&lt;div&gt;</code> element.</li>
<li>This last element should contain a <code>&lt;label&gt;</code> linking to the radio button of the tab and another <code>&lt;div&gt;</code> that will contain the tab's contents.</li>
<li>Specify the tab that will be open by default using the <code>checked</code> property on one of the radio buttons.</li>
</ul>
<h3>Tabbed navigation example <sup>*</sup></h3>
<div class="tabs">
<input type="radio" name="tabs-radio" id="tab1" checked>
<div>
<label for="tab1">Tab 1</label>
<div>Tab 1 content...</div>
</div>
<input type="radio" name="tabs-radio" id="tab2">
<div>
<label for="tab2">Tab 2</label>
<div>Tab 2 content...</div>
</div>
<input type="radio" name="tabs-radio" id="tab3">
<div>
<label for="tab3">Tab 3</label>
<div>Tab 3 content...</div>
</div>
</div>
<pre class="panelcode">&lt;div class=&quot;tabs&quot;&gt;
&lt;input type=&quot;radio&quot; name=&quot;tabs-radio&quot; id=&quot;tab1&quot; checked&gt;
&lt;div&gt;
&lt;label for=&quot;tab1&quot;&gt;Tab 1&lt;/label&gt;
&lt;div&gt;Tab 1 content...&lt;/div&gt;
&lt;/div&gt;
&lt;input type=&quot;radio&quot; name=&quot;tabs-radio&quot; id=&quot;tab2&quot;&gt;
&lt;div&gt;
&lt;label for=&quot;tab2&quot;&gt;Tab 2&lt;/label&gt;
&lt;div&gt;Tab 2 content...&lt;/div&gt;
&lt;/div&gt;
&lt;input type=&quot;radio&quot; name=&quot;tabs-radio&quot; id=&quot;tab3&quot;&gt;
&lt;div&gt;
&lt;label for=&quot;tab3&quot;&gt;Tab 3&lt;/label&gt;
&lt;div&gt;Tab 3 content...&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</pre><br>
<p>(*):Due to a minor incompatibility between panels and tabs, the above example is not shown like most of the others. Our most experienced teams of developers and designers are on this.</p><br>
<h2 id="table">Tables</h2>
<p>Tables can be easily stylized to look more modern, using stripes and selective borders (vertical only by default). Classes for horizontal only borders(<code>.hor</code>) and full borders(<code>.bor</code>) are also provided. Use the <code>.tbl</code> class in your <code>&lt;table&gt;</code> elements to easily apply your styling.</p>
<h3>Default table example</h3>
<div class="panel"><h4 class="head">Example</h4><br>
<table class="tbl" style="margin-left: 10px; margin-right: 10px;">
<thead>
<th>Column 1</th> <th>Column 2</th>
</thead>
<tbody>
<tr>
<td>Name</td> <td>Value</td>
</tr>
<tr>
<td>Name</td> <td>Value</td>
</tr>
<tr>
<td>Name</td> <td>Value</td>
</tr>
<tr>
<td>Name</td> <td>Value</td>
</tr>
</tbody>
</table><br>
<pre class="panelcode">&lt;table class=&quot;tbl&quot;&gt;
&lt;thead&gt;
&lt;th&gt;Column 1&lt;/th&gt; &lt;th&gt;Column 2&lt;/th&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Name&lt;/td&gt; &lt;td&gt;Value&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Name&lt;/td&gt; &lt;td&gt;Value&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Name&lt;/td&gt; &lt;td&gt;Value&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Name&lt;/td&gt; &lt;td&gt;Value&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;</pre>
</div><br>
<h2 id="form">Forms</h2>
<p>Form customization and styling is easy using the <code>.frm</code> class in any <code>&lt;form&gt;</code> element. Inputs inside the form will be automatically styled and they will use complementary highlights for certain events (<code>:focus</code>, <code>disabled</code>, <code>:invalid</code> etc.). You can use the <code>.aligned</code> and <code>.inline</code> classes to create aligned and inline forms respectively. Aligned forms should be used in combination with the <code>.ctrl-group</code> class to group together labels with their respective inputs.</p>
<h3>Vertical form</h3>
<div class="panel"><h4 class="head">Example</h4>
<form class="frm" autocomplete="off">
<label for="email1">Email</label>
<input type="email" id="email1">
<label for="password1">Password</label>
<input type="password" id="password1">
</form>
<pre class="panelcode">&lt;form class=&quot;frm&quot;&gt;
&lt;label for=&quot;email1&quot;&gt;Email&lt;/label&gt;
&lt;input type=&quot;email&quot; id=&quot;email1&quot;&gt;
&lt;label for=&quot;password1&quot;&gt;Password&lt;/label&gt;
&lt;input type=&quot;password&quot; id=&quot;password1&quot;&gt;
&lt;/form&gt;</pre>
<!-- Insert your page content here-->
<main><div class="container">
<div class="row" style="padding-top: 40px;">
<div class="col-sm">
<h1>Modules</h1>
<p><strong>mini.css</strong> uses modules as its base building blocks. Each module contains one or more components that affect the same part of the user experience. Below you can see a quick overview of all the modules that compose <strong>mini.css</strong>.</p><br>
</div>
</div>
<h3>Inline form</h3>
<div class="panel"><h4 class="head">Example</h4>
<form class="frm inline" autocomplete="off">
<label for="email2">Email</label>
<input type="email" id="email2">
<label for="password2">Password</label>
<input type="password" id="password2">
</form>
<pre class="panelcode">&lt;form class=&quot;frm inline&quot;&gt;
&lt;label for=&quot;email1&quot;&gt;Email&lt;/label&gt;
&lt;input type=&quot;email&quot; id=&quot;email1&quot;&gt;
&lt;label for=&quot;password1&quot;&gt;Password&lt;/label&gt;
&lt;input type=&quot;password&quot; id=&quot;password1&quot;&gt;
&lt;/form&gt;</pre>
</div>
<h3>Aligned form</h3>
<div class="panel"><h4 class="head">Example</h4>
<form class="frm aligned" autocomplete="off">
<div class="ctrl-group">
<label for="email3">Email</label>
<input type="email" id="email3">
</div>
<div class="ctrl-group">
<label for="password3">Password</label>
<input type="password" id="password3">
</div>
</form>
<pre class="panelcode">&lt;form class=&quot;frm aligned&quot;&gt;
&lt;div class=&quot;ctrl-group&quot;&gt;
&lt;label for=&quot;email1&quot;&gt;Email&lt;/label&gt;
&lt;input type=&quot;email&quot; id=&quot;email1&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;ctrl-group&quot;&gt;
&lt;label for=&quot;password1&quot;&gt;Password&lt;/label&gt;
&lt;input type=&quot;password&quot; id=&quot;password1&quot;&gt;
&lt;/div&gt;
&lt;/form&gt;</pre>
</div><br>
<h2 id="button">Buttons</h2>
<p>Use the <code>.btn</code> class on <code>&lt;button&gt;</code>, <code>&lt;a&gt;</code>, <code>&lt;label&gt;</code> or similar elements to give them a unique style. Color variants are provided (<code>.red</code>, <code>.green</code> and <code>.blue</code>), as well as size variants (<code>.sm</code> and <code>.lg</code>).</p>
<h3>Button styles and variants</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
&nbsp;&nbsp;<button class="btn">Default button</button>
&nbsp;&nbsp;<button class="btn red">Red button</button>
&nbsp;&nbsp;<button class="btn green">Green button</button>
&nbsp;&nbsp;<button class="btn blue">Blue button</button>
&nbsp;&nbsp;<button class="btn sm">Small button</button>
&nbsp;&nbsp;<button class="btn lg">Large button</button><br><br>
<pre class="panelcode">&lt;button class=&quot;btn&quot;&gt;Default button&lt;/button&gt;
&lt;button class=&quot;btn red&quot;&gt;Red button&lt;/button&gt;
&lt;button class=&quot;btn green&quot;&gt;Green button&lt;/button&gt;
&lt;button class=&quot;btn blue&quot;&gt;Blue button&lt;/button&gt;
&lt;button class=&quot;btn sm&quot;&gt;Small button&lt;/button&gt;
&lt;button class=&quot;btn lg&quot;&gt;Large button&lt;/button&gt;</pre>
</div><br>
<h2 id="label">Labels &amp; Badges</h2>
<p>Use the <code>.lbl</code> or <code>.bdg</code> class on any elements to style them like labels or badges. Color variants are provided (<code>.red</code>, <code>.green</code> and <code>.blue</code>) for both of these styles.</p>
<h3>Labels and badge styles</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
&nbsp;&nbsp;<span class="lbl">Label</span>
<span class="lbl red">Red label</span>
<span class="lbl green">Green label</span>
<span class="lbl blue">Blue label</span>
<span class="bdg">12</span>
<span class="bdg red">3</span>
<span class="bdg green">45</span>
<span class="bdg blue">6</span><br><br>
<pre class="panelcode">&lt;span class=&quot;lbl&quot;&gt;Label&lt;/span&gt;
&lt;span class=&quot;lbl red&quot;&gt;Red label&lt;/span&gt;
&lt;span class=&quot;lbl green&quot;&gt;Green label&lt;/span&gt;
&lt;span class=&quot;lbl blue&quot;&gt;Blue label&lt;/span&gt;
&lt;span class=&quot;bdg&quot;&gt;12&lt;/span&gt;
&lt;span class=&quot;bdg red&quot;&gt;3&lt;/span&gt;
&lt;span class=&quot;bdg green&quot;&gt;45&lt;/span&gt;
&lt;span class=&quot;bdg blue&quot;&gt;6&lt;/span&gt;</pre>
</div><br>
<h2 id="modal">Modals</h2>
<p>Modal dialogs can be easily added and customized to the user's liking and offer support for the close button utility. <strong>Showing more than one modal dialog at once might have unexpected results and is not encouraged.</strong></p>
<h3>Modal dialog structure</h3>
<p>The basic structure of a modal dialog is as follows:</p>
<ul>
<li>Use the <code>.modal</code> class on an <code>&lt;input type=&quot;checkbox&quot;&gt;</code>. <strong>Place this checkbox along with any other elements specified below at the very start of your <code>&lt;body&gt;</code>.</strong></li>
<li>Add a <code>&lt;div&gt;</code> right after the checkbox. Inside it add a second <code>&lt;div&gt;</code> with your modal dialog's contents, as well as a <code>&lt;label&gt;</code> for the checkbox <strong>without any content inside it.</strong> This label will act as the overlay behind the modal. If you do not want clicking the background to close the modal dialog, add the label without linking it to the checkbox.</li>
<li>If you have enabled close button support, you can add a <code>&lt;span class=&quot;close&quot;&gt;</code> inside a label for the checkbox in the innermost <code>&lt;div&gt;</code> to add a close button to the top right corner of your modal dialog.</li>
<li>Finally, add a label linking to the modal dialog's checkbox anywhere in your page. You can also toggle the modal using Javascript, by setting the checkbox's state to <code>checked</code>.</li>
</ul>
<h3>Modal dialog example</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
&nbsp;&nbsp;<label for="modal1" class="btn red">Open modal</label><br><br>
<pre class="panelcode">&lt;input type=&quot;checkbox&quot; class=&quot;modal&quot; id=&quot;modal1&quot;&gt;
&lt;div&gt;
&lt;label for=&quot;modal1&quot; autocomplete=&quot;off&quot;&gt;&lt;/label&gt;
&lt;div&gt;
&lt;label for=&quot;modal1&quot;&gt;
&lt;span class=&quot;close&quot;&gt;&lt;/span&gt;
&lt;/label&gt;
&lt;h3&gt;Modal dialog&lt;/h3&gt;
&lt;hr&gt;
&lt;p&gt;This is a modal dialog.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
...
&lt;label for=&quot;modal1&quot; class=&quot;btn red&quot;&gt;Open modal&lt;/label&gt;</pre>
</div><br>
<h2 id="collapse">Collapse</h2>
<p>The collapse module adds two components with similar functionality. </p>
<ul>
<li>Single collapse components can be created by adding the <code>.clps</code> class on an <code>&lt;input type=&quot;checkbox&quot;&gt;</code> element, followed by a <code>&lt;div&gt;</code> with the content to be hidden/shown based on the collapse's state.</li>
<li>Similarly, accordion collapse components can be created by adding the <code>.acrd</code> class to as many <code>&lt;input type=&quot;radio&quot;&gt;</code> elements as you want. You should add a <code>&lt;label&gt;</code> linking to each radio immediately after it, followed by a <code>&lt;div&gt;</code> with the content to be hidden/shown based on the accordion's state. </li>
<li>You can use the single collapse component's styling for a set of radio buttons or the accordion's styling for a single checkbox if you would like to use a different styling for your collapse components without adding new CSS definitions.</li>
</ul>
<h3>Single collapse style</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
&nbsp;&nbsp;<label for="collapse1" class="btn blue">Toggle collapse</label><br>
<input type="checkbox" class="clps" id="collapse1" autocomplete="off"><div class="well" style="margin-left: 10px; margin-right: 10px;">This text will be shown or hidden based on the above button.</div><br>
<pre class="panelcode">&lt;label for=&quot;collapse1&quot; class=&quot;btn blue&quot;&gt;Toggle collapse&lt;/label&gt;
&lt;input type=&quot;checkbox&quot; class=&quot;clps&quot; id=&quot;collapse1&quot;&gt;
&lt;div&gt;This text will be shown or hidden based on the above button.&lt;/div&gt;</pre>
</div>
<h3>Accordion style</h3>
<div class="panel" ><h4 class="head">Example</h4>
<div style="margin-left: 10px; margin-right: 10px;">
<input type="radio" class="acrd" id="acrd1" autocomplete="off" name="accordion"><label for="acrd1">First option</label>
<div>This is the first collapse of the accordion.</div>
<input type="radio" class="acrd" id="acrd2" autocomplete="off" name="accordion"><label for="acrd2">Second option</label>
<div>This is the second collapse of the accordion.</div>
<input type="radio" class="acrd" id="acrd3" autocomplete="off" name="accordion"><label for="acrd3">Third option</label>
<div>This is the final collapse of the accordion.</div>
</div>
<pre class="panelcode">&lt;input type=&quot;radio&quot; class=&quot;acrd&quot; id=&quot;acrd1&quot; autocomplete=&quot;off&quot; name=&quot;accordion&quot;&gt;
&lt;label for=&quot;acrd1&quot;&gt;First option&lt;/label&gt;
&lt;div&gt;This is the first collapse of the accordion.&lt;/div&gt;
&lt;input type=&quot;radio&quot; class=&quot;acrd&quot; id=&quot;acrd2&quot; autocomplete=&quot;off&quot; name=&quot;accordion&quot;&gt;
&lt;label for=&quot;acrd2&quot;&gt;Second option&lt;/label&gt;
&lt;div&gt;This is the second collapse of the accordion.&lt;/div&gt;
&lt;input type=&quot;radio&quot; class=&quot;acrd&quot; id=&quot;acrd3&quot; autocomplete=&quot;off&quot; name=&quot;accordion&quot;&gt;
&lt;label for=&quot;acrd3&quot;&gt;Third option&lt;/label&gt;
&lt;div&gt;This is the final collapse of the accordion.&lt;/div&gt;</pre>
</div><br>
<h2 id="progress">Progress bars</h2>
<p>The progress bar module is very easy to use and extend. Simply create a <code>&lt;div&gt;</code> with the <code>.prg</code> class and inside it add a <code>&lt;span&gt;</code> element with the desired <code>style=&quot;width:XX%&quot;</code> and you have a progress bar. Add text inside the <code>&lt;span&gt;</code> element if you want. You can use the <code>.green</code> or <code>.red</code> variants for the <code>&lt;span&gt;</code> element if you want to use different colors. Finally, you can always stack multiple progress bars, by simply adding more <code>&lt;span&gt;</code> elements, just make sure their widths add up to 100% or less.</p>
<h3>Default progress bar style</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
<div class="prg" style="margin-left: 10px; margin-right: 10px; padding:0;"><span style="width:60%;">60%</span></div><br>
<pre class="panelcode">&lt;div class=&quot;prg&quot;&gt;&lt;span style=&quot;width:60%;&quot;&gt;60%&lt;/span&gt;&lt;/div&gt;</pre>
</div>
<h3>Progress bar variant styles</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
<div class="prg" style="margin-left: 10px; margin-right: 10px; padding:0;"><span class="green" style="width:40%;"></span></div><br>
<div class="prg" style="margin-left: 10px; margin-right: 10px; padding:0;"><span class="red" style="width:70%;"></span></div><br>
<pre class="panelcode">&lt;div class=&quot;prg&quot;&gt;&lt;span class=&quot;green&quot; style=&quot;width:40%;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;prg&quot;&gt;&lt;span class=&quot;red&quot; style=&quot;width:70%;&quot;&gt;&lt;/span&gt;&lt;/div&gt;</pre>
</div>
<h3>Stacked progress bars</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
<div class="prg" style="margin-left: 10px; margin-right: 10px; padding:0;">
<span class="red" style="width:30%;"></span>
<span class="green" style="width:20%;"></span>
<span style="width:40%;"></span>
</div><br>
<pre class="panelcode">&lt;div class=&quot;prg&quot;&gt;
&lt;span class=&quot;red&quot; style=&quot;width:30%;&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;green&quot; style=&quot;width:20%;&quot;&gt;&lt;/span&gt;
&lt;span style=&quot;width:40%;&quot;&gt;&lt;/span&gt;
&lt;/div&gt;</pre>
</div><br>
<h2 id="carousel">Carousel</h2>
<p>The carousel module allows you to create manually-controlled image slideshows for your pages. <strong>Nested carousels might cause unexpected behavior, please refrain from using them.</strong></p>
<h3>Carousel structure</h3>
<p>The base structure for the carousel component is as follows:</p>
<ul>
<li>Specify a carousel wrapper, using the <code>.carousel</code> class on a <code>&lt;div&gt;</code> element.</li>
<li>Inside the wrapper, add the an <code>&lt;input type=&quot;radio&quot;&gt;</code>, followed immediately by a <code>&lt;div&gt;</code> element. Inside the latter, add an <code>&lt;img&gt;</code> element, followed by a <code>&lt;div&gt;</code> element which will act as the image's description. Finally, right after closing the first <code>&lt;div&gt;</code> element, add a <code>&lt;label&gt;</code> linked to the radio button for the image.</li>
<li>Repeat the process as many times as you want to add more images. <strong>Remember that you cannot skip the description <code>&lt;div&gt;</code> element, even if it is empty, as it is required for the component to work properly.</strong></li>
<li>Add the <code>checked</code> attribute to the first radio button of your carousel (or the one corresponding to the image you want to be displayed by default) to make the carousel work properly.</li>
</ul>
<p><strong>Auto-scrolling is not enabled by default in this carousel component.</strong> If you want the carousel to scroll automatically, you can check each of the radio buttons automatically using Javascript on set intervals. Using a similar technique you can pause the automatic scrolling when the user's cursor is inside the carousel.</p>
<h3>Carousel example</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
<div class="carousel">
<input type="radio" name="carousel-control" id="crs1" checked>
<div>
<img src="favicon.png">
<div>
<h3>First image</h3>
<p>This is a sample image description.</p>
<div class="row box-centered">
<div class="col-sm-12 col-md-6 row">
<div class="card fluid">
<h2 class="section"><mark class="primary"><i class="fa fa-font fa-fw" aria-hidden="true"></i></mark>&nbsp;Core</h2>
<p class="section box-left">The <strong>core</strong> module contains basic reset and fix rules, based on <a href="http://necolas.github.io/normalize.css/">Normalize.css</a> v5.0.0, along with lots of custom typography rules. Most textual HTML5 elements are styled by this module, so you can start writing your pages immediately without worrying about font families, weights, sizes, line heights, paddings and the like.</p>
<a href="core.html" class="button section">See more</a>
</div>
</div>
<label for="crs1"></label>
<input type="radio" name="carousel-control" id="crs2">
<div>
<img src="favicon.png" style="transform: scale(1,-1);">
<div>
<h3>Second image</h3>
<p>This is another sample image description.</p>
<div class="col-sm-12 col-md-6 row">
<div class="card fluid">
<h2 class="section"><mark class="secondary"><i class="fa fa-th-large fa-fw" aria-hidden="true"></i></mark>&nbsp;Grid</h2>
<p class="section box-left">The <strong>grid</strong> module provides you with a modern, responsive grid system based on the Flexible Layout Module (commonly known as <em>flexbox</em>). The structure of the grid is simple and logical, allowing you to quickly build your pages from scratch. Setting the layout for a page is easy and will behave the way you want them to on mobile devices and smaller screens.</p>
<a href="grid.html" class="button section">See more</a>
</div>
</div>
<label for="crs2"></label>
<input type="radio" name="carousel-control" id="crs3">
<div>
<img src="favicon.png" style="transform: scale(-1,-1);">
<div>
<h3>Third image</h3>
<p>This is yet another image description.</p>
</div>
<div class="row box-centered">
<div class="col-sm-12 col-md-6 row">
<div class="card fluid">
<h2 class="section"><mark class="primary"><i class="fa fa-compass fa-fw" aria-hidden="true"></i></mark>&nbsp;Navigation</h2>
<p class="section box-left">The <strong>navigation</strong> module seeks to remedy the problems of vertical and horizontal navigation design paradigms, by combining the two for a better presentational effect. HTML5 navigational elements are at the heart of the module, allowing you to quickly build your navigation without complicated structures and hacks.</p>
<a href="navigation.html" class="button section">See more</a>
</div>
</div>
<label for="crs3"></label>
</div>
<br>
<pre class="panelcode">&lt;div class=&quot;carousel&quot;&gt;
&lt;input type=&quot;radio&quot; name=&quot;carousel-control&quot; id=&quot;crs1&quot; checked&gt;
&lt;div&gt;
&lt;img src=&quot;favicon.png&quot;&gt;
&lt;div&gt;
&lt;h3&gt;First image&lt;/h3&gt;
&lt;p&gt;This is a sample image description.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;label for=&quot;crs1&quot;&gt;&lt;/label&gt;
&lt;input type=&quot;radio&quot; name=&quot;carousel-control&quot; id=&quot;crs2&quot;&gt;
&lt;div&gt;
&lt;img src=&quot;favicon.png&quot; style=&quot;transform: scale(1,-1);&quot;&gt;
&lt;div&gt;
&lt;h3&gt;Second image&lt;/h3&gt;
&lt;p&gt;This is another sample image description.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;label for=&quot;crs2&quot;&gt;&lt;/label&gt;
&lt;input type=&quot;radio&quot; name=&quot;carousel-control&quot; id=&quot;crs3&quot;&gt;
&lt;div&gt;
&lt;img src=&quot;favicon.png&quot; style=&quot;transform: scale(-1,-1);&quot;&gt;
&lt;div&gt;
&lt;h3&gt;Third image&lt;/h3&gt;
&lt;p&gt;This is yet another image description.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;label for=&quot;crs3&quot;&gt;&lt;/label&gt;
&lt;/div&gt;</pre>
</div><br>
<h2 id="utility">Utilities &amp; Helper classes</h2>
<p>The core utilities module contains a set of useful utilities and helper classes to make common tasks easier when developing new pages.</p>
<h3>Generic borders</h3>
<p>By using the <code>opacity</code> CSS property in a creative way, along with <code>border-radius</code>es, we have created utility classes that will create generic borders for virtually any element you want. Simply add the <code>.bordered</code> class to create a generic border around an element. You can also use the <code>.rounded</code> and <code>.circle</code> classes (with or without the border style) to create reounded or circular corners for different elements accordingly.</p>
<div class="panel" ><h4 class="head">Example</h4><br>
<span>Button with generic border:</span>&nbsp;&nbsp;<button class="btn blue bordered">Button</button><br>
<span>Image with generic border and rounded corners:</span>&nbsp;&nbsp;<img class="bordered rounded" src="favicon.png" style="height: 100px; width: auto; display:inline-block;vertical-align: middle;"><br>
<span>Image with circular corners:</span>&nbsp;&nbsp;<img class="circle" src="favicon.png" style="height: 100px; width: auto; display:inline-block;vertical-align: middle;"><br>
<pre class="panelcode">&lt;button class=&quot;btn blue bordered&quot;&gt;Button&lt;/button&gt;
&lt;img class=&quot;bordered rounded&quot; src=&quot;favicon.png&quot;&gt;
&lt;img class=&quot;circle&quot; src=&quot;favicon.png&quot;&gt;</pre>
</div>
<h3>Contextual colors and backgrounds</h3>
<p>You can easily add contextual text or background color to certain textual elements by simply using one of the contextual prefixes (<code>.txt-</code> and <code>.bg-</code> respectively) and a color suffix (<code>red</code>, <code>green</code> or <code>blue</code>).</p>
<div class="panel" ><h4 class="head">Example</h4>
<p>Here is some text with contextual colors: <span class="txt-red">red</span>, <span class="txt-green">green</span> &amp; <span class="txt-blue">blue</span>.<br>
And here is some text with contextual backgrounds: <span class="bg-red">red</span>, <span class="bg-green">green</span> &amp; <span class="bg-blue">blue</span>.</p>
<pre class="panelcode">&lt;span class=&quot;txt-red&quot;&gt;red text&lt;/span&gt;
&lt;span class=&quot;txt-green&quot;&gt;green text&lt;/span&gt;
&lt;span class=&quot;txt-blue&quot;&gt;blue text&lt;/span&gt;
&lt;span class=&quot;bg-red&quot;&gt;red background&lt;/span&gt;
&lt;span class=&quot;bg-green&quot;&gt;green background&lt;/span&gt;
&lt;span class=&quot;bg-blue&quot;&gt;blue background&lt;/span&gt;</pre>
</div>
<h3>Image thumbnails</h3>
<p>Image thumbnails can be used to stylize images by adding a custom border around them by simply using the <code>.thumb</code> class.</p>
<div class="panel" ><h4 class="head">Example</h4><br>
&nbsp;&nbsp;<img class="thumb" src="favicon.png" style="height: 100px; width: auto; display:inline-block;"><br><br>
<pre class="panelcode">&lt;img class=&quot;thumb&quot; src=&quot;favicon.png&quot;&gt;</pre>
</div>
<h3>Utility symbols</h3>
<p>You can easily add carets and close symbols by using the <code>.caret</code> and <code>.close</code> classes respectively.</p>
<div class="panel" ><h4 class="head">Example</h4>
&nbsp;&nbsp;<span class="caret" style="padding:0;"></span>
<span class="close"></span><br>
<pre class="panelcode">&lt;span class=&quot;caret&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;close&quot;&gt;&lt;/span&gt;</pre>
</div>
<h3>Helper classes</h3>
<p>Apart from the above utilities, there are some extra classes provided to help streamline the development process. Some of these classes use the <code class="txt-red">!important</code> property to override other styles, so be careful when using them. The provided helper classes are as follows:</p>
<ul>
<li>Quick floats can be created using the <code>.drg-left</code> and <code>.drg-right</code> classes.</li>
<li>Center content blocks can be created using the <code>.ct-block</code> class.</li>
<li>Utilize the popular <a href="http://nicolasgallagher.com/micro-clearfix-hack/">micro clearfix hack</a> using the <code>.cf</code> class.</li>
<li>Use the <code>.hidden</code> class to hide any content you wish.</li>
</ul>
<h2 id="utility-extra">Utilities &amp; Experimental classes</h2>
<p>The extra utilities module contains some more useful utilities, as well as some more experimental and unstable utility classes, that some people might find of use. <strong>Any components marked as experimental might be unstable and behave unexpectedly, use at your own risk!</strong></p>
<h3>Breadcrumbs</h3>
<p>Create breadcrumbs to indicate the navigational hierarchy of a page's location, using the <code>.brdcrmb</code> class on a list element.</p>
<div class="panel" ><h4 class="head">Example</h4>
<ol class="brdcrmb">
<li><a href="#">Core</a></li>
<li><a href="#">Modules</a></li>
<li>Utility</li>
</ol>
<pre class="panelcode">&lt;ol class=&quot;brdcrmb&quot;&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Core&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Modules&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Utility&lt;/li&gt;
&lt;/ol&gt;</pre>
</div>
<h3>Containers</h3>
<p>There are multiple types of generic containers provided:</p>
<ul>
<li>Wells can be created using the <code>.well</code> class and are the simplest type of generic container.</li>
<li>Alerts are similar to wells, but are contextualized can be toggled on or off (manually or using scripts). Use the <code>.alert-</code> prefix on an <code>&lt;input type=&quot;checkbox&quot;&gt;</code> along with a color suffix (<code>red</code>, <code>green</code> or <code>blue</code>) and a <code>&lt;div&gt;</code> element to create an alert. Adding a <code>&lt;span class=&quot;close&quot;&gt;</li> element inside a label pointing to the alert's checkbox will allow user to dismiss the alert.</code>
<li>Panels are similar to wells, but looks like application windows. You can create a panel using the <code>.panel</code> class and you can specify a title element for your panel using the <code>.head</code> class on the very first element of your panel.</li>
</ul>
<div class="panel" ><h4 class="head">Example</h4><br>
<strong>Well:</strong><br><br>
<div class="well" style="margin-left: 10px; margin-right: 10px;">This is a well.</div><br>
<strong>Alerts:</strong><br><br>
<input type="checkbox" id="alert1" class="alert-red" checked><div style="margin-left: 10px; margin-right: 10px;">This is a red alert without a close button.</div><br>
<input type="checkbox" id="alert2" class="alert-green" checked><div style="margin-left: 10px; margin-right: 10px;">This is a green alert with a <a href="#">link</a> but no close button either.</div><br>
<input type="checkbox" id="alert3" class="alert-blue" checked autocomplete="off"><div style="margin-left: 10px; margin-right: 10px;">This is a blue alert with a close button. <label for="alert3"><span class="close"></span></label></div><br>
<strong>Panel:</strong><br><br>
<div class="panel" style="margin-left: 10px; margin-right: 10px; padding:0"><h3 class="head">Panel head</h3>
<p>This is a panel.</p>
</div><br>
<pre class="panelcode">&lt;div class=&quot;well&quot;&gt;This is a well.&lt;/div&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;alert1&quot; class=&quot;alert-red&quot; checked&gt;
&lt;div&gt;This is a red alert without a close button.&lt;/div&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;alert2&quot; class=&quot;alert-green&quot; checked&gt;
&lt;div&gt;This is a green alert with a &lt;a href=&quot;#&quot;&gt;link&lt;/a&gt; but no close button either.&lt;/div&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;alert3&quot; class=&quot;alert-blue&quot; checked&gt;
&lt;div&gt;This is a blue alert with a close button. &lt;label for=&quot;alert3&quot;&gt;&lt;span class=&quot;close&quot;&gt;&lt;/span&gt;&lt;/label&gt;&lt;/div&gt;
&lt;div class=&quot;panel&quot;&gt;
&lt;h3 class=&quot;head&quot;&gt;Panel head&lt;/h3&gt;
&lt;p&gt;This is a panel.&lt;/p&gt;
&lt;/div&gt;</pre>
</div>
<h3>Popovers</h3>
<p>You can show a small overlay of content when the user clicks on specific elements using the <code>.popover-</code> prefix on an <code>&lt;input type=&quot;checkbox&quot;&gt;</code> along with the <code>top</code> or <code>bottom</code> suffix. Add a <code>&lt;label&gt;</code> right after the checkbox linked to it and inside it add another element with the popover's class you are using. When you click the label, the popover will appear above or below the label. Click on the label again or the popover text itself to hide it.</p>
<div class="panel" style="margin-left: 10px; margin-right: 10px; padding:0"><h4 class="head">Example</h4><br>
&nbsp;&nbsp;<input type="checkbox" id="popover1" class="popover-top" autocomplete="off"><label for="popover1" class="btn green">Open top popover<span class="popover-top">This is the popover text.</span></label>
&nbsp;&nbsp;
<input type="checkbox" id="popover2" class="popover-bottom" autocomplete="off"><label for="popover2" class="btn red">Open bottom popover<span class="popover-bottom">This is the popover text.</span></label><br><br>
<pre class="panelcode">&lt;input type=&quot;checkbox&quot; id=&quot;popover1&quot; class=&quot;popover-top&quot; autocomplete=&quot;off&quot;&gt;
&lt;label for=&quot;popover1&quot; class=&quot;btn green&quot;&gt;Open top popover
&lt;span class=&quot;popover-top&quot;&gt;This is the popover text.&lt;/span&gt;
&lt;/label&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;popover2&quot; class=&quot;popover-bottom&quot; autocomplete=&quot;off&quot;&gt;
&lt;label for=&quot;popover2&quot; class=&quot;btn red&quot;&gt;Open bottom popover
&lt;span class=&quot;popover-bottom&quot;&gt;This is the popover text.&lt;/span&gt;
&lt;/label&gt;</pre>
</div>
<h3>Experimental components</h3>
<p>There are two experimental components provided, stateful buttons and button groups:
<ul><li>To create a stateful button apply the <code>.stateful</code> class to an <code>&lt;input type=&quot;checkbox&quot;&gt;</code>, followed by two labels (the first is for the inactive state and the second one for the active state).<strong>This component is not enabled by default as it is unstable, you can enable it manually.</strong></li>
<li>To create a button group, use the <code>.btn-grp</code> class to wrap a set of <code>.btn</code> elements.<strong>This component is considered stable enough, so it is enabled by default, you can disable it manually.</strong></li></ul>
<div class="panel"><h4 class="head">Example</h4>
&nbsp;&nbsp;<input type="checkbox" id="stateful1" class="stateful" autocomplete="off"><label for="stateful1" class="btn blue" style="margin-left: 10px; margin-right: 10px;width:200px;">Click to load</label><label class="btn blue" style="margin-left: 10px; margin-right: 10px;width:200px;">Loading...</label>
<div class="btn-grp">&nbsp;&nbsp;
<button class="btn">1</button>
<button class="btn">2</button>
<button class="btn">3</button>
<button class="btn">4</button>
</div>
<pre class="panelcode">&lt;input type=&quot;checkbox&quot; id=&quot;stateful1&quot; class=&quot;stateful&quot; autocomplete=&quot;off&quot;&gt;
&lt;label for=&quot;stateful1&quot; class=&quot;btn blue&quot;&gt;Click to load&lt;/label&gt;
&lt;label class=&quot;btn blue&quot;&gt;Loading...&lt;/label&gt;
&lt;div class=&quot;btn-grp&quot;&gt;
&lt;button class=&quot;btn&quot;&gt;1&lt;/button&gt;
&lt;button class=&quot;btn&quot;&gt;2&lt;/button&gt;
&lt;button class=&quot;btn&quot;&gt;3&lt;/button&gt;
&lt;button class=&quot;btn&quot;&gt;4&lt;/button&gt;
&lt;/div&gt;</pre>
</div><br>
<div class="col-sm-12 col-md-6 row">
<div class="card fluid">
<h2 class="section"><mark class="tertiary"><i class="fa fa-keyboard-o fa-fw" aria-hidden="true"></i></mark>&nbsp;Input Control</h2>
<p class="section box-left">The <strong>input_control</strong> module contains rules that affect forms, input elements, buttons, checkboxes and radio buttons. All of these elements's styles are predefined, allowing you to create modern, responsive forms quickly. Layout alternatives are also provided if you want your forms to look a certain way.</p>
<a href="input_control.html" class="button section">See more</a>
</div>
</div>
</div>
<div class="row footer">
<div class="col xs-no md-1"></div>
<div class="col xs-12 md-10 footer">
<p style="padding-top: 10px;"><strong>mini.css</strong> was designed and built by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</p>
<div class="row box-centered">
<div class="col-sm-12 col-md-6">
<div class="card fluid">
<h2 class="section"><mark class="primary"><i class="fa fa-table fa-fw" aria-hidden="true"></i></mark>&nbsp;Table</h2>
<p class="section box-left">The <strong>table</strong> module provides styling and responsiveness for tables. Simple rules and accessible design paradigms have been used to make creating tables quick and easy. Large tables will collapse to cards when on smaller devices or, if you don't want that, they can be locked into their default, desktop view.</p>
<a href="table.html" class="button section">See more</a>
</div>
</div>
</div>
</div>
<div class="col-sm-12 col-md-6">
<div class="card fluid">
<h2 class="section"><mark class="secondary"><i class="fa fa-id-card-o fa-fw" aria-hidden="true"></i></mark>&nbsp;Card</h2>
<p class="section box-left">The <strong>card</strong> module provides you with modern, responsive, general-purpose containers for your page's contents. They are very easy to use and their structure is really simple and versatile. Layouts will respond to smaller screens, realigning the cards in a manner that makes your page mobile-friendly.</p>
<a href="card.html" class="button section">See more</a>
</div>
</div>
</div>
<div class="row box-centered">
<div class="col-sm-12 col-md-6">
<div class="card fluid">
<h2 class="section"><mark class="secondary"><i class="fa fa-files-o fa-fw" aria-hidden="true"></i></mark>&nbsp;Tab</h2>
<p class="section box-left">The <strong>tab</strong> module aims to combine multiple components and design paradigms, like collapses, accordions, carousels and tabs, into one general-purpose component. Tabs are very simple in structure, responsive on mobile and they allow for layout customization so that you can turn them into accordions or collapses whenever you want.</p>
<a href="tab.html" class="button section">See more</a>
</div>
</div>
<div class="col-sm-12 col-md-6">
<div class="card fluid">
<h2 class="section"><mark class="secondary"><i class="fa fa-tags fa-fw" aria-hidden="true"></i></mark>&nbsp;Contextual</h2>
<p class="section box-left">The <strong>contextual</strong> module provides you with simple tags, marks and highlights for your pages, allowing you to easily emphasize parts of your text. The contextual alerts aim to replace the commonly used modal dialog design paradigm with a more modern one. HTML5 elements and simple rules are used in order to make important messages and pieces of content stand out easily.</p>
<a href="contextual.html" class="button section">See more</a>
</div>
</div>
</div>
<div class="row box-centered" style="padding-bottom: 40px;">
<div class="col-sm-12 col-md-6">
<div class="card fluid">
<h2 class="section"><mark class="tertiary"><i class="fa fa-spinner fa-fw" aria-hidden="true"></i></mark>&nbsp;Progress</h2>
<p class="section box-left">The <strong>progress</strong> module gives you full control over the presentation of progress and loading on your pages. Apart from progress bars and color variants for them, spinner elements are provided to help communicate that something is loading.</p>
<a href="progress.html" class="button section">See more</a>
</div>
</div>
<div class="col-sm-12 col-md-6">
<div class="card fluid">
<h2 class="section"><mark class="tertiary"><i class="fa fa-wrench fa-fw" aria-hidden="true"></i></mark>&nbsp;Utility</h2>
<p class="section box-left">The <strong>utility</strong> module contains all the utilities and helper classes that you might want when designing a website or application. They solve common design problems efficiently and provide you with generic rules you can easily apply everywhere.</p>
<a href="utility.html" class="button section">See more</a>
</div>
</div>
</div>
</div></main>
<!-- End of page content-->
<footer><strong>mini.css</strong> was designed and built with <i class="fa fa-heart-o" aria-hidden="true"></i> by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</footer>
</body>
</html>

287
docs/navigation.html Normal file
View File

@@ -0,0 +1,287 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<title>mini.css - Navigation</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass, module, navigation">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<meta property="og:title" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta property="og:type" content="website"/>
<meta property="og:description" content="mini.css is a tiny CSS toolkit designed to build quick, modern and responsive websites."/>
<meta property="og:image" content="page_thumb.PNG">
<meta property="og:url" content="https://chalarangelo.github.io/mini.css/">
<link rel="icon" type="image/png" href="favicon.png">
<style>
/* Classes and ids used in multiple pages - page top and utilities */
#header-logo {
display: inline; height: 28px; width: 28px; margin-top: 4px; background: #558b2f; border-radius: 1px;
padding: 4px;
}
#top-logo {
display: inline-block; height: 66px; width: 70px; margin: 64px auto -30px; border-radius: 1px;
background: #558b2f; padding: 8px; padding-top: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
#top-heading {
color: #f5f5f5; font-size: 2.4em; text-shadow: 0 1px 2px rgba(0,0,0,0.35); margin-bottom: -8px;
}
#top-version-tag {
padding: 4px 6px; font-size: 0.85em; font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
.box-centered { text-align: center; }
.box-colored { background: #0277bd; border-radius: 2px; padding: 14px; margin-bottom: 8px; min-height: 14px;}
.box-colored.red { background: #e53935; }
.box-centered > .card.fluid {
-webkit-box-pack: start;
-webkit-box-align: start;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-self: auto;
align-self: auto;
}
[class^='col-'] .card.fluid { margin: 2px 0 20px; }
/* Local classes and ids for this page */
.fore-primary { color: #0d47a1; font-family: monospace, monospace; }
.fore-secondary { color: #b71c1c; font-family: monospace, monospace; }
.fore-tertiary { color: #1b5e20; font-family: monospace, monospace; }
.col-sm-12.col-sm-last.col-lg-4.col-lg-normal {
box-sizing: border-box;
border-right: 1px solid #bdbdbd;
}
@media (max-width: 1279px){
.col-sm-12.col-sm-last.col-lg-4.col-lg-normal {
border: 0;
border-top: 1px solid #bdbdbd;
}
}
.box-colored.green { background: #689f38; }
.do {
border-top: 15px solid #689f38;
padding-top: 10px;
}
.dont {
border-top: 15px solid #e53935;
padding-top: 10px;
}
.box-colored {
color: #f5f5f5;
}
</style>
</head>
<body>
<header>
<a href="index.html"><img class="logo" src="mini-logo.svg" id="header-logo"></a><div style="display: inline; overflow: auto;">
<a href="index.html" class="button">Introduction</a>
<a href="modules.html" class="button">Modules</a>
<a href="flavors.html" class="button">Flavors</a>
<a href="customization.html" class="button">Customization</a>
<a href="quick_reference.html" class="button">Quick Reference</a>
<a href="https://github.com/Chalarangelo/mini.css" class="button">Github</a>
</div>
</header>
<div class="container" style="height: 320px; background: -webkit-linear-gradient(#455a64,#263238); background: linear-gradient(#455a64,#263238); box-shadow: 0 3px 9px rgba(0,0,0,0.26), 0 3px 6px rgba(0,0,0,0.35);">
<div class="row">
<div class="col-sm">
<div class="box-centered">
<img src="mini-logo.svg" id="top-logo">
<h1 id="top-heading"><span style="font-size: 1.35em;">m</span>ini<span style="font-size:0.65em; color: #558b2f;">.css</span></h1>
<mark class="tertiary" id="top-version-tag">v2.0</mark>
</div>
</div>
</div>
</div>
<!-- Insert your page content here-->
<main><div class="container">
<div class="row" style="padding-top: 40px;">
<div class="col-sm">
<h1>Navigation</h1>
<p>The <strong>navigation</strong> module seeks to remedy the problems of vertical and horizontal navigation design paradigms, by combining the two for a better presentational effect. HTML5 navigational elements are at the heart of the module, allowing you to quickly build your navigation without complicated structures and hacks.</p>
<p><small>All examples showcased refer to the mini-default flavor, some class names and styles might differ based on the flavor you're using.</small></p>
<ul class="breadcrumbs"><li><a href="index.html">Home</a></li><li><a href="modules.html">Modules</a></li><li>Navigation</li></ul>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Quick overview</h2>
<p>Menus and navigation are some of the most important elements for any website or web app and their design and ease-of-use are key factors that can determine a page's bounce rates. The <strong>navigation</strong> module takes a step back from all the complicated menu and navigation design paradigms of the modern web, like dropdown menus and hamburger buttons, and tries to reinvent the basics for page navigation using HTML5 elements (i.e. <code>header</code>, <code>nav</code> and <code>footer</code>) and make navigation fully accessible for screen readers. Instead of sticking to either horizontal navigation menus (headers) or vertical menus (sidebars), we opted to allow the use of both for different things. Header menus are designed to stand out and contain links to help users find new content, whereas vertical navigation aims to provide a more traditional navigation menu that maps out your website's structure. Finally, footers are also part of the <strong>navigation</strong> module, as they can often provide the user with useful information and/or links that are very important to enhancing their experience.</p><br>
</div>
<div class="section">
<h2>Quick start</h2>
<p>To use the <strong>navigation</strong> module, simply include the link to the flavor you are using and start writing your HTML page as usual. One suggestion we will make is to add the following line inside your HTML page's <code>&lt;head&gt;</code> to utilize the viewport meta tag:</p><br>
<pre>&lt;<span class="fore-tertiary">meta</span> <span class="fore-secondary">name</span>=<span class="fore-primary">&quot;viewport&quot;</span> <span class="fore-secondary">content</span>=<span class="fore-primary">&quot;width=device-width, initial-scale=1&quot;</span>&gt;</pre><br>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Header</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-lg-4 col-lg-normal">
<div>
<br>
<header>
<a href="#" class="logo">Logo</a>
<button>Home</button>
<a href="#" class="button">News</a>
<span>|</span>
<button>About</button>
<button>Contact</button>
</header>
<br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>The <code>&lt;header&gt;</code> HTML element is used for a page's top horizontal navigation menu. It can contain a unique <code>.logo</code> element as its first child (this structure is not mandatory, but still recommended as a best practice), which can be either text (with or without a link) or an image. The rest of the elements inside the <code>&lt;header&gt;</code> must be <code>&lt;button&gt;</code>, <code>&lt;label class=&quot;button&quot;&gt;</code> or <code>&lt;a class=&quot;button&quot;&gt;</code> elements in order to be styled properly. Textual separators between those can be added using <code>&lt;span&gt;</code> elements.</p>
<h3>Sample code</h3>
<pre>&lt;header&gt;
&lt;a href=&quot;#&quot; class=&quot;logo&quot;&gt;Logo&lt;/a&gt;
&lt;button&gt;Home&lt;/button&gt;
&lt;a href=&quot;#&quot; class=&quot;button&quot;&gt;News&lt;/a&gt;
&lt;span&gt;|&lt;/span&gt;
&lt;button&gt;About&lt;/button&gt;
&lt;button&gt;Contact&lt;/button&gt;
&lt;/header&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>The <code>&lt;header&gt;</code> element is partially responsive on smaller screen devices. More specifically, when the content inside it exceeds the width of the viewport (ie. overflows to the right), users will be able to scroll horizontally in order to see the rest of the menu.</li>
<li>The <code>&lt;header&gt;</code> element does not display as <code class="fore-tertiary">fixed</code> by default. You can, however, alter this CSS property manually, if you so desire.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;header&gt;
&lt;a href=&quot;#&quot; class=&quot;logo&quot;&gt;Logo&lt;/a&gt;
&lt;button&gt;Action 1&lt;/button&gt;
&lt;a href=&quot;#&quot; class=&quot;button&quot;&gt;Action 2&lt;/a&gt;
&lt;label class=&quot;button&quot;&gt;Action 3&lt;/label&gt;
&lt;/header&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can mix different elements styled like buttons inside a <code>&lt;header&gt;</code> element. In fact, we strongly recommend doing so, if you need to.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;header&gt;
&lt;a href=&quot;#&quot; class=&quot;button logo&quot;&gt;Logo&lt;/a&gt;
&lt;/header&gt;
<span class="fore-secondary">&lt;!-- or --&gt;</span>
&lt;header&gt;
&lt;a href=&quot;#&quot; class=&quot;logo&quot;&gt;Logo&lt;/a&gt;
&lt;a href=&quot;#&quot;&gt;Link&lt;/a&gt;
&lt;/header&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;The <code>.logo</code> element should not be a <code>&lt;button&gt;</code> or a <code>.button</code> element. On the other hand, links and labels in the <code>&lt;header&gt;</code> should not be without a <code>.button</code> class. Ignoring this rule might cause unexpected behavior.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Navigation bar</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-lg-4 col-lg-normal">
<div>
<br>
<nav>
<a href="#">Home</a>
<span>News</span>
<a href="#" class="sublink-1">New Courses</a>
<a href="#" class="sublink-1">Certifications</a>
<span class="sublink-1">Events</span>
<a href="#" class="sublink-2">Course Showcase - 12th, Dec</a>
<a href="#" class="sublink-2">Staff AMA - 16th, Dec</a>
<a href="#" class="sublink-1">Policy Update</a>
<a href="#">About</a>
<a href="#">Contact</a>
</nav>
<br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>To add vertical navigation to your websites, use the <code>&lt;nav&gt;</code> HTML element. Adding links is pretty simple, just use <code>&lt;a&gt;</code> elements, no lists or anything else required. In order to add subcategories to your vertical navigation, use any normal textual element as the title of the subcategory and follow it with its links as normal, adding the <code>.sublink-1</code> class to them. Similarly, you can create a subcategory with a depth of 2, using a similar structure and the <code>.sublink-2</code> class.</p>
<h3>Sample code</h3>
<pre>&lt;nav&gt;
&lt;a href=&quot;#&quot;&gt;Home&lt;/a&gt;
&lt;span&gt;News&lt;/span&gt;
&lt;a href=&quot;#&quot; class=&quot;sublink-1&quot;&gt;New Courses&lt;/a&gt;
&lt;a href=&quot;#&quot; class=&quot;sublink-1&quot;&gt;Certifications&lt;/a&gt;
&lt;span class=&quot;sublink-1&quot;&gt;Events&lt;/span&gt;
&lt;a href=&quot;#&quot; class=&quot;sublink-2&quot;&gt;Course Showcase - 12th, Dec&lt;/a&gt;
&lt;a href=&quot;#&quot; class=&quot;sublink-2&quot;&gt;Staff AMA - 16th, Dec&lt;/a&gt;
&lt;a href=&quot;#&quot; class=&quot;sublink-1&quot;&gt;Policy Update&lt;/a&gt;
&lt;a href=&quot;#&quot;&gt;About&lt;/a&gt;
&lt;a href=&quot;#&quot;&gt;Contact&lt;/a&gt;
&lt;/nav&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>Subcategories and their links support a depth of 2 by default. If, however, you need more than that, we recommend you check the <a href="customization.html">customization page</a> for instructions on how to add more depth to the vertical navigation.</li>
<li>We strongly suggest you do not add irrelevant things inside your <code>&lt;nav&gt;</code> element, like images or text that are not part of the navigation menu.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12">
<pre>&lt;div class=&quot;col-sm-12 col-sm-last col-md-3 col-md-first&quot;&gt;
&lt;nav&gt;
<span class="fore-tertiary">&lt;!-- navigation content --&gt;</span>
&lt;/nav&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;We strongly recommend using the <code>&lt;nav&gt;</code> element in combination with the <a href="grid.html"><strong>grid</strong></a> module to make your layouts more responsive. For example, you could make your sidebar appear on the left side of your content in medium-sized and larger screens, but move to the very bottom of your content on smaller screens.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Footer</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-lg-4 col-lg-normal">
<div>
<br>
<footer>
<p>&copy; 2001-2016 Web Corporation | <a href="#">About</a> | <a href="#">Terms of use</a></p>
</footer>
<br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>The <code>&lt;footer&gt;</code> element is used to create your page's footer. As normal, add the <code>&lt;footer&gt;</code> at or near the end of your <code>&lt;body&gt;</code> element and add content to it like you would otherwise.</p>
<h3>Sample code</h3>
<pre>&lt;footer&gt;
&lt;p&gt;&amp;copy; 2001-2016 Web Corporation | &lt;a href=&quot;#&quot;&gt;About&lt;/a&gt; | &lt;a href=&quot;#&quot;&gt;Terms of use&lt;/a&gt;&lt;/p&gt;
&lt;/footer&gt;</pre>
</div>
</div>
</div>
</div>
</div>
<div class="row" style="padding-bottom: 20px; padding-top:20px;">
<div class="col-sm">
<p>If you want to learn more about <strong>mini.css</strong>'s modules, go back to the <a href="modules.html">modules page</a> and choose another module to see its documentation.</p>
</div>
</div>
</div></main>
<!-- End of page content-->
<footer><strong>mini.css</strong> was designed and built with <i class="fa fa-heart-o" aria-hidden="true"></i> by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</footer>
</body>
</html>

BIN
docs/page_thumb.PNG Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

296
docs/progress.html Normal file
View File

@@ -0,0 +1,296 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<title>mini.css - Progress</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass, module, progress">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<meta property="og:title" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta property="og:type" content="website"/>
<meta property="og:description" content="mini.css is a tiny CSS toolkit designed to build quick, modern and responsive websites."/>
<meta property="og:image" content="page_thumb.PNG">
<meta property="og:url" content="https://chalarangelo.github.io/mini.css/">
<link rel="icon" type="image/png" href="favicon.png">
<style>
/* Classes and ids used in multiple pages - page top and utilities */
#header-logo {
display: inline; height: 28px; width: 28px; margin-top: 4px; background: #558b2f; border-radius: 1px;
padding: 4px;
}
#top-logo {
display: inline-block; height: 66px; width: 70px; margin: 64px auto -30px; border-radius: 1px;
background: #558b2f; padding: 8px; padding-top: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
#top-heading {
color: #f5f5f5; font-size: 2.4em; text-shadow: 0 1px 2px rgba(0,0,0,0.35); margin-bottom: -8px;
}
#top-version-tag {
padding: 4px 6px; font-size: 0.85em; font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
.box-centered { text-align: center; }
.box-colored { background: #0277bd; border-radius: 2px; padding: 14px; margin-bottom: 8px; min-height: 14px;}
.box-colored.red { background: #e53935; }
.box-centered > .card.fluid {
-webkit-box-pack: start;
-webkit-box-align: start;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-self: auto;
align-self: auto;
}
[class^='col-'] .card.fluid { margin: 2px 0 20px; }
/* Local classes and ids for this page */
.fore-primary { color: #0d47a1; font-family: monospace, monospace; }
.fore-secondary { color: #b71c1c; font-family: monospace, monospace; }
.fore-tertiary { color: #1b5e20; font-family: monospace, monospace; }
.col-sm-12.col-sm-last.col-md-4.col-md-normal {
box-sizing: border-box;
border-right: 1px solid #bdbdbd;
}
@media (max-width: 767px){
.col-sm-12.col-sm-last.col-md-4.col-md-normal {
border: 0;
border-top: 1px solid #bdbdbd;
}
}
.box-colored.green { background: #689f38; }
.do {
border-top: 15px solid #689f38;
padding-top: 10px;
}
.dont {
border-top: 15px solid #e53935;
padding-top: 10px;
}
.box-colored {
color: #f5f5f5;
}
</style>
</head>
<body>
<header>
<a href="index.html"><img class="logo" src="mini-logo.svg" id="header-logo"></a><div style="display: inline; overflow: auto;">
<a href="index.html" class="button">Introduction</a>
<a href="modules.html" class="button">Modules</a>
<a href="flavors.html" class="button">Flavors</a>
<a href="customization.html" class="button">Customization</a>
<a href="quick_reference.html" class="button">Quick Reference</a>
<a href="https://github.com/Chalarangelo/mini.css" class="button">Github</a>
</div>
</header>
<div class="container" style="height: 320px; background: -webkit-linear-gradient(#455a64,#263238); background: linear-gradient(#455a64,#263238); box-shadow: 0 3px 9px rgba(0,0,0,0.26), 0 3px 6px rgba(0,0,0,0.35);">
<div class="row">
<div class="col-sm">
<div class="box-centered">
<img src="mini-logo.svg" id="top-logo">
<h1 id="top-heading"><span style="font-size: 1.35em;">m</span>ini<span style="font-size:0.65em; color: #558b2f;">.css</span></h1>
<mark class="tertiary" id="top-version-tag">v2.0</mark>
</div>
</div>
</div>
</div>
<!-- Insert your page content here-->
<main><div class="container">
<div class="row" style="padding-top: 40px;">
<div class="col-sm">
<h1>Progress</h1>
<p>The <strong>progress</strong> module gives you full control over the presentation of progress and loading on your pages. Apart from progress bars and color variants for them, spinner elements are provided to help communicate that something is loading.</p>
<p><small>All examples showcased refer to the mini-default flavor, some class names and styles might differ based on the flavor you're using.</small></p>
<ul class="breadcrumbs"><li><a href="index.html">Home</a></li><li><a href="modules.html">Modules</a></li><li>Progress</li></ul>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Quick overview</h2>
<p>Progress indicators are very common UI elements for almost any website and web app, as they help communicate vital information such as the fact that a process is being executed in the background, informing the user that they should wait for it to complete before proceeding. The <strong>progress</strong> module provides you with two essential tools to communicate this information: the <code>&lt;progress&gt;</code> HTML element, which is pre-styled and compatible with modern browsers to help you communicate information about the percentage of a task and the <code>.spinner-donut</code> class that allows you to create an animated spinner that communicates that something is loading currently and will continue doing so for an indefinite amount of time. Both elements come with their own color and size variants and are fully accessible.</p><br>
</div>
<div class="section">
<h2>Quick start</h2>
<p>To use the <strong>progress</strong> module, simply include the link to the flavor you are using and start writing your HTML page as usual. One suggestion we will make is to add the following line inside your HTML page's <code>&lt;head&gt;</code> to utilize the viewport meta tag:</p><br>
<pre>&lt;<span class="fore-tertiary">meta</span> <span class="fore-secondary">name</span>=<span class="fore-primary">&quot;viewport&quot;</span> <span class="fore-secondary">content</span>=<span class="fore-primary">&quot;width=device-width, initial-scale=1&quot;</span>&gt;</pre><br>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Basic progress bar</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<p>Process is 0% complete!</p>
<progress value="0" max="1000"></progress>
<p>Process is 45% complete!</p>
<progress value="450" max="1000"></progress>
<p>Process is 100% complete!</p>
<progress value="1000" max="1000"></progress>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>To create a progress bar, use the <code>&lt;progress&gt;</code> HTML element, specify the preset maximum of <code><span class="fore-secondary">max</span>=<span class="fore-primary">&quot;1000&quot;</span></code> and set a <code>value</code> between <code>0</code> and <code>1000</code>. Update your <code>&lt;progress&gt;</code> element using some Javascript code, by changing its <code>value</code> to any integer in the same range.</p>
<h3>Sample code</h3>
<pre>&lt;progress value=&quot;0&quot; max=&quot;1000&quot;&gt;&lt;/progress&gt;
&lt;progress value=&quot;450&quot; max=&quot;1000&quot;&gt;&lt;/progress&gt;
&lt;progress value=&quot;1000&quot; max=&quot;1000&quot;&gt;&lt;/progress&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>We made sure that the <code>&lt;progress&gt;</code> element displays properly on all modern browsers, using browser-specific rules. However, there might be some irregularities with older browsers, especially legacy versions of Internet Explorer.</li>
<li>If the preset <code>max="1000"</code> does not suit your needs, you should check the <a href="customization.html">customization page</a> for instructions on how to set your own maximum value for the <code>&lt;progress&gt;</code> element.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;progress value=&quot;80&quot; max=&quot;100&quot;&gt;&lt;/progress&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid using different values for the <code>&lt;progress&gt;</code> element's <code>max</code>, except for the preset one (<code>1000</code>).</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;progress value=&quot;450.5&quot; max=&quot;1000.0&quot;&gt;&lt;/progress&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Try not to use floating point values for either the <code>&lt;progress&gt;</code> element's <code>value</code> or <code>max</code>. During testing of the module, we found that floating point values could cause unexpected behavior.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Progress bar variants</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<p>Secondary process is 60% complete!</p>
<progress class="secondary" value="600" max="1000"></progress>
<p>Tertiary process is 30% complete!</p>
<progress class="tertiary" value="300" max="1000"></progress>
<p>Nano progress bar is 75% filled!</p>
<progress class="nano" value="750" max="1000"></progress>
<p>Inline progress bar:<progress class="inline" value="150" max="1000"></progress></p>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>Apart from the default style for the <code>&lt;progress&gt;</code> element, we have also included a couple of variants for it. First off, you can change the color of your progress bars, based on the context, using the <code>.secondary</code> or <code>.tertiary</code> class. You can also make a <code>&lt;progress&gt;</code> element tiny, using the <code>.nano</code> class. Finally, you can create inline progress bars, using the <code>.inline</code> class.</p>
<h3>Sample code</h3>
<pre>&lt;progress class=&quot;secondary&quot; value=&quot;600&quot; max=&quot;1000&quot;&gt;&lt;/progress&gt;
&lt;progress class=&quot;tertiary&quot; value=&quot;300&quot; max=&quot;1000&quot;&gt;&lt;/progress&gt;
&lt;progress class=&quot;nano&quot; value=&quot;750&quot; max=&quot;1000&quot;&gt;&lt;/progress&gt;
&lt;progress class=&quot;inline&quot; value=&quot;150&quot; max=&quot;1000&quot;&gt;&lt;/progress&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>If you want to add your own custom size classes for <code>&lt;progress&gt;</code> elements, check the <a href="customization.html">customization page</a> for instructions.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;progress class=&quot;nano secondary&quot; value=&quot;800&quot; max=&quot;1000&quot;&gt;&lt;/progress&gt;
<span class="fore-tertiary">&lt;!-- or --&gt;</span>
&lt;progress class=&quot;inline tertiary&quot; value=&quot;650&quot; max=&quot;1000&quot;&gt;&lt;/progress&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can mix size and color classes for <code>&lt;progress&gt;</code> elements as needed.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;progress class=&quot;secondary teriary&quot; value=&quot;450&quot; max=&quot;1000&quot;&gt;&lt;/progress&gt;
<span class="fore-secondary">&lt;!-- or --&gt;</span>
&lt;progress class=&quot;inline nano&quot; value=&quot;300&quot; max=&quot;1000&quot;&gt;&lt;/progress&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid mixing two classes of the same type (i.e. two color classes or two size classes).</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Donut spinner</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div class="box-centered">
<br>
<div class="spinner-donut"></div>
<br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>Donut spinners can be used to indicate that something is loading or that a process is running in the background. To create a donut spinner, add the <code>.spinner-donut</code> class to an element of your liking. We would recommend using a <code>&lt;div&gt;</code> element for most cases, but <code>&lt;span&gt;</code> elements should work pretty well, too.</p>
<h3>Sample code</h3>
<pre>&lt;div class=&quot;spinner-donut&quot;&gt;&lt;/div&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>The <code>.spinner-donut</code> is an animated component, meaning that if a browsers does not support animation, this element might display incorrectly.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;p&gt;Loading... &lt;span class=&quot;spinner-donut&quot;&gt;&lt;/span&gt;&lt;/p&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can place a <code>.spinner-donut</code> inside a paragraph or some other textual context and it will display inline.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;div class=&quot;spinner-donut&quot;&gt;Loading...&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid inserting text inside the <code>.spinner-donut</code>, as this might cause unexpected bahavior and will probably make the text spin along with it.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Donut spinner variants</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div class="box-centered">
<br>
<div class="spinner-donut secondary"></div><br>
<div class="spinner-donut tertiary"></div><br>
<div class="spinner-donut large"></div>
<br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>Apart from the default donut spinner style, there are also two more contextual color classes: <code>.secondary</code> and <code>.tertiary</code>. If your donut spinners are too small, you can also use the <code>.large</code> class to make it pop out a little bit more.</p>
<h3>Sample code</h3>
<pre>&lt;div class=&quot;spinner-donut secondary&quot;&gt;&lt;/div&gt;
&lt;div class=&quot;spinner-donut tertiary&quot;&gt;&lt;/div&gt;
&lt;div class=&quot;spinner-donut large&quot;&gt;&lt;/div&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>You can mix one of the contextual color classes and the <code>.large</code> class, if you want, similarly to what you can do with progress bars.</li>
</ul>
</div>
</div>
</div>
</div>
<div class="row" style="padding-bottom: 20px; padding-top:20px;">
<div class="col-sm">
<p>If you want to learn more about <strong>mini.css</strong>'s modules, go back to the <a href="modules.html">modules page</a> and choose another module to see its documentation.</p>
</div>
</div>
</div></main>
<!-- End of page content-->
<footer><strong>mini.css</strong> was designed and built with <i class="fa fa-heart-o" aria-hidden="true"></i> by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</footer>
</body>
</html>

1187
docs/quick_reference.html Normal file

File diff suppressed because it is too large Load Diff

360
docs/tab.html Normal file
View File

@@ -0,0 +1,360 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<title>mini.css - Tab</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass, module, tab, tabs">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<meta property="og:title" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta property="og:type" content="website"/>
<meta property="og:description" content="mini.css is a tiny CSS toolkit designed to build quick, modern and responsive websites."/>
<meta property="og:image" content="page_thumb.PNG">
<meta property="og:url" content="https://chalarangelo.github.io/mini.css/">
<link rel="icon" type="image/png" href="favicon.png">
<style>
/* Classes and ids used in multiple pages - page top and utilities */
#header-logo {
display: inline; height: 28px; width: 28px; margin-top: 4px; background: #558b2f; border-radius: 1px;
padding: 4px;
}
#top-logo {
display: inline-block; height: 66px; width: 70px; margin: 64px auto -30px; border-radius: 1px;
background: #558b2f; padding: 8px; padding-top: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
#top-heading {
color: #f5f5f5; font-size: 2.4em; text-shadow: 0 1px 2px rgba(0,0,0,0.35); margin-bottom: -8px;
}
#top-version-tag {
padding: 4px 6px; font-size: 0.85em; font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
.box-centered { text-align: center; }
.box-colored { background: #0277bd; border-radius: 2px; padding: 14px; margin-bottom: 8px; min-height: 14px;}
.box-colored.red { background: #e53935; }
.box-centered > .card.fluid {
-webkit-box-pack: start;
-webkit-box-align: start;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-self: auto;
align-self: auto;
}
[class^='col-'] .card.fluid { margin: 2px 0 20px; }
/* Local classes and ids for this page */
.fore-primary { color: #0d47a1; font-family: monospace, monospace; }
.fore-secondary { color: #b71c1c; font-family: monospace, monospace; }
.fore-tertiary { color: #1b5e20; font-family: monospace, monospace; }
.col-sm-12.col-sm-last.col-md-4.col-md-normal {
box-sizing: border-box;
border-right: 1px solid #bdbdbd;
}
@media (max-width: 767px){
.col-sm-12.col-sm-last.col-md-4.col-md-normal {
border: 0;
border-top: 1px solid #bdbdbd;
}
}
.box-colored.green { background: #689f38; }
.do {
border-top: 15px solid #689f38;
padding-top: 10px;
}
.dont {
border-top: 15px solid #e53935;
padding-top: 10px;
}
.box-colored {
color: #f5f5f5;
}
</style>
</head>
<body>
<header>
<a href="index.html"><img class="logo" src="mini-logo.svg" id="header-logo"></a><div style="display: inline; overflow: auto;">
<a href="index.html" class="button">Introduction</a>
<a href="modules.html" class="button">Modules</a>
<a href="flavors.html" class="button">Flavors</a>
<a href="customization.html" class="button">Customization</a>
<a href="quick_reference.html" class="button">Quick Reference</a>
<a href="https://github.com/Chalarangelo/mini.css" class="button">Github</a>
</div>
</header>
<div class="container" style="height: 320px; background: -webkit-linear-gradient(#455a64,#263238); background: linear-gradient(#455a64,#263238); box-shadow: 0 3px 9px rgba(0,0,0,0.26), 0 3px 6px rgba(0,0,0,0.35);">
<div class="row">
<div class="col-sm">
<div class="box-centered">
<img src="mini-logo.svg" id="top-logo">
<h1 id="top-heading"><span style="font-size: 1.35em;">m</span>ini<span style="font-size:0.65em; color: #558b2f;">.css</span></h1>
<mark class="tertiary" id="top-version-tag">v2.0</mark>
</div>
</div>
</div>
</div>
<!-- Insert your page content here-->
<main><div class="container">
<div class="row" style="padding-top: 40px;">
<div class="col-sm">
<h1>Tab</h1>
<p>The <strong>tab</strong> module aims to combine multiple components and design paradigms, like collapses, accordions, carousels and tabs, into one general-purpose component. Tabs are very simple in structure, responsive on mobile and they allow for layout customization so that you can turn them into accordions or collapses whenever you want.</p>
<p><small>All examples showcased refer to the mini-default flavor, some class names and styles might differ based on the flavor you're using.</small></p>
<ul class="breadcrumbs"><li><a href="index.html">Home</a></li><li><a href="modules.html">Modules</a></li><li>Tab</li></ul>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Quick overview</h2>
<p>Spoilers, collapses, accordions, tabs, carousels have been a staple of modern design for quite a long time. All of these elements are implemented using the <strong>tab</strong> module's single generic container. The tab container replaces all of these design paradigms with one component that is very flexible and responsive in order to let you present your website or app's content any way you like. Tabbed navigation is very easy to implement, while collapse, accordion and carousel components use the stacked architecture of tabs. As usual, the tab container is responsive and accessible, allowing you to deliver your content properly to all devices and users.</p><br>
</div>
<div class="section">
<h2>Quick start</h2>
<p>To use the <strong>tab</strong> module, simply include the link to the flavor you are using and start writing your HTML page as usual. One suggestion we will make is to add the following line inside your HTML page's <code>&lt;head&gt;</code> to utilize the viewport meta tag:</p><br>
<pre>&lt;<span class="fore-tertiary">meta</span> <span class="fore-secondary">name</span>=<span class="fore-primary">&quot;viewport&quot;</span> <span class="fore-secondary">content</span>=<span class="fore-primary">&quot;width=device-width, initial-scale=1&quot;</span>&gt;</pre><br>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Basic syntax</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div class="tabs" style="margin-top: 5px; margin-bottom: 5px;">
<input type="radio" name="tabdemo" id="tab1" checked aria-hidden="true">
<label for="tab1" aria-hidden="true">Tab 1</label>
<div>
<h3>Tab 1</h3>
<p>This is the first tab's content.</p>
</div>
<input type="radio" name="tabdemo" id="tab2" aria-hidden="true">
<label for="tab2" aria-hidden="true">Tab 2</label>
<div>
<h3>Tab 2</h3>
<p>This is the second tab's content.</p>
</div>
<input type="radio" name="tabdemo" id="tab3" aria-hidden="true">
<label for="tab3" aria-hidden="true">Tab 3</label>
<div>
<h3>Tab 3</h3>
<p>This is the third tab's content.</p>
</div>
<input type="radio" name="tabdemo" id="tab4" aria-hidden="true">
<label for="tab4" aria-hidden="true">Tab 4</label>
<div>
<h3>Tab 4</h3>
<p>This is the fourth tab's content.</p>
</div>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>The tab container's basic sytanx is composed of two components, presented below in the order they should be added to the DOM tree:</p>
<ul>
<li>At the outermost level of the tab container is a <code>&lt;div&gt;</code> element implementing the <code>.tabs</code> class. This serves as the wrapper of the tab container.</li>
<li>Inside the <code>.tabs</code> container, add a set of the following three elements for each tab:
<ol>
<li>First, add an <code>&lt;input <span class="fore-secondary">type</span>=<span class="fore-primary">&quot;radio&quot;</span>&gt;</code> element. Give it a <code><span class="fore-secondary">name</span></code> and an <code><span class="fore-secondary">id</span></code> in order to be able to link to it and group it with the rest of the radio buttons in the container.</li>
<li>Follow the <code>&lt;input&gt;</code> element with a <code>&lt;label&gt;</code> element linking to it. Inside this element, add the text you want to be shown as the title of your tab.</li>
<li>Finally, add a <code>&lt;div&gt;</code> immediately after the <code>&lt;label&gt;</code>'s closing tag. This will be the panel that contains the tab's content. Inside this element, you can add all the content you want in your tab (headings, images, text).</li>
</ol>
</li>
</ul>
<p>Tabs are responsive and will collapse into a stacked display on smaller screens, allowing the user to view the actual content more easily. The tab container's syntax is accessible, but parts of it might confuse screen readers, so we suggest adding the <code><span class="fore-secondary">aria-hidden</span>=<span class="fore-primary">&quot;true&quot;</span></code> to all the <code>&lt;input&gt;</code> and <code>&lt;label&gt;</code> elements inside the <code>.tabs</code> container.</p>
<h3>Sample code</h3>
<pre>&lt;div class=&quot;tabs&quot;&gt;
&lt;input type=&quot;radio&quot; name=&quot;tab-group&quot; id=&quot;tab1&quot; checked aria-hidden=&quot;true&quot;&gt;
&lt;label for=&quot;tab1&quot; aria-hidden=&quot;true&quot;&gt;Tab 1&lt;/label&gt;
&lt;div&gt;
&lt;h3&gt;Tab 1&lt;/h3&gt;
&lt;p&gt;This is the first tab's content.&lt;/p&gt;
&lt;/div&gt;
&lt;input type=&quot;radio&quot; name=&quot;tab-group&quot; id=&quot;tab2&quot; aria-hidden=&quot;true&quot;&gt;
&lt;label for=&quot;tab2&quot; aria-hidden=&quot;true&quot;&gt;Tab 2&lt;/label&gt;
&lt;div&gt;
&lt;h3&gt;Tab 2&lt;/h3&gt;
&lt;p&gt;This is the second tab's content.&lt;/p&gt;
&lt;/div&gt;
&lt;input type=&quot;radio&quot; name=&quot;tab-group&quot; id=&quot;tab3&quot; aria-hidden=&quot;true&quot;&gt;
&lt;label for=&quot;tab3&quot; aria-hidden=&quot;true&quot;&gt;Tab 3&lt;/label&gt;
&lt;div&gt;
&lt;h3&gt;Tab 3&lt;/h3&gt;
&lt;p&gt;This is the third tab's content.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>Tabs are compatible with modern browsers, but might not display properly in older browsers.</li>
<li>Remember to add the <code><span class="fore-secondary">checked</span></code> attribute to one of your <code>&lt;input&gt;</code>s if you want that tab to be the one displayed by default. If none is specified, the first one will be displayed.</li>
<li>The <code>height</code> of the tab container's panel area is <code>400px</code>. If you want to change this default size, please check out the <a href="customization.html">customization</a> page.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;div class=&quot;tabs&quot;&gt;
&lt;input type=&quot;checkbox&quot; name=&quot;tab-group&quot; id=&quot;tab1&quot; checked aria-hidden=&quot;true&quot;&gt;
&lt;label for=&quot;tab1&quot; aria-hidden=&quot;true&quot;&gt;Tab 1&lt;/label&gt;
&lt;div&gt;
&lt;h3&gt;Bad Tab&lt;/h3&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Do not use checkboxes inside the default <code>.tabs</code> container, otherwise you might notice unexpected behavior. If you want to use an <code>&lt;input <span class="fore-secondary">type</span>=<span class="fore-primary">&quot;checkbox&quot;</span>&gt;</code>, check out the next section.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;div class=&quot;tabs&quot;&gt;
&lt;input type=&quot;radio&quot; name=&quot;tab-group&quot; id=&quot;tab1&quot; checked aria-hidden=&quot;true&quot;&gt;
&lt;label for=&quot;tab1&quot; aria-hidden=&quot;true&quot;&gt;Tab 1&lt;/label&gt;
&lt;div&gt;
&lt;h3&gt;Lonely Tab&lt;/h3&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;You can add a single tab in a <code>.tabs</code> container, but what use would that be? You should probably read the next section to see what you can do with a stacked tab container instead.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;div class=&quot;tabs&quot;&gt;
&lt;input type=&quot;radio&quot; name=&quot;tab-group&quot; id=&quot;tab1&quot; checked aria-hidden=&quot;true&quot;&gt;
&lt;label for=&quot;tab1&quot; aria-hidden=&quot;true&quot;&gt;Tab 1&lt;/label&gt;
&lt;input type=&quot;radio&quot; name=&quot;tab-group&quot; id=&quot;tab2&quot; aria-hidden=&quot;true&quot;&gt;
&lt;label for=&quot;tab2&quot; aria-hidden=&quot;true&quot;&gt;Tab 2&lt;/label&gt;
&lt;div&gt;
&lt;h3&gt;Bad Tab&lt;/h3&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h3&gt;Bad Tab&lt;/h3&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;The syntax and structure of the tab container is very strict. Try to follow it exactly as described in this section.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;div class=&quot;tabs&quot;&gt;
&lt;input type=&quot;radio&quot; name=&quot;tab-group&quot; id=&quot;tab1&quot; checked&gt;
&lt;label for=&quot;tab1&quot;&gt;Tab&lt;/label&gt;
&lt;div&gt;
&lt;h3&gt;Not fully accessible tab&lt;/h3&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Remember to use the <code><span class="fore-secondary">aria-hidden</span>=<span class="fore-primary">&quot;true&quot;</span></code> attribute to make your tabs fully accessible.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Stacked tabs</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div class="tabs stacked" style="margin-top: 5px; margin-bottom: 5px;">
<input type="radio" name="accordion" id="a1" autocomplete="off" checked aria-hidden="true">
<label for="a1" aria-hidden="true">Accordion section 1</label>
<div>
<h3>Section 1</h3>
<p>This is the first accordion section's content.</p>
</div>
<input type="radio" name="accordion" id="a2" autocomplete="off" aria-hidden="true">
<label for="a2" aria-hidden="true">Accordion section 2</label>
<div>
<h3>Section 2</h3>
<p>This is the second accordion section's content.</p>
</div>
</div>
<div class="tabs stacked" style="margin-top: 5px; margin-bottom: 5px;">
<input type="checkbox" id="c1" autocomplete="off" aria-hidden="true">
<label for="c1" aria-hidden="true">Collapse section 1</label>
<div>
<p>This is the first collapse section's content.</p>
</div>
<input type="checkbox" id="c2" autocomplete="off" aria-hidden="true">
<label for="c2" aria-hidden="true">Collapse section 2</label>
<div>
<p>This is the second collapse section's content.</p>
</div>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>Apart from the normal tab layout, you can make your tabs stacked instead, using the <code>.stacked</code> class in your <code>.tabs</code> container element. Stacked tabs are more versatile, allowing you to use checkboxes and/or radio buttons to implement collapses, accordions and spoilers. Carousel-styled elements can also be displayed in this fashion, if you wish. Remember to use the <code><span class="fore-secondary">aria-hidden</span>=<span class="fore-primary">&quot;true&quot;</span></code> attribute to make your tabs fully accessible, as before.</p>
<h3>Sample code</h3>
<pre>&lt;div class=&quot;tabs stacked&quot;&gt;
&lt;input type=&quot;radio&quot; name=&quot;accordion&quot; id=&quot;a1&quot; checked aria-hidden=&quot;true&quot;&gt;
&lt;label for=&quot;a1&quot; aria-hidden=&quot;true&quot;&gt;Accordion section 1&lt;/label&gt;
&lt;div&gt;
&lt;h3&gt;Section 1&lt;/h3&gt;
&lt;p&gt;This is the first accordion section's content.&lt;/p&gt;
&lt;/div&gt;
&lt;input type=&quot;radio&quot; name=&quot;accordion&quot; id=&quot;a2&quot;aria-hidden=&quot;true&quot;&gt;
&lt;label for=&quot;a2&quot; aria-hidden=&quot;true&quot;&gt;Accordion section 2&lt;/label&gt;
&lt;div&gt;
&lt;h3&gt;Section 2&lt;/h3&gt;
&lt;p&gt;This is the second accordion section's content.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;tabs stacked&quot;&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;c1&quot; aria-hidden=&quot;true&quot;&gt;
&lt;label for=&quot;c1&quot; aria-hidden=&quot;true&quot;&gt;Collapse section 1&lt;/label&gt;
&lt;div&gt;
&lt;p&gt;This is the first collapse section's content.&lt;/p&gt;
&lt;/div&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;c2&quot; aria-hidden=&quot;true&quot;&gt;
&lt;label for=&quot;c2&quot; aria-hidden=&quot;true&quot;&gt;Collapse section 2&lt;/label&gt;
&lt;div&gt;
&lt;p&gt;This is the second collapse section's content.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li><code>.stacked</code> tabs can be used with either checkboxes or radio buttons.</li>
<li>You can mix and match checkboxes and radio buttons, but we suggest you do not do so, unless you think it is necessary for your design.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;div class=&quot;tabs stacked&quot;&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;c1&quot; aria-hidden=&quot;true&quot;&gt;
&lt;label for=&quot;c1&quot; aria-hidden=&quot;true&quot;&gt;Single collapse&lt;/label&gt;
&lt;div&gt;
&lt;p&gt;This is a singular collapse.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can implement single collapses (otherwise known as spoilers), using a <code>.tabs</code><code>.stacked</code> container with only one checkbox-based tab.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;div class=&quot;tabs stacked&quot;&gt;
&lt;input type=&quot;radio&quot; name=&quot;accordion&quot; id=&quot;a1&quot; checked aria-hidden=&quot;true&quot;&gt;
&lt;label for=&quot;a1&quot; aria-hidden=&quot;true&quot;&gt;Single accordion section&lt;/label&gt;
&lt;div&gt;
&lt;p&gt;This accordion section cannot close once opened&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid having a single radio-based tab in a <code>.tabs</code><code>.stacked</code> container, as this might result in unexpected behavior.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row" style="padding-bottom: 20px; padding-top:20px;">
<div class="col-sm">
<p>If you want to learn more about <strong>mini.css</strong>'s modules, go back to the <a href="modules.html">modules page</a> and choose another module to see its documentation.</p>
</div>
</div>
</div></main>
<!-- End of page content-->
<footer><strong>mini.css</strong> was designed and built with <i class="fa fa-heart-o" aria-hidden="true"></i> by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</footer>
</body>
</html>

560
docs/table.html Normal file
View File

@@ -0,0 +1,560 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<title>mini.css - Table</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass, module, table">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<meta property="og:title" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta property="og:type" content="website"/>
<meta property="og:description" content="mini.css is a tiny CSS toolkit designed to build quick, modern and responsive websites."/>
<meta property="og:image" content="page_thumb.PNG">
<meta property="og:url" content="https://chalarangelo.github.io/mini.css/">
<link rel="icon" type="image/png" href="favicon.png">
<style>
/* Classes and ids used in multiple pages - page top and utilities */
#header-logo {
display: inline; height: 28px; width: 28px; margin-top: 4px; background: #558b2f; border-radius: 1px;
padding: 4px;
}
#top-logo {
display: inline-block; height: 66px; width: 70px; margin: 64px auto -30px; border-radius: 1px;
background: #558b2f; padding: 8px; padding-top: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
#top-heading {
color: #f5f5f5; font-size: 2.4em; text-shadow: 0 1px 2px rgba(0,0,0,0.35); margin-bottom: -8px;
}
#top-version-tag {
padding: 4px 6px; font-size: 0.85em; font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
.box-centered { text-align: center; }
.box-colored { background: #0277bd; border-radius: 2px; padding: 14px; margin-bottom: 8px; min-height: 14px;}
.box-colored.red { background: #e53935; }
.box-centered > .card.fluid {
-webkit-box-pack: start;
-webkit-box-align: start;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-self: auto;
align-self: auto;
}
[class^='col-'] .card.fluid { margin: 2px 0 20px; }
/* Local classes and ids for this page */
.fore-primary { color: #0d47a1; font-family: monospace, monospace; }
.fore-secondary { color: #b71c1c; font-family: monospace, monospace; }
.fore-tertiary { color: #1b5e20; font-family: monospace, monospace; }
.col-sm-12.col-sm-last.col-md-4.col-md-normal {
box-sizing: border-box;
border-right: 1px solid #bdbdbd;
}
@media (max-width: 767px){
.col-sm-12.col-sm-last.col-md-4.col-md-normal {
border: 0;
border-top: 1px solid #bdbdbd;
}
}
.box-colored.green { background: #689f38; }
.do {
border-top: 15px solid #689f38;
padding-top: 10px;
}
.dont {
border-top: 15px solid #e53935;
padding-top: 10px;
}
.box-colored {
color: #f5f5f5;
}
table#carded {
border-collapse: collapse;
border: 0;
width: 100%;
box-shadow: none; }
table#carded thead, table#carded th {
border: 0;
height: 1px;
width: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
clip: rect(0 0 0 0);
-webkit-clip-path: inset(100%);
clip-path: inset(100%); }
table#carded tr {
display: block;
border: 1px solid #bdbdbd;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1), 0 2px 3px rgba(0, 0, 0, 0.15);
background: #fafafa;
margin-bottom: 10px; }
table#carded td {
display: block;
border: 0;
border-bottom: 1px solid #bdbdbd;
text-align: right; }
table#carded td:before {
content: attr(data-label);
float: left;
font-weight: 700; }
table#carded td:last-child {
border-bottom: 0; }
</style>
</head>
<body>
<header>
<a href="index.html"><img class="logo" src="mini-logo.svg" id="header-logo"></a><div style="display: inline; overflow: auto;">
<a href="index.html" class="button">Introduction</a>
<a href="modules.html" class="button">Modules</a>
<a href="flavors.html" class="button">Flavors</a>
<a href="customization.html" class="button">Customization</a>
<a href="quick_reference.html" class="button">Quick Reference</a>
<a href="https://github.com/Chalarangelo/mini.css" class="button">Github</a>
</div>
</header>
<div class="container" style="height: 320px; background: -webkit-linear-gradient(#455a64,#263238); background: linear-gradient(#455a64,#263238); box-shadow: 0 3px 9px rgba(0,0,0,0.26), 0 3px 6px rgba(0,0,0,0.35);">
<div class="row">
<div class="col-sm">
<div class="box-centered">
<img src="mini-logo.svg" id="top-logo">
<h1 id="top-heading"><span style="font-size: 1.35em;">m</span>ini<span style="font-size:0.65em; color: #558b2f;">.css</span></h1>
<mark class="tertiary" id="top-version-tag">v2.0</mark>
</div>
</div>
</div>
</div>
<!-- Insert your page content here-->
<main><div class="container">
<div class="row" style="padding-top: 40px;">
<div class="col-sm">
<h1>Table</h1>
<p>The <strong>table</strong> module provides styling and responsiveness for tables. Simple rules and accessible design paradigms have been used to make creating tables quick and easy. Large tables will collapse to cards when on smaller devices or, if you don't want that, they can be locked into their default, desktop view.</p>
<p><small>All examples showcased refer to the mini-default flavor, some class names and styles might differ based on the flavor you're using.</small></p>
<ul class="breadcrumbs"><li><a href="index.html">Home</a></li><li><a href="modules.html">Modules</a></li><li>Table</li></ul>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Quick overview</h2>
<p>Presenting information the right way is very important, especially so when dealing with large amounts of data. The <strong>table</strong> module reinvents tabular data presentation, using modern styling and responsiveness to help make tables fun again for all users no matter the device size. Tables can be either vertical or horizontal, both collapsing to a card view on smaller devices, so that they are easier to view properly. Horizontal tables are also flexible, allowing you to take as little space as possible, while still providing your users with a pleasant way to view their data. Finally, like in most UI toolkits nowadays, you can stripe your tables to make reading them slightly less tiresome for your users' eyes. Note that all of the table variants are fully accessible.</p><br>
</div>
<div class="section">
<h2>Quick start</h2>
<p>To use the <strong>table</strong> module, simply include the link to the flavor you are using and start writing your HTML page as usual. One suggestion we will make is to add the following line inside your HTML page's <code>&lt;head&gt;</code> to utilize the viewport meta tag:</p><br>
<pre>&lt;<span class="fore-tertiary">meta</span> <span class="fore-secondary">name</span>=<span class="fore-primary">&quot;viewport&quot;</span> <span class="fore-secondary">content</span>=<span class="fore-primary">&quot;width=device-width, initial-scale=1&quot;</span>&gt;</pre><br>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Basic syntax &amp; responsiveness</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div>
<h4>Medium/Large screen layout</h4><hr>
<table class="preset">
<caption>People</caption>
<thead>
<tr>
<th>Name</th>
<th>Surname</th>
<th>Alias</th>
</tr>
</thead>
<tbody>
<tr>
<td data-label="Name">Chad</td>
<td data-label="Surname">Wilberts</td>
<td data-label="Alias">MrOne</td>
</tr>
<tr>
<td data-label="Name">Adam</td>
<td data-label="Surname">Smith</td>
<td data-label="Alias">TheSmith</td>
</tr>
<tr>
<td data-label="Name">Sophia</td>
<td data-label="Surname">Canderson</td>
<td data-label="Alias">Candee</td>
</tr>
</tbody>
</table>
<br>
<h4>Small screen layout</h4><hr>
<table id="carded">
<caption>People</caption>
<thead>
<tr>
<th>Name</th>
<th>Surname</th>
<th>Alias</th>
</tr>
</thead>
<tbody>
<tr>
<td data-label="Name">Chad</td>
<td data-label="Surname">Wilberts</td>
<td data-label="Alias">MrOne</td>
</tr>
<tr>
<td data-label="Name">Adam</td>
<td data-label="Surname">Smith</td>
<td data-label="Alias">TheSmith</td>
</tr>
<tr>
<td data-label="Name">Sophia</td>
<td data-label="Surname">Canderson</td>
<td data-label="Alias">Candee</td>
</tr>
</tbody>
</table>
<br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>Table layout utilizes the <code>&lt;table&gt;</code> HTML element with the following structure (usual tabular structure):</p>
<ol>
<li>On the outermost level, there is the <code>&lt;table&gt;</code> element.</li>
<li>If you want to include a <code>&lt;caption&gt;</code> element, it must by the first element inside the <code>&lt;table&gt;</code> element.</li>
<li>Following the above, you need to add a <code>&lt;thead&gt;</code> element. Inside it, you should usually add one <code>&lt;tr&gt;</code> element, which contains one or more <code>&lt;th&gt;</code> elements.</li>
<li>Immediately after the <code>&lt;thead&gt;</code> element, you can add a <code>&lt;tfoot&gt;</code> element, if you want to. Inside it, you should usually add one or more <code>&lt;tr&gt;</code> elements, which contain one or more <code>&lt;td&gt;</code> elements. </li>
<li>Finally, add your <code>&lt;tbody&gt;</code> element. Inside it, you should usually add one or more <code>&lt;tr&gt;</code> elements, which contain one or more <code>&lt;td&gt;</code> elements. For each <code>&lt;td&gt;</code> element, specify a <code>data-label</code> attribute equal to the heading of the column. This enables responsibility for your table, so that the values in the columns will be properly labeled on mobile devices.</li>
</ol>
<h3>Sample code</h3>
<pre>&lt;table&gt;
&lt;caption&gt;People&lt;/caption&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Name&lt;/th&gt;
&lt;th&gt;Surname&lt;/th&gt;
&lt;th&gt;Alias&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td data-label=&quot;Name&quot;&gt;Chad&lt;/td&gt;
&lt;td data-label=&quot;Surname&quot;&gt;Wilberts&lt;/td&gt;
&lt;td data-label=&quot;Alias&quot;&gt;MrOne&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-label=&quot;Name&quot;&gt;Adam&lt;/td&gt;
&lt;td data-label=&quot;Surname&quot;&gt;Smith&lt;/td&gt;
&lt;td data-label=&quot;Alias&quot;&gt;TheSmith&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-label=&quot;Name&quot;&gt;Sophia&lt;/td&gt;
&lt;td data-label=&quot;Surname&quot;&gt;Canderson&lt;/td&gt;
&lt;td data-label=&quot;Alias&quot;&gt;Candee&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>Tables are responsive by default and will change to a card-like view below a certain screen width. If you'd rather not make them responsive, check the last section on this page.</li>
<li>Specifying the <code>data-label</code> attribute is essential for the responsive version of a table to display properly. You can, however, use a value different from the column's name. Make sure it does not confuse your users, though.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;tr&gt;
&lt;td&gt;Chad&lt;/td&gt;
&lt;td&gt;Wilberts&lt;/td&gt;
&lt;td&gt;MrOne&lt;/td&gt;
&lt;/tr&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Remember to always add a <code>data-label</code> attribute to your <code>&lt;td&gt;</code> elements, as the table's card view is very dependent on them to display properly. <code>&lt;th&gt;</code> elements, however, do not require or utilize this attribute.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;table&gt;
&lt;caption&gt;People&lt;/caption&gt;
&lt;thead&gt;
<span class="fore-secondary">&lt;!-- ... --&gt;</span>
&lt;/thead&gt;
&lt;tbody&gt;
<span class="fore-secondary">&lt;!-- ... --&gt;</span>
&lt;/tbody&gt;
&lt;tfoot&gt;
<span class="fore-secondary">&lt;!-- ... --&gt;</span>
&lt;/tfoot&gt;
&lt;/table&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;The <code>&lt;tfoot&gt;</code> element must always be immediately after the <code>&lt;thead&gt;</code> element, if included.</p>
</div>
<div class="col-sm-12 col-md-6">
<pre>&lt;tbody&gt;
&lt;tr&gt;
&lt;th&gt;Name&lt;/th&gt;
&lt;td data-label=&quot;Name&quot;&gt;Chad&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid inserting <code>&lt;th&gt;</code> elements inside your <code>&lt;tbody&gt;</code> element. If you want to make your tables horizontal or preset their styling in a manner different from the one shown in the previous examples, check the below sections.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;thead&gt;
&lt;tr&gt;
&lt;td data-label=&quot;Name&quot;&gt;Chad&lt;/td&gt;
&lt;/tr&gt;
&lt;/thead&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid using <code>&lt;td&gt;</code> elements inside your <code>&lt;thead&gt;</code>. You should use a <code>&lt;tbody&gt;</code> element instead.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Horizontal tables</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div>
<br><table class="horizontal preset">
<caption>People</caption>
<thead>
<tr>
<th>Name</th>
<th>Surname</th>
<th>Alias</th>
</tr>
</thead>
<tbody>
<tr>
<td data-label="Name">Chad</td>
<td data-label="Surname">Wilberts</td>
<td data-label="Alias">MrOne</td>
</tr>
<tr>
<td data-label="Name">Adam</td>
<td data-label="Surname">Smith</td>
<td data-label="Alias">TheSmith</td>
</tr>
<tr>
<td data-label="Name">Sophia</td>
<td data-label="Surname">Canderson</td>
<td data-label="Alias">Candee</td>
</tr>
<tr>
<td data-label="Name">Nick</td>
<td data-label="Surname">Thomson</td>
<td data-label="Alias">NickThom</td>
</tr>
</tbody>
</table><br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>Horizontal tables can be created, by simply adding the <code>.horizontal</code> class to the root element of your table (i.e. the <code>&lt;table&gt;</code> element). Horizontal tables are flexible, so they can accommodate any amount of data rows and, if there is a lot of data, they will make their overflow scrollable. Remember to add the <code>data-label</code> attribute, as shown in the previous section, to allow your tables to be responsive without any errors. Keep in mind, however, that <code>.horizontal</code> tables do not support the <code>&lt;tfoot&gt;</code> element.</p>
<h3>Sample code</h3>
<pre>&lt;table class=&quot;horizontal&quot;&gt;
&lt;caption&gt;People&lt;/caption&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Name&lt;/th&gt;
&lt;th&gt;Surname&lt;/th&gt;
&lt;th&gt;Alias&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td data-label=&quot;Name&quot;&gt;Chad&lt;/td&gt;
&lt;td data-label=&quot;Surname&quot;&gt;Wilberts&lt;/td&gt;
&lt;td data-label=&quot;Alias&quot;&gt;MrOne&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-label=&quot;Name&quot;&gt;Adam&lt;/td&gt;
&lt;td data-label=&quot;Surname&quot;&gt;Smith&lt;/td&gt;
&lt;td data-label=&quot;Alias&quot;&gt;TheSmith&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td data-label=&quot;Name&quot;&gt;Sophia&lt;/td&gt;
&lt;td data-label=&quot;Surname&quot;&gt;Canderson&lt;/td&gt;
&lt;td data-label=&quot;Alias&quot;&gt;Candee&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>Due to <code>.horizontal</code> tables utilizing the <a href="https://css-tricks.com/snippets/css/a-guide-to-flexbox/">Flexbox Layout</a>, some older browsers may not properly display these tables. This is especially true with legacy versions of Internet Explorer.</li>
<li>Mixing the Flexible Layout Module with <code>&lt;table&gt;</code> elements seems to upset some browsers. We noticed this on an older mobile version of Firefox, where our implementation should work in theory, given the fact that both features are properly supported. If you notice any problems with <code>.horizontal</code> tables, feel free to <a href="https://github.com/Chalarangelo/mini.css/issues/new">submit a new issue on Github</a>.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12">
<pre>&lt;table&gt;
<span class="fore-secondary">&lt;!-- ... --&gt;</span>
&lt;tfoot&gt;
<span class="fore-secondary">&lt;!-- ... --&gt;</span>
&lt;/tfoot&gt;
&lt;/table&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;We already explicitly stated that, due to the way <code>.horizontal</code> tables are styled, the <code>&lt;tfoot&gt;</code> element is not supported. Please refer to the next section if you need to use this element and you want to have a horizontal table layout.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Table variants &amp; matrices</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div>
<br>
<style> .border-fix > td, .border-fix > th { border-top: 0; } </style>
<table class="preset">
<caption>Star Wars Character Alignment Table</caption>
<tbody>
<tr class="border-fix">
<th></th>
<th>Lawful</td>
<th>Neutral</td>
<th>Chaotic</td>
</tr>
<tr>
<th>Good</th>
<td>Yoda</td>
<td>Luke Skywalker</td>
<td>Chewbacca</td>
</tr>
<tr>
<th>Neutral</th>
<td>C-3PO</td>
<td>Boba Fett</td>
<td>Han Solo</td>
</tr>
<tr>
<th>Bad</th>
<td>Darth Vader</td>
<td>Emperor Palpatine</td>
<td>Jabba the Hutt</td>
</tr>
</tbody>
</table><br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>Tables are responsive by default, however you can disable this functionality for one or more tables (normal or <code>.horizontal</code>), using the <code>.preset</code> class. This class can also be used for a multitude of things, like dealing with tables not allowing you to have <code>&lt;th&gt;</code> elements inside the <code>&lt;tbody&gt;</code> element, building matrices (i.e. tables with a header column and a header row) etc. Finally, you can make your tables use a different color for every other row, using the <code>.striped</code> class.</p>
<h3>Sample code</h3>
<p>The sample code is a bit lengthy, so we hid it by default to make it easier for mobile device users to read this page. Click or tap on <strong>Show sample code</strong> below to see the code sample for this example. By the way, we present a sample for a matrix table in he first example, but you can use the same principles and classes to create any table layout you wish.</p><br>
<div class="container"><div class="row"><div class="tabs stacked"">
<input type="checkbox" id="grid-base-sample" autocomplete="off">
<label for="grid-base-sample">Show sample code</label>
<div>
<pre>&lt;table class=&quot;preset&quot;&gt;
&lt;caption&gt;Star Wars Character Alignment Table&lt;/caption&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;Lawful&lt;/td&gt;
&lt;th&gt;Neutral&lt;/td&gt;
&lt;th&gt;Chaotic&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;Good&lt;/th&gt;
&lt;td&gt;Yoda&lt;/td&gt;
&lt;td&gt;Luke Skywalker&lt;/td&gt;
&lt;td&gt;Chewbacca&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;Neutral&lt;/th&gt;
&lt;td&gt;C-3PO&lt;/td&gt;
&lt;td&gt;Boba Fett&lt;/td&gt;
&lt;td&gt;Han Solo&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;Bad&lt;/th&gt;
&lt;td&gt;Darth Vader&lt;/td&gt;
&lt;td&gt;Emperor Palpatine&lt;/td&gt;
&lt;td&gt;Jabba the Hutt&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;table class=&quot;striped&quot;&gt;
&lt;caption&gt;People&lt;/caption&gt;
&lt;thead&gt;
<span class="fore-primary">&lt;!-- ... --&gt;</span>
&lt;/thead&gt;
&lt;tbody&gt;
<span class="fore-primary">&lt;!-- ... --&gt;</span>
&lt;/tbody&gt;
&lt;/table&gt;</pre></div></div></div></div><br>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>Making a table <code>.striped</code> also affects the color of the cards in their responsive view on mobile devices.</li>
<li>If you create a <code>.preset</code> table, which you do not want to alter via Javascript to be responsive at any time in the future, you can omit the <code>data-label</code> attributes.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;style&gt;
.border-fix &gt; td, .border-fix &gt; th {
border-top: 0;
}
&lt;/style&gt;
&lt;table class=&quot;preset&quot;&gt;
&lt;tbody&gt;
&lt;tr class=&quot;border-fix&quot;&gt;
<span class="fore-tertiary">&lt;!-- ... --&gt;</span>
&lt;/tr&gt;
<span class="fore-tertiary">&lt;!-- ... --&gt;</span>
&lt;/tbody&gt;
&lt;/table&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;The first row in a preset matrix table or any table without a <code>&lt;thead&gt;</code> element will have an extra border at the top. You can use a generic class to set <code>border-to: 0;</code> for the elements inside that row to fix this.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;table class=&quot;horizontal preset&quot;&gt;
<span class="fore-tertiary">&lt;!-- ... -&gt;</span>
&lt;/table&gt;
<span class="fore-tertiary">&lt;!-- or --&gt;</span>
&lt;table class=&quot;horizontal striped&quot;&gt;
<span class="fore-tertiary">&lt;!-- ... -&gt;</span>
&lt;/table&gt;
<span class="fore-tertiary">&lt;!-- or --&gt;</span>
&lt;table class=&quot;preset striped&quot;&gt;
<span class="fore-tertiary">&lt;!-- ... -&gt;</span>
&lt;/table&gt;
<span class="fore-tertiary">&lt;!-- or --&gt;</span>
&lt;table class=&quot;preset horizontal striped&quot;&gt;
<span class="fore-tertiary">&lt;!-- ... -&gt;</span>
&lt;/table&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can combine any two of the following classes without any problems: <code>.horizontal</code>, <code>.preset</code>, <code>.striped</code>. Just make sure you respect each one's specific rules.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row" style="padding-bottom: 20px; padding-top:20px;">
<div class="col-sm">
<p>If you want to learn more about <strong>mini.css</strong>'s modules, go back to the <a href="modules.html">modules page</a> and choose another module to see its documentation.</p>
</div>
</div>
</div></main>
<!-- End of page content-->
<footer><strong>mini.css</strong> was designed and built with <i class="fa fa-heart-o" aria-hidden="true"></i> by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</footer>
</body>
</html>

375
docs/utility.html Normal file
View File

@@ -0,0 +1,375 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v2.0.2/dist/mini-default.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<title>mini.css - Utility</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass, module, utility, helper, classes, utilities">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<meta property="og:title" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta property="og:type" content="website"/>
<meta property="og:description" content="mini.css is a tiny CSS toolkit designed to build quick, modern and responsive websites."/>
<meta property="og:image" content="page_thumb.PNG">
<meta property="og:url" content="https://chalarangelo.github.io/mini.css/">
<link rel="icon" type="image/png" href="favicon.png">
<style>
/* Classes and ids used in multiple pages - page top and utilities */
#header-logo {
display: inline; height: 28px; width: 28px; margin-top: 4px; background: #558b2f; border-radius: 1px;
padding: 4px;
}
#top-logo {
display: inline-block; height: 66px; width: 70px; margin: 64px auto -30px; border-radius: 1px;
background: #558b2f; padding: 8px; padding-top: 12px; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
#top-heading {
color: #f5f5f5; font-size: 2.4em; text-shadow: 0 1px 2px rgba(0,0,0,0.35); margin-bottom: -8px;
}
#top-version-tag {
padding: 4px 6px; font-size: 0.85em; font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}
.box-centered { text-align: center; }
.box-colored { background: #0277bd; border-radius: 2px; padding: 14px; margin-bottom: 8px; min-height: 14px;}
.box-colored.red { background: #b71c1c; }
.box-centered > .card.fluid {
-webkit-box-pack: start;
-webkit-box-align: start;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-self: auto;
align-self: auto;
}
[class^='col-'] .card.fluid { margin: 2px 0 20px; }
/* Local classes and ids for this page */
.fore-primary { color: #0d47a1; font-family: monospace, monospace; }
.fore-secondary { color: #b71c1c; font-family: monospace, monospace; }
.fore-tertiary { color: #1b5e20; font-family: monospace, monospace; }
.col-sm-12.col-sm-last.col-md-4.col-md-normal {
box-sizing: border-box;
border-right: 1px solid #bdbdbd;
}
@media (max-width: 767px){
.col-sm-12.col-sm-last.col-md-4.col-md-normal {
border: 0;
border-top: 1px solid #bdbdbd;
}
}
.box-colored.green { background: #1b5e20; }
.do {
border-top: 15px solid #689f38;
padding-top: 10px;
}
.dont {
border-top: 15px solid #e53935;
padding-top: 10px;
}
.box-colored {
color: #f5f5f5;
}
</style>
</head>
<body>
<header>
<a href="index.html"><img class="logo" src="mini-logo.svg" id="header-logo"></a><div style="display: inline; overflow: auto;">
<a href="index.html" class="button">Introduction</a>
<a href="modules.html" class="button">Modules</a>
<a href="flavors.html" class="button">Flavors</a>
<a href="customization.html" class="button">Customization</a>
<a href="quick_reference.html" class="button">Quick Reference</a>
<a href="https://github.com/Chalarangelo/mini.css" class="button">Github</a>
</div>
</header>
<div class="container" style="height: 320px; background: -webkit-linear-gradient(#455a64,#263238); background: linear-gradient(#455a64,#263238); box-shadow: 0 3px 9px rgba(0,0,0,0.26), 0 3px 6px rgba(0,0,0,0.35);">
<div class="row">
<div class="col-sm">
<div class="box-centered">
<img src="mini-logo.svg" id="top-logo">
<h1 id="top-heading"><span style="font-size: 1.35em;">m</span>ini<span style="font-size:0.65em; color: #558b2f;">.css</span></h1>
<mark class="tertiary" id="top-version-tag">v2.0</mark>
</div>
</div>
</div>
</div>
<!-- Insert your page content here-->
<main><div class="container">
<div class="row" style="padding-top: 40px;">
<div class="col-sm">
<h1>Utility</h1>
<p>The <strong>utility</strong> module contains all the utilities and helper classes that you might want when designing a website or application. They solve common design problems efficiently and provide you with generic rules you can easily apply everywhere.</p>
<p><small>All examples showcased refer to the mini-default flavor, some class names and styles might differ based on the flavor you're using.</small></p>
<ul class="breadcrumbs"><li><a href="index.html">Home</a></li><li><a href="modules.html">Modules</a></li><li>Utility</li></ul>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Quick overview</h2>
<p>Every website or app has different needs and no UI toolkit can predict them all. The <strong>utility</strong> module addresses this issue by providing you with a handful of utility and helper classes to make common, repetitive declarations easier. These classes include, but are not limited to, generic border styling and shadows, floats, centering and clearfix classes, some responsive sizing and spacing utilities and a few other things, like a close icon, breadcrumbs styling and visiblity helpers for screen readers.</p><br>
</div>
<div class="section">
<h2>Quick start</h2>
<p>To use the <strong>utility</strong> module, simply include the link to the flavor you are using and start writing your HTML page as usual. One suggestion we will make is to add the following line inside your HTML page's <code>&lt;head&gt;</code> to utilize the viewport meta tag:</p><br>
<pre>&lt;<span class="fore-tertiary">meta</span> <span class="fore-secondary">name</span>=<span class="fore-primary">&quot;viewport&quot;</span> <span class="fore-secondary">content</span>=<span class="fore-primary">&quot;width=device-width, initial-scale=1&quot;</span>&gt;</pre><br>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Visibility helpers</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-first">
<p>You can hide content for all your users, using the default <code><span class="fore-secondary">hidden</span></code> attribute. However, we provide you with the <code>.hidden</code> class for the same purpose, as well as the <code>.visually-hidden</code> class which will make your content hidden, except for screen readers.</p>
<h3>Sample code</h3>
<pre>&lt;span class=&quot;hidden&quot;&gt;Hidden text&lt;/span&gt;
&lt;span class=&quot;visually-hidden&quot;&gt;Screen-reader-only text&lt;/span&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>Both classes utilize <code><span class="fore-secondary">!important</span></code> declarations, so be careful when and how to use them.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12">
<pre>&lt;span class=&quot;hidden visually-hidden&quot;&gt;Not a good idea&lt;/span&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid using both classes at the same time. Instead, use <code>.hidden</code> to hide content for all users, <code>.visually-hidden</code> to hide it for non-screen-reader users or <code><span class="fore-secondary">aria-hidden</span>=<span class="fore-primary">&quot;true&quot;</span></code> to hide it for screen-reader-only users.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Floats, centering &amp; clearfix</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-first">
<p>You can easily make content float left or right, using the <code>.float-left</code> and <code>.float-right</code> classes. Clear all floats, using the <code>.clearfix</code> class, based on the <a href="http://nicolasgallagher.com/micro-clearfix-hack/">micro clearfix</a> by Nicolas Gallagher. Finally, use the <code>.center-block</code> class to make an element center and display as a block.</p>
<h3>Sample code</h3>
<pre>&lt;span class=&quot;float-left&quot;&gt;Float left&lt;/span&gt;
&lt;span class=&quot;float-right&quot;&gt;Float right&lt;/span&gt;
&lt;span class=&quot;clearfix&quot;&gt;Clearfix&lt;/span&gt;
&lt;span class=&quot;center-block&quot;&gt;Center block&lt;/span&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>All of these classes utilize <code><span class="fore-secondary">!important</span></code> declarations, so be careful when and how to use them.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12">
<pre>&lt;span class=&quot;float-left float-right&quot;&gt;Avoid this&lt;/span&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid combining any two of the above classes (except if you use <code>.clearfix</code> to temporarily clear a float or something similar), as they might overwrite each other and cause unexpected behavior.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Generic borders &amp; shadows</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div>
<br>
<p>This is a paragraph with a piece of <span class="bordered">bordered text</span>.</p>
<button class="bordered">Bordered button</button><button class="bordered primary">Bordered button</button><br>
<p><img src="http://placehold.it/200x200?text=rounded" class="rounded">&nbsp;&nbsp;<img src="http://placehold.it/200x200?text=circular" class="circular"></p><br>
<p><span class="shadow-none">No shadow</span>&nbsp;&nbsp;<span class="shadow-small">Small shadow</span>&nbsp;&nbsp;<span class="shadow-medium">Medium shadow</span>&nbsp;&nbsp;<span class="shadow-large">Large shadow</span></p><br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>Use the <code>.bordered</code> class to apply a generic black border with 25% opacity to any element. Apart from that you can use the <code>.rounded</code> and <code>.circular</code> classes to create generic border radiuses. Finally, you can use the <code>.shadow-small</code>, <code>.shadow-medium</code> and <code>.shadow-large</code> to add a generic <code><span class="fore-secondary">box-shadow</span></code> to any element, as well as the <code>.shadow-none</code> class to remove it entirely.</p>
<h3>Sample code</h3>
<pre>&lt;span class=&quot;bordered&quot;&gt;Bordered&lt;/span&gt;
&lt;span class=&quot;rounded&quot;&gt;Rounded&lt;/span&gt;
&lt;span class=&quot;circular&quot;&gt;Circular&lt;/span&gt;
&lt;span class=&quot;shadow-none&quot;&gt;No shadow&lt;/span&gt;
&lt;span class=&quot;shadow-small&quot;&gt;Small shadow&lt;/span&gt;
&lt;span class=&quot;shadow-medium&quot;&gt;Medium shadow&lt;/span&gt;
&lt;span class=&quot;shadow-large&quot;&gt;Large shadow&lt;/span&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>All of these classes utilize <code><span class="fore-secondary">!important</span></code> declarations, so be careful when and how to use them.</li>
<li>The <code>.bordered</code> class was originally created with elements such as buttons in mind, to allow users highlighting certain elements in their designs, without having to change any default styles.</li>
<li>All of the above classes can be used with most modern HTML elements.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;span class=&quot;bordered rounded shadow-small&quot;&gt;Stylized element&lt;/span&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can combine a generic border with any border radius or shadow or even both.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;span class=&quot;rounded circular&quot;&gt;Bad radius&lt;/span&gt;
<span class="fore-secondary">&lt;!-- or --&gt;</span>
&lt;span class=&quot;shadow-small shadow-large&quot;&gt;Bad shadow&lt;/span&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid combining two classes of the same type (i.e. two radii or two shadow styles), as they might overwrite each other and cause unexpected behavior.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Responsive sizing &amp; spacing classes</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-first">
<p>Helper classes for the <code>padding</code> and <code>margin</code> attributes are provided in the form of <code>.responsive-margin</code> and <code>.responsive-padding</code> classes. Both of these classes are responsive, allowing you to collapse the spacing and size of elements on different displays to make better use of the device's viewport.</p>
<h3>Sample code</h3>
<pre>&lt;div class=&quot;responsive-padding&quot;&gt;Responsive padding&lt;/div&gt;
&lt;div class=&quot;responsive-margin&quot;&gt;Responsive margin&lt;/div&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>If the default values of these classes are not suited to your needs, check out the <a href="customization.html">customization</a> page.</li>
<li>Both classes utilize <code><span class="fore-secondary">!important</span></code> declarations, so be careful when and how to use them.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12">
<pre>&lt;div class=&quot;responsive-padding responsive-margin&quot;&gt;Responsive padding and margin&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can use both of these classes to make certain element adapt to changes. This could be especially useful for certain grid layouts.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Breadcrumbs</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div>
<br>
<ul class="breadcrumbs">
<li><a href="#">Root</a></li>
<li><a href="#">Folder</a></li>
<li>File</li>
</ul>
<br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>Breadcrumbs are usually used to show the navigational hierarchy of pages or folders. To use them, simply create a <code>&lt;ul&gt;</code> element that implements the <code>.breadcrumbs</code> class. Inside this unordered list, add as many <code>&lt;li&gt;</code> elements as needed to show your hierarchy. You can add links to the list elements, as necessary.</p>
<h3>Sample code</h3>
<pre>&lt;ul class=&quot;breadcrumbs&quot;&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Root&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Folder&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;File&lt;/li&gt;
&lt;/ul&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>The separators between breadcrumbs are added using some tricky CSS rules. Due to that, there might be a few browser versions or devices where you can see part of the seams between the element separators.</li>
<li>Breadcrumbs show a hierarchy, an ordered list. However, we do not use the <code>&lt;ol&gt;</code> element, as it might conflict with some custom styles we've seen people use.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;ol class=&quot;breadcrumbs&quot;&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Does&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Not&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Work&lt;/li&gt;
&lt;/ol&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;The structure of the breadcrumb component prohibits the use of <code>&lt;ol&gt;</code> in place of the <code>&lt;ul&gt;</code> element.</p>
</div>
<div class="col-sm-12 col-md-6 col-sm-last col-md-normal">
<pre>&lt;ul class=&quot;breadcrumbs&quot;&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Root&lt;/a&gt;
&lt;ul class=&quot;breadcrumbs&quot;&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Folder&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;File&lt;/li&gt;
&lt;/ul&gt;</pre>
<p class="dont"><mark class="secondary">Don't:</mark>&nbsp;Avoid nesting lists, breadcrumbs or a combination of the two inside the <code>.breadcrumbs</code> list, as this might cause unexpected behavior.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm">
<div class="card fluid">
<div class="section">
<h2>Close icon</h2>
</div>
<div class="section row">
<div class="col-sm-12 col-sm-last col-md-4 col-md-normal">
<div>
<br>
<p style="text-align:center;">&nbsp;&nbsp;<span class="close"></span>&nbsp;&nbsp;</p>
<br>
</div>
</div>
<div class="col-sm-12 col-sm-first col-md-8 col-md-normal">
<p>To create a close icon, simply add an element implementing the <code>.close</code> class.</p>
<h3>Sample code</h3>
<pre>&lt;span class=&quot;close&quot;&gt;&lt;/span&gt;</pre>
</div>
</div>
<div class="section">
<h3>Notes</h3>
<ul>
<li>The close icon behaves similar to a button when hovering over it or otherwise focusing or selecting it.</li>
</ul>
<hr>
<div class="row">
<div class="col-sm-12 col-md-6">
<pre>&lt;div class=&quot;close&quot;&gt;&lt;/div&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;You can use a handful of other HTML elements instead of the <code>&lt;span&gt;</code> element showcased in the example above, most commonly <code>&lt;div&gt;</code> elements.</p>
</div>
<div class="col-sm-12 col-md-6">
<pre>&lt;button class=&quot;close&quot;&gt;&lt;/button&gt;</pre>
<p class="do"><mark class="tertiary">Do:</mark>&nbsp;If you want your close icon to behave like a button (i.e. register as a button on screen readers and have the required logic attached to it), you can apply the <code>.close</code> class to a <code>&lt;button&gt;</code> element instead. You can even apply any of the button color variant classes.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row" style="padding-bottom: 20px; padding-top:20px;">
<div class="col-sm">
<p>If you want to learn more about <strong>mini.css</strong>'s modules, go back to the <a href="modules.html">modules page</a> and choose another module to see its documentation.</p>
</div>
</div>
</div></main>
<!-- End of page content-->
<footer><strong>mini.css</strong> was designed and built with <i class="fa fa-heart-o" aria-hidden="true"></i> by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</footer>
</body>
</html>

View File

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

BIN
docs/v1/favicon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

123
docs/v1/index.html Normal file
View File

@@ -0,0 +1,123 @@
<!DOCTYPE html>
<html>
<head>
<title>mini.css - A minimal Sass-y responsive mobile-first style-agnostic CSS framework</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - A minimal Sass-y responsive mobile-first style-agnostic CSS framework">
<meta name="keywords" content="mini, mini.css, CSS, responsive, framework, mobile first, style agnostic, Sass">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<link rel="icon" type="image/png" href="favicon.png">
<!-- For local testing only -->
<!-- <link rel="stylesheet" href="../flavors/mini-default.min.css"> -->
<!-- Correct link -->
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v1.1.0/flavors/mini-default.min.css">
<style>
.footer{background-color:#272727; color:#ddd;}
.footer a, .footer a:hover, .footer a:visited, .footer a:visited:hover, .footer a:active, .footer a:visited:active{color: #fff;}
.footer a:hover{text-decoration: underline;}
</style>
</head>
<body>
<input type="checkbox" class="hidden" id="nav-toggle" autocomplete="off" class="hidden">
<div class="nav fixed">
<a href="https://chalarangelo.github.io/mini.css"><span class="logo">&nbsp;<img src="favicon.png" style="height: 34px; width: auto; display: inline-block; vertical-align: middle;">&nbsp;mini.css&nbsp;</span></a>
<ul>
<li><a href="https://chalarangelo.github.io/mini.css/#why-mini-css" class="link">Introduction</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/#modules" class="link">Module overview</a></li>
<li><label class="link dropdown" for="menu-drop1">Module demos</label></li>
</ul>
<input type="checkbox" id="menu-drop1" class="dropdown" autocomplete="off"><div>
<ul>
<li><a href="https://chalarangelo.github.io/mini.css/modules#base" class="link">Base</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#grid" class="link">Responsive Grid</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#nav" class="link">Navigation</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#dropdown" class="link">Dropdowns</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#tab" class="link">Tabs</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#table" class="link">Tables</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#form" class="link">Forms</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#button" class="link">Buttons</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#label" class="link">Labels</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#modal" class="link">Modals</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#collapse" class="link">Collapse</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#progress" class="link">Progress Bars</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#carousel" class="link">Carousel</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#utility" class="link">Utilities &amp; Helper Classes</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#utility-extra" class="link">Utilities &amp; Experimental Classes</a></li>
</ul>
</div>
</div>
<label for="nav-toggle"></label>
<br>
<div class="grid-container">
<div class="row">
<div class="col xs-no md-1"></div>
<div class="col xs-12 md-10">
<h1>mini.css<small> a minimal Sass-y responsive mobile-first style-agnostic CSS framework</small></h1>
<p>If you want to create your own flavor, get involved or report an issue, head over to <strong>mini.css</strong>'s <a href="https://github.com/Chalarangelo/mini.css">Github repository</a> or the <a href="https://github.com/Chalarangelo/mini.css/wiki">wiki</a>. If you want to give <strong>mini.css</strong> a try using the default flavor, paste the following code inside your HTML page's <code>&lt;head&gt;</code> tag:</p>
<pre style="overflow: auto;">&lt;link rel=<span class="txt-green">&quot;stylesheet&quot;</span> href=<span class="txt-blue">&quot;https://cdn.rawgit.com/Chalarangelo/mini.css/v1.1.0/flavors/mini-default.min.css&quot;</span>&gt;</pre>
<p>If you'd rather use a package manager, <strong>mini.css</strong> is available in both Bower and NPM:</p>
<pre style="margin-left: 1px; border-left: 5px solid #3f84b3; border-top-left-radius: 0; border-bottom-left-radius: 0;"> <span class="txt-blue">bower install</span> mini.css</pre>
<pre style="margin-left: 1px; border-left: 5px solid #3f84b3; border-top-left-radius: 0; border-bottom-left-radius: 0;"> <span class="txt-blue">npm install</span> mini.css</pre><br>
<h2 id="why-mini-css">Why mini.css?</h2><hr>
<ul>
<li><strong>Size matters!</strong> - The key focus of <strong>mini.css</strong> is to provide developers with a very light framework to build their pages with. To accomplish this, we stripped down most of the commonly-used components to their essentials, utilising the magic of CSS. By building lighter components, using only CSS, we made <strong>mini.css</strong> really tiny, just under 5KB for the default flavor.</li>
<li><strong>Easily customize your pages!</strong> - <strong>mini.css</strong> does not rely on a huge monolithic CSS file to do everything. In fact, we split the framework into smaller modules using Sass(SCSS), so you can easily distinguish what pieces you want in your final stylesheet. But that's not all! Every single detail of the provided modules can be changed, from colors and border styles to class names and structure. It's all really simple and you can do it without a lot of CSS or Sass knowledge. These customized stylesheets are called <strong>flavors</strong> and are one of the key differences between <strong>mini.css</strong> and other frameworks.</li>
<li><strong>We are mobile-friendly!</strong><sup>*</sup> - That's right! We built <strong>mini.css</strong> from the ground up to support mobile devices as best as possible and be responsive. All of this functionality can be fully customized to suit your end-users.</li>
<li><strong>No Javascript!</strong> - As much as we all love Javascript, we tried to keep all of the modules in <strong>mini.css</strong> pure CSS. This means no dependencies on Javascript libraries or excessive code for events you might never use.</li>
</ul>
<small>(*): We do not want to claim that any website will ever instantly work 100% the way you want on mobile, but mini.css eliminates a lot of the tedious work of making your websites mobile-friendly, so you can focus on the interesting parts that actually need your attention.</small>
<h2 id="modules">What does it contain?</h2>
<p><strong>mini.css</strong> is split up into modules, each with a specific focus or set of components. These modules are categorized under core modules and extra modules. We suggest that you use most of the core modules in your projects, as most projects can make good use of them. As for the extra modules, we suggest you carefully pick the ones you need for your project. Below is a quick overview of all the modules:</p>
<ul>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#base">Core : Base</a></h3><p>A modified version of <a href="https://necolas.github.io/normalize.css/">normalize.css</a> combined with a long list of variables produces a customized base for your projects along with typography rules and colors.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#grid">Core : Responsive Grid</a></h3><p>A customizable reponsive grid that lets you build pages that look great on all devices wih minimal tweaking..</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#nav">Core : Navigation</a></h3><p>A customizable responsive navigation bar for your pages.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#dropdown">Extra : Navigation - Dropdown</a></h3><p>The navigation system can easily be extended using the dropdown component.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#tab">Extra : Navigation - Tabs</a></h3><p>If you would rather use tabs instead of the usual navigation bar, you can use this module to enable tabbed navigation.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#table">Core : Tables</a></h3><p>Give a fresh style to your tables without overloading your page.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#form">Core : Forms</a></h3><p>Simple, elegant and light forms that will work well and give feedback to the user.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#button">Core : Buttons</a></h3><p>Tiny button styles that allow you to beautify your buttons, labels and links.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#label">Extra : Labels &amp; Badges</a></h3><p>Small badges and labels to provide your user's with all the info they need.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#modal">Extra : Modals</a></h3><p>Modal dialog prompts to notify your users the easy way.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#collapse">Extra : Collapse</a></h3><p>Hide and show text using customizable collapse buttons.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#progress">Extra : Progress Bars</a></h3><p>A simple module that allows you to create progess bars for your pages.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#carousel">Extra : Carousel</a></h3><p>Really light and customizable imaage slideshow for all your showcase needs.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#utility">Core : Utilities &amp; Helper Classes</a></h3><p>Classes for generic borders, image thumbnails, contextual text coloring, utility buttons and more.</p></li>
<li><h3><a href="https://chalarangelo.github.io/mini.css/modules#utility-extra">Extra : Utilities &amp; Experimental Classes</a></h3><p>Breadcrumbs, containers, panels, alerts, popovers, button groups and more.</p></li>
</ul>
</div>
</div>
<div class="row footer">
<div class="col xs-no md-1"></div>
<div class="col xs-12 md-10 footer">
<p style="padding-top: 10px;"><strong>mini.css</strong> was designed and built by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</p>
</div>
</div>
</div>
</body>
</html>

View File

@@ -10,10 +10,8 @@
<link rel="icon" type="image/png" href="favicon.png">
<!-- For local testing only -->
<!-- <link rel="stylesheet" href="../flavors/mini-niteowl.min.css"> -->
<!-- Old link -->
<!-- <link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/6b3db97a893cf4e7ec1b9f5aa40fc5957b1b94fc/flavors/mini-default.min.css"> -->
<!-- Correct link -->
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/1.0.0/flavors/mini-niteowl.min.css">
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v1.1.0/flavors/mini-niteowl.min.css">
<style>
.panelcode{ border-top-left-radius:0; border-top-right-radius:0; margin-bottom:0; }
pre{ overflow: auto; }
@@ -23,9 +21,15 @@
input[type="checkbox"]:checked.stateful+label{display:none;}
input[type="checkbox"]:checked.stateful+label+label{display:block;}
.btn-grp .btn{margin-left:-5px;}
.footer{background-color:#243447; color:#f5f5f5;}
.footer{background-color:#272727; color:#ddd;}
.footer a, .footer a:hover, .footer a:visited, .footer a:visited:hover, .footer a:active, .footer a:visited:active{color: #fff;}
.footer a:hover{text-decoration: underline;}
.panel > .nav , .panel > .bordered, .panel > .circle{ padding: 0 !important; }
.panel > .btn { padding: 6px 12px !important;}
.panel > .lbl { padding: 6px 10px !important; }
.panel > .bdg { padding: 3px 8px !important; }
.panel > .well { padding: 20px !important; }
.panel code, .panel kbd, .panel pre{ padding: 2px 4px !important; }
</style>
</head>
<body>
@@ -67,7 +71,7 @@
<h1>mini.css<small> a minimal Sass-y responsive mobile-first style-agnostic CSS framework</small></h1>
<p>Below you can see each module in action, along with certain suggestions on how to add functionality to the various components. Bear in mind that this demo is for the <strong>NiteOwl</strong> flavor. Naming conventions may vary between flavors, however the structure and functionality of the modules should be the same. Please refer to specific flavors for those differences. The <strong><a href="https://chalarangelo.github.io/mini.css/modules">Default</a></strong> flavor uses the same naming conventions for the module components, so you won't have any trouble. If you are migrating from Bootstrap and want to use the <strong>Bootstrap</strong> flavor, most naming conventions are based on the original naming conventions of Bootstrap 3.3.7.</p>
<p><strong>To use the Default flavor, add the following code inside your HTML page's <code>&lt;head&gt;</code> tag:</strong></p>
<pre style="overflow: auto;">&lt;link rel=&quot;stylesheet&quot; href=&quot;https://cdn.rawgit.com/Chalarangelo/mini.css/1.0.0/flavors/mini-niteowl.min.css&quot;&gt;</pre><br>
<pre style="overflow: auto;">&lt;link rel=&quot;stylesheet&quot; href=&quot;https://cdn.rawgit.com/Chalarangelo/mini.css/v1.1.0/flavors/mini-niteowl.min.css&quot;&gt;</pre><br>
<h2 id="base">Base</h2>
<p>The Base module contains customized typography rules, colors and most of the functionality provided in <a href="https://necolas.github.io/normalize.css/">normalize.css</a>. Below we showcase some of the most important typography styles.</p>
@@ -607,6 +611,15 @@
&lt;span class=&quot;green&quot; style=&quot;width:20%;&quot;&gt;&lt;/span&gt;
&lt;span style=&quot;width:40%;&quot;&gt;&lt;/span&gt;
&lt;/div&gt;</pre>
</div>
<h3>Progress spinners</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
<p>Spinner dots: <span class="spinner-dots"></span></p>
<p>Spinner round: <span class="spinner-round"></span></p>
<br>
<pre class="panelcode">&lt;span class=&quot;spinner-dots&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;spinner-round&quot;&gt;&lt;/span&gt;</pre>
</div><br>
<h2 id="carousel">Carousel</h2>
@@ -693,7 +706,7 @@
<div class="panel" ><h4 class="head">Example</h4><br>
<span>Button with generic border:</span>&nbsp;&nbsp;<button class="btn blue bordered">Button</button><br>
<span>Image with generic border and rounded corners:</span>&nbsp;&nbsp;<img class="bordered rounded" src="favicon.png" style="height: 100px; width: auto; display:inline-block;vertical-align: middle;"><br>
<span>Image with circular corners:</span>&nbsp;&nbsp;<img class="circle" src="favicon.png" style="height: 100px; width: auto; display:inline-block;vertical-align: middle;"><br>
<span>Image with circular corners:</span>&nbsp;&nbsp;<img class="circle" src="favicon.png" style="height: 100px; width: auto; display:inline-block;vertical-align: middle;"><br><br>
<pre class="panelcode">&lt;button class=&quot;btn blue bordered&quot;&gt;Button&lt;/button&gt;
&lt;img class=&quot;bordered rounded&quot; src=&quot;favicon.png&quot;&gt;
&lt;img class=&quot;circle&quot; src=&quot;favicon.png&quot;&gt;</pre>
@@ -792,7 +805,7 @@
<h3>Popovers</h3>
<p>You can show a small overlay of content when the user clicks on specific elements using the <code>.popover-</code> prefix on an <code>&lt;input type=&quot;checkbox&quot;&gt;</code> along with the <code>top</code> or <code>bottom</code> suffix. Add a <code>&lt;label&gt;</code> right after the checkbox linked to it and inside it add another element with the popover's class you are using. When you click the label, the popover will appear above or below the label. Click on the label again or the popover text itself to hide it.</p>
<div class="panel" style="margin-left: 10px; margin-right: 10px; padding:0"><h4 class="head">Example</h4><br>
<div class="panel"><h4 class="head">Example</h4><br>
&nbsp;&nbsp;<input type="checkbox" id="popover1" class="popover-top" autocomplete="off"><label for="popover1" class="btn green">Open top popover<span class="popover-top">This is the popover text.</span></label>
&nbsp;&nbsp;
<input type="checkbox" id="popover2" class="popover-bottom" autocomplete="off"><label for="popover2" class="btn red">Open bottom popover<span class="popover-bottom">This is the popover text.</span></label><br><br>

857
docs/v1/modules.html Normal file
View File

@@ -0,0 +1,857 @@
<!DOCTYPE html>
<html>
<head>
<title>mini.css - A minimal Sass-y responsive mobile-first style-agnostic CSS framework</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - A minimal Sass-y responsive mobile-first style-agnostic CSS framework">
<meta name="keywords" content="mini, mini.css, CSS, responsive, framework, mobile first, style agnostic, Sass">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<link rel="icon" type="image/png" href="favicon.png">
<!-- For local testing only -->
<!-- <link rel="stylesheet" href="../flavors/mini-default.min.css"> -->
<!-- Correct link -->
<link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v1.1.0/flavors/mini-default.min.css">
<style>
.panelcode{ border-top-left-radius:0; border-top-right-radius:0; margin-bottom:0; }
pre{ overflow: auto; }
input[type="checkbox"].stateful{display: none;}
input[type="checkbox"].stateful+label{display:block;}
input[type="checkbox"].stateful+label+label{display:none;}
input[type="checkbox"]:checked.stateful+label{display:none;}
input[type="checkbox"]:checked.stateful+label+label{display:block;}
.btn-grp .btn{margin-left:-5px;}
.footer{background-color:#272727; color:#ddd;}
.footer a, .footer a:hover, .footer a:visited, .footer a:visited:hover, .footer a:active, .footer a:visited:active{color: #fff;}
.footer a:hover{text-decoration: underline;}
.panel > .nav , .panel > .bordered, .panel > .circle{ padding: 0 !important; }
.panel > .btn { padding: 6px 12px !important;}
.panel > .lbl { padding: 6px 10px !important; }
.panel > .bdg { padding: 3px 8px !important; }
.panel > .well { padding: 20px !important; }
.panel code, .panel kbd, .panel pre{ padding: 2px 4px !important; }
</style>
</head>
<body>
<input type="checkbox" class="modal" id="modal1"><div><label for="modal1" autocomplete="off"></label><div><label for="modal1"><span class="close"></span></label><h3>Modal dialog</h3><hr><p>This is a modal dialog.</p></div></div>
<input type="checkbox" id="nav-toggle" autocomplete="off" class="hidden">
<div class="nav fixed">
<a href="https://chalarangelo.github.io/mini.css"><span class="logo">&nbsp;<img src="favicon.png" style="height: 34px; width: auto; display: inline-block; vertical-align: middle;">&nbsp;mini.css&nbsp;</span></a>
<ul>
<li><a href="https://chalarangelo.github.io/mini.css/#why-mini-css" class="link">Introduction</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/#modules" class="link">Module overview</a></li>
<li><label class="link dropdown" for="menu-drop1">Module demos</label></li>
</ul>
<input type="checkbox" id="menu-drop1" class="dropdown" autocomplete="off"><div>
<ul>
<li><a href="https://chalarangelo.github.io/mini.css/modules#base" class="link">Base</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#grid" class="link">Responsive Grid</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#nav" class="link">Navigation</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#dropdown" class="link">Dropdowns</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#tab" class="link">Tabs</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#table" class="link">Tables</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#form" class="link">Forms</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#button" class="link">Buttons</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#label" class="link">Labels</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#modal" class="link">Modals</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#collapse" class="link">Collapse</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#progress" class="link">Progress Bars</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#carousel" class="link">Carousel</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#utility" class="link">Utilities &amp; Helper Classes</a></li>
<li><a href="https://chalarangelo.github.io/mini.css/modules#utility-extra" class="link">Utilities &amp; Experimental Classes</a></li>
</ul>
</div>
</div>
<label for="nav-toggle"></label>
<br>
<div class="grid-container">
<div class="row">
<div class="col xs-no md-1"></div>
<div class="col xs-12 md-10">
<h1>mini.css<small> a minimal Sass-y responsive mobile-first style-agnostic CSS framework</small></h1>
<p>Below you can see each module in action, along with certain suggestions on how to add functionality to the various components. Bear in mind that this demo is for the <strong>Default</strong> flavor. Naming conventions may vary between flavors, however the structure and functionality of the modules should be the same. Please refer to specific flavors for those differences. The <strong><a href="https://chalarangelo.github.io/mini.css/modules-niteowl">NiteOwl</a></strong> flavor uses the same naming conventions for the module components, so you won't have any trouble. If you are migrating from Bootstrap and want to use the <strong>Bootstrap</strong> flavor, most naming conventions are based on the original naming conventions of Bootstrap 3.3.7.</p>
<p><strong>To use the Default flavor, add the following code inside your HTML page's <code>&lt;head&gt;</code> tag:</strong></p>
<pre style="overflow: auto;">&lt;link rel=&quot;stylesheet&quot; href=&quot;https://cdn.rawgit.com/Chalarangelo/mini.css/v1.1.0/flavors/mini-default.min.css&quot;&gt;</pre><br>
<h2 id="base">Base</h2>
<p>The Base module contains customized typography rules, colors and most of the functionality provided in <a href="https://necolas.github.io/normalize.css/">normalize.css</a>. Below we showcase some of the most important typography styles.</p>
<h3>Fonts, sizes and colors</h3>
<p>The default flavor uses the <strong>Helvetica</strong> font family and a font-size of <strong>1em</strong> with a line-height of <strong>1.5</strong>. Colors used are <strong>#f5f5f5</strong> for the background and <strong>#222</strong> for the text. Most of the things in this module are subjective to one's preferences and should be changed according to your liking. Heading, <code>&lt;sub&gt;</code>, <code>&lt;sup&gt;</code> and <code>&lt;small&gt;</code> elements use multipliers, so changing the base font-size should affect those too. Apart from that, colors and styles for links can easily be changed, as well as a lot of other parameters. Images are responsive by default, so they will shrink to fit smaller viewports without any additional work. Below we highlight some important things, like heading and code styling, but you can see most of the typography rules in action in these pages.</p>
<h3>Headings</h3>
<div class="panel"><h4 class="head">Example</h4>
<h1>Heading 1 <small>small text</small></h1>
<h2>Heading 2 <small>small text</small></h2>
<h3>Heading 3 <small>small text</small></h3>
<h4>Heading 4 <small>small text</small></h4>
<h5>Heading 5 <small>small text</small></h5>
<h6>Heading 6 <small>small text</small></h6>
<pre class="panelcode">&lt;h1&gt;Heading 1 &lt;small&gt;small text&lt;/small&gt;&lt;/h1&gt;
&lt;h2&gt;Heading 2 &lt;small&gt;small text&lt;/small&gt;&lt;/h2&gt;
&lt;h3&gt;Heading 3 &lt;small&gt;small text&lt;/small&gt;&lt;/h3&gt;
&lt;h4&gt;Heading 4 &lt;small&gt;small text&lt;/small&gt;&lt;/h4&gt;
&lt;h5&gt;Heading 5 &lt;small&gt;small text&lt;/small&gt;&lt;/h5&gt;
&lt;h6&gt;Heading 6 &lt;small&gt;small text&lt;/small&gt;&lt;/h6&gt;</pre>
</div>
<h3>Code, <code>&lt;pre&gt;</code> and <code>&lt;kbd&gt;</code> elements</h3>
<div class="panel"><h4 class="head">Example</h4>
<p>Inline code looks like <code>this</code>. User input looks like <kbd>this</kbd>. Finally, code blocks look like...</p>
<pre style="margin-left: 10px; margin-right: 10px;">this! This is a code block!</pre>
<br><pre class="panelcode">&lt;code&gt;Inline code&lt;/code&gt;
&lt;kbd&gt;User input&lt;/kbd&gt;
&lt;pre&gt;Code block&lt;/pre&gt;</pre>
</div><br>
<h2 id="grid">Responsive grid</h2>
<p>The grid system provided can be fully customized to use as many columns as you wish and have custom breakpoints for different device sizes. The default grid uses 12 columns (as shown below). Customized classes are also defined to hide certain columns in certain viewport sizes. This can be specifically used to customize column offseting on different devices.</p>
<h3>Grid structure</h3>
<p>The basic grid structure is as follows:</p>
<ul>
<li>The outer wrapper of the grid system uses the <code>.grid-container</code> class.</li>
<li>Inside this wrapper, rows can be defined using the <code>.row</code> class.</li>
<li>Inside the rows, columns can be defined using the <code>.col</code> class.</li>
<li>Column width can be specified for different devices using the respective class prefixes (<code>.xs-</code>, <code>.sm-</code>, <code>.md-</code>, <code>.lg-</code>) followed by the width (in columns) of the specific column.</li>
<li>Columns can be hidden in certain viewports, using the <code>-no</code> suffix for the specific screen size.</li>
</ul>
<h3>12-column grid example</h3>
<div class="panel"><h4 class="head">Example</h4>
<div class="grid-container">
<div class="row">
<div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div>
<div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div>
<div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div>
<div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div><div class="col xs-1 bordered">1/12</div>
</div>
<div class="row">
<div class="col xs-2 bordered">1/6</div><div class="col xs-2 bordered">1/6</div><div class="col xs-2 bordered">1/6</div>
<div class="col xs-2 bordered">1/6</div><div class="col xs-2 bordered">1/6</div><div class="col xs-2 bordered">1/6</div>
</div>
<div class="row">
<div class="col xs-3 bordered">1/4</div><div class="col xs-3 bordered">1/4</div><div class="col xs-3 bordered">1/4</div>
<div class="col xs-3 bordered">1/4</div>
</div>
<div class="row">
<div class="col xs-4 bordered">1/3</div><div class="col xs-4 bordered">1/3</div><div class="col xs-4 bordered">1/3</div>
</div>
<div class="row">
<div class="col xs-6 bordered">1/2</div><div class="col xs-6 bordered">1/2</div>
</div>
<div class="row">
<div class="col xs-12 bordered">1/1</div>
</div>
</div>
<pre class="panelcode">&lt;div class=&quot;grid-container&quot;&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;div class=&quot;col xs-1&quot;&gt;1/12&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col xs-2&quot;&gt;1/6&lt;/div&gt;
&lt;div class=&quot;col xs-2&quot;&gt;1/6&lt;/div&gt;
&lt;div class=&quot;col xs-2&quot;&gt;1/6&lt;/div&gt;
&lt;div class=&quot;col xs-2&quot;&gt;1/6&lt;/div&gt;
&lt;div class=&quot;col xs-2&quot;&gt;1/6&lt;/div&gt;
&lt;div class=&quot;col xs-2&quot;&gt;1/6&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col xs-3&quot;&gt;1/4&lt;/div&gt;
&lt;div class=&quot;col xs-3&quot;&gt;1/4&lt;/div&gt;
&lt;div class=&quot;col xs-3&quot;&gt;1/4&lt;/div&gt;
&lt;div class=&quot;col xs-3&quot;&gt;1/4&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col xs-4&quot;&gt;1/3&lt;/div&gt;
&lt;div class=&quot;col xs-4&quot;&gt;1/3&lt;/div&gt;
&lt;div class=&quot;col xs-4&quot;&gt;1/3&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col xs-6&quot;&gt;1/2&lt;/div&gt;
&lt;div class=&quot;col xs-6&quot;&gt;1/2&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;row&quot;&gt;
&lt;div class=&quot;col xs-12&quot;&gt;1/1&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
</div><br>
<h2 id="nav">Navigation</h2>
<p>The navigation system provided contains custom classes for the navigation bar, logo and links. Navigation bars can be horizontal or vertical, fixed or otherwise. Navigation bars are responsive by default, so fixed navigation bars will properly shrink down to a button on smaller screens and, when the menu is opened, it will be displayed on top of the page's content.</p>
<h3>Navigation structure</h3>
<p>The structure of the navigation system is as follows:</p>
<ul>
<li>You should wrap your navigation system in a <code>&lt;div&gt;</code> with the <code>.nav</code> class.</li>
<li>If you want your navigation bar to be vertical (horizontal is the default), use the <code>.vertical</code> class.</li>
<li>If you want your navigation bar to be fixed, use the <code>.fixed</code> class.</li>
<li>Use an element with the <code>.logo</code> class for your website's logo.</li>
<li>For the navigation links, use an unordered list (<code>&lt;ul&gt;</code>) and <strong>inside</strong> each <code>&lt;li&gt;</code> element, add another element with the <code>.link</code> class to stylize the element as a navigation link.</li>
<li>Responsiveness can be added for fixed navigation bars by adding a hidden <code>&lt;input type=&quot;checkbox&quot;&gt;</code> right before the navigation bar and a label linking to that specific checkbox right after the navigation bar.</li>
<li>Use <code>autocomplete=&quot;off&quot;</code> to make your menu not open by default in mobile devices.</li>
</ul>
<h3>Horizontal navigation bar</h3>
<div class="panel"><h4 class="head">Example</h4><br>
<div class="nav" style="margin-left: 10px; margin-right: 10px;">
<span class="logo">Logo</span>
<ul>
<li><a href="#" class="link">Link 1</a></li>
<li><a href="#" class="link">Link 2</a></li>
</ul>
</div><br>
<pre class="panelcode">&lt;div class=&quot;nav&quot;&gt;
&lt;span class=&quot;logo&quot;&gt;Logo&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 2&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</pre>
</div>
<h3>Vertical navigation bar</h3>
<div class="panel"><h4 class="head">Example</h4><br>
<div class="nav vertical" style="margin-left: 10px; margin-right: 10px;">
<span class="logo">Logo</span>
<ul>
<li><a href="#" class="link">Link 1</a></li>
<li><a href="#" class="link">Link 2</a></li>
</ul>
</div><br>
<pre class="panelcode">&lt;div class=&quot;nav vertical&quot;&gt;
&lt;span class=&quot;logo&quot;&gt;Logo&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 2&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</pre>
</div><br>
<h2 id="dropdown">Dropdowns</h2>
<p>The dropdown module is an extra module that allows you to add dropdown components to your navigation bars. These components can be customized and work well on mobile devices. <strong>Using too many dropdowns or nesting dropdowns is yet undocumented and might cause unexpected behavior.</strong></p>
<h3>Dropdown structure</h3>
<p>The basic structure of dropdowns is as follows</p>
<ul>
<li>To add a dropdown component, add the <code>.dropdown</code> class to one of your link elements inside the navigation bar.</li>
<li>Add an <code>&lt;input type=&quot;checkbox&quot;&gt;</code> with the <code>.dropdown</code> class and right after it a <code>&lt;div&gt;</code> element that contains an unordered list with list elements that contains navigation links, exactly like you would make a normal navigation menu.</li>
<li>For multiple dropdowns, you should use <code>&lt;input type=&quot;radio&quot;&gt;</code> elements.</li>
<li>On mobile devices, there might be issues with the dropdown not closing after a link is clicked (mainly when it links to the same page). This can be easily dealt with using javascript (by making all the links inside the dropdown's <code>&lt;div&gt;</code> element uncheck the navigation bar's checkbox) or using <code>&lt;label&gt;</code> elements creatively inside the links.</li>
<li>Use <code>autocomplete=&quot;off&quot;</code> to make your dropdown not open by default in mobile devices.</li>
</ul>
<h3>Horizontal navigation dropdown example</h3>
<div class="panel"><h4 class="head">Example</h4><br>
<div class="nav">
<span class="logo">Logo</span>
<ul>
<li><a href="#" class="link">Link 1</a></li>
<li><label class="link dropdown" for="dropdown1">Dropdown</label></li>
</ul>
<input type="checkbox" id="dropdown1" class="dropdown" autocomplete="off">
<div>
<ul>
<li><a href="#" class="link">Link 2</a></li>
<li><a href="#" class="link">Link 3</a></li>
</ul>
</div>
</div><br>
<pre class="panelcode">&lt;div class=&quot;nav&quot;&gt;
&lt;span class=&quot;logo&quot;&gt;Logo&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;label class=&quot;link dropdown&quot; for=&quot;dropdown1&quot;&gt;Dropdown&lt;/label&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;dropdown1&quot; class=&quot;dropdown&quot; autocomplete=&quot;off&quot;&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 3&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
</div>
<h3>Vertical navigation dropdown example</h3>
<div class="panel"><h4 class="head">Example</h4><br>
<div class="nav vertical" style="margin-left: 10px; margin-right: 10px;">
<span class="logo">Logo</span>
<ul>
<li><a href="#" class="link">Link 1</a></li>
<li><label class="link dropdown" for="dropdown2">Dropdown</label></li>
</ul>
<input type="checkbox" id="dropdown2" class="dropdown" autocomplete="off">
<div>
<ul>
<li><a href="#" class="link">Link 2</a></li>
<li><a href="#" class="link">Link 3</a></li>
</ul>
</div>
</div><br>
<pre class="panelcode">&lt;div class=&quot;nav vertical&quot;&gt;
&lt;span class=&quot;logo&quot;&gt;Logo&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;label class=&quot;link dropdown&quot; for=&quot;dropdown1&quot;&gt;Dropdown&lt;/label&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;dropdown1&quot; class=&quot;dropdown&quot; autocomplete=&quot;off&quot;&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;link&quot;&gt;Link 3&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;</pre>
</div><br>
<h2 id="tab">Tabs</h2>
<p>The tabbed navigation module allows you to easily create tabbed navigation systems, that are fully customizable to fit your needs. <strong>Nested tabs are not supported and might cause unexpected behavior.</strong></p>
<h3>Tabbed navigation structure</h3>
<p>The structure of the tabbed navigation system is as follows:</p>
<ul>
<li>Use the <code>.tabs</code> class to specify the container for the tabbed navigation system.</li>
<li>For each tab use an <code>&lt;input type=&quot;radio&quot;&gt;</code>, immediately followed by a <code>&lt;div&gt;</code> element.</li>
<li>This last element should contain a <code>&lt;label&gt;</code> linking to the radio button of the tab and another <code>&lt;div&gt;</code> that will contain the tab's contents.</li>
<li>Specify the tab that will be open by default using the <code>checked</code> property on one of the radio buttons.</li>
</ul>
<h3>Tabbed navigation example <sup>*</sup></h3>
<div class="tabs">
<input type="radio" name="tabs-radio" id="tab1" checked>
<div>
<label for="tab1">Tab 1</label>
<div>Tab 1 content...</div>
</div>
<input type="radio" name="tabs-radio" id="tab2">
<div>
<label for="tab2">Tab 2</label>
<div>Tab 2 content...</div>
</div>
<input type="radio" name="tabs-radio" id="tab3">
<div>
<label for="tab3">Tab 3</label>
<div>Tab 3 content...</div>
</div>
</div>
<pre class="panelcode">&lt;div class=&quot;tabs&quot;&gt;
&lt;input type=&quot;radio&quot; name=&quot;tabs-radio&quot; id=&quot;tab1&quot; checked&gt;
&lt;div&gt;
&lt;label for=&quot;tab1&quot;&gt;Tab 1&lt;/label&gt;
&lt;div&gt;Tab 1 content...&lt;/div&gt;
&lt;/div&gt;
&lt;input type=&quot;radio&quot; name=&quot;tabs-radio&quot; id=&quot;tab2&quot;&gt;
&lt;div&gt;
&lt;label for=&quot;tab2&quot;&gt;Tab 2&lt;/label&gt;
&lt;div&gt;Tab 2 content...&lt;/div&gt;
&lt;/div&gt;
&lt;input type=&quot;radio&quot; name=&quot;tabs-radio&quot; id=&quot;tab3&quot;&gt;
&lt;div&gt;
&lt;label for=&quot;tab3&quot;&gt;Tab 3&lt;/label&gt;
&lt;div&gt;Tab 3 content...&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</pre><br>
<p>(*):Due to a minor incompatibility between panels and tabs, the above example is not shown like most of the others. Our most experienced teams of developers and designers are on this.</p><br>
<h2 id="table">Tables</h2>
<p>Tables can be easily stylized to look more modern, using stripes and selective borders (vertical only by default). Classes for horizontal only borders(<code>.hor</code>) and full borders(<code>.bor</code>) are also provided. Use the <code>.tbl</code> class in your <code>&lt;table&gt;</code> elements to easily apply your styling.</p>
<h3>Default table example</h3>
<div class="panel"><h4 class="head">Example</h4><br>
<table class="tbl" style="margin-left: 10px; margin-right: 10px;">
<thead>
<th>Column 1</th> <th>Column 2</th>
</thead>
<tbody>
<tr>
<td>Name</td> <td>Value</td>
</tr>
<tr>
<td>Name</td> <td>Value</td>
</tr>
<tr>
<td>Name</td> <td>Value</td>
</tr>
<tr>
<td>Name</td> <td>Value</td>
</tr>
</tbody>
</table><br>
<pre class="panelcode">&lt;table class=&quot;tbl&quot;&gt;
&lt;thead&gt;
&lt;th&gt;Column 1&lt;/th&gt; &lt;th&gt;Column 2&lt;/th&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Name&lt;/td&gt; &lt;td&gt;Value&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Name&lt;/td&gt; &lt;td&gt;Value&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Name&lt;/td&gt; &lt;td&gt;Value&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Name&lt;/td&gt; &lt;td&gt;Value&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;</pre>
</div><br>
<h2 id="form">Forms</h2>
<p>Form customization and styling is easy using the <code>.frm</code> class in any <code>&lt;form&gt;</code> element. Inputs inside the form will be automatically styled and they will use complementary highlights for certain events (<code>:focus</code>, <code>disabled</code>, <code>:invalid</code> etc.). You can use the <code>.aligned</code> and <code>.inline</code> classes to create aligned and inline forms respectively. Aligned forms should be used in combination with the <code>.ctrl-group</code> class to group together labels with their respective inputs.</p>
<h3>Vertical form</h3>
<div class="panel"><h4 class="head">Example</h4>
<form class="frm" autocomplete="off">
<label for="email1">Email</label>
<input type="email" id="email1">
<label for="password1">Password</label>
<input type="password" id="password1">
</form>
<pre class="panelcode">&lt;form class=&quot;frm&quot;&gt;
&lt;label for=&quot;email1&quot;&gt;Email&lt;/label&gt;
&lt;input type=&quot;email&quot; id=&quot;email1&quot;&gt;
&lt;label for=&quot;password1&quot;&gt;Password&lt;/label&gt;
&lt;input type=&quot;password&quot; id=&quot;password1&quot;&gt;
&lt;/form&gt;</pre>
</div>
<h3>Inline form</h3>
<div class="panel"><h4 class="head">Example</h4>
<form class="frm inline" autocomplete="off">
<label for="email2">Email</label>
<input type="email" id="email2">
<label for="password2">Password</label>
<input type="password" id="password2">
</form>
<pre class="panelcode">&lt;form class=&quot;frm inline&quot;&gt;
&lt;label for=&quot;email1&quot;&gt;Email&lt;/label&gt;
&lt;input type=&quot;email&quot; id=&quot;email1&quot;&gt;
&lt;label for=&quot;password1&quot;&gt;Password&lt;/label&gt;
&lt;input type=&quot;password&quot; id=&quot;password1&quot;&gt;
&lt;/form&gt;</pre>
</div>
<h3>Aligned form</h3>
<div class="panel"><h4 class="head">Example</h4>
<form class="frm aligned" autocomplete="off">
<div class="ctrl-group">
<label for="email3">Email</label>
<input type="email" id="email3">
</div>
<div class="ctrl-group">
<label for="password3">Password</label>
<input type="password" id="password3">
</div>
</form>
<pre class="panelcode">&lt;form class=&quot;frm aligned&quot;&gt;
&lt;div class=&quot;ctrl-group&quot;&gt;
&lt;label for=&quot;email1&quot;&gt;Email&lt;/label&gt;
&lt;input type=&quot;email&quot; id=&quot;email1&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;ctrl-group&quot;&gt;
&lt;label for=&quot;password1&quot;&gt;Password&lt;/label&gt;
&lt;input type=&quot;password&quot; id=&quot;password1&quot;&gt;
&lt;/div&gt;
&lt;/form&gt;</pre>
</div><br>
<h2 id="button">Buttons</h2>
<p>Use the <code>.btn</code> class on <code>&lt;button&gt;</code>, <code>&lt;a&gt;</code>, <code>&lt;label&gt;</code> or similar elements to give them a unique style. Color variants are provided (<code>.red</code>, <code>.green</code> and <code>.blue</code>), as well as size variants (<code>.sm</code> and <code>.lg</code>).</p>
<h3>Button styles and variants</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
&nbsp;&nbsp;<button class="btn">Default button</button>
&nbsp;&nbsp;<button class="btn red">Red button</button>
&nbsp;&nbsp;<button class="btn green">Green button</button>
&nbsp;&nbsp;<button class="btn blue">Blue button</button>
&nbsp;&nbsp;<button class="btn sm">Small button</button>
&nbsp;&nbsp;<button class="btn lg">Large button</button><br><br>
<pre class="panelcode">&lt;button class=&quot;btn&quot;&gt;Default button&lt;/button&gt;
&lt;button class=&quot;btn red&quot;&gt;Red button&lt;/button&gt;
&lt;button class=&quot;btn green&quot;&gt;Green button&lt;/button&gt;
&lt;button class=&quot;btn blue&quot;&gt;Blue button&lt;/button&gt;
&lt;button class=&quot;btn sm&quot;&gt;Small button&lt;/button&gt;
&lt;button class=&quot;btn lg&quot;&gt;Large button&lt;/button&gt;</pre>
</div><br>
<h2 id="label">Labels &amp; Badges</h2>
<p>Use the <code>.lbl</code> or <code>.bdg</code> class on any elements to style them like labels or badges. Color variants are provided (<code>.red</code>, <code>.green</code> and <code>.blue</code>) for both of these styles.</p>
<h3>Labels and badge styles</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
&nbsp;&nbsp;<span class="lbl">Label</span>
<span class="lbl red">Red label</span>
<span class="lbl green">Green label</span>
<span class="lbl blue">Blue label</span>
<span class="bdg">12</span>
<span class="bdg red">3</span>
<span class="bdg green">45</span>
<span class="bdg blue">6</span><br><br>
<pre class="panelcode">&lt;span class=&quot;lbl&quot;&gt;Label&lt;/span&gt;
&lt;span class=&quot;lbl red&quot;&gt;Red label&lt;/span&gt;
&lt;span class=&quot;lbl green&quot;&gt;Green label&lt;/span&gt;
&lt;span class=&quot;lbl blue&quot;&gt;Blue label&lt;/span&gt;
&lt;span class=&quot;bdg&quot;&gt;12&lt;/span&gt;
&lt;span class=&quot;bdg red&quot;&gt;3&lt;/span&gt;
&lt;span class=&quot;bdg green&quot;&gt;45&lt;/span&gt;
&lt;span class=&quot;bdg blue&quot;&gt;6&lt;/span&gt;</pre>
</div><br>
<h2 id="modal">Modals</h2>
<p>Modal dialogs can be easily added and customized to the user's liking and offer support for the close button utility. <strong>Showing more than one modal dialog at once might have unexpected results and is not encouraged.</strong></p>
<h3>Modal dialog structure</h3>
<p>The basic structure of a modal dialog is as follows:</p>
<ul>
<li>Use the <code>.modal</code> class on an <code>&lt;input type=&quot;checkbox&quot;&gt;</code>. <strong>Place this checkbox along with any other elements specified below at the very start of your <code>&lt;body&gt;</code>.</strong></li>
<li>Add a <code>&lt;div&gt;</code> right after the checkbox. Inside it add a second <code>&lt;div&gt;</code> with your modal dialog's contents, as well as a <code>&lt;label&gt;</code> for the checkbox <strong>without any content inside it.</strong> This label will act as the overlay behind the modal. If you do not want clicking the background to close the modal dialog, add the label without linking it to the checkbox.</li>
<li>If you have enabled close button support, you can add a <code>&lt;span class=&quot;close&quot;&gt;</code> inside a label for the checkbox in the innermost <code>&lt;div&gt;</code> to add a close button to the top right corner of your modal dialog.</li>
<li>Finally, add a label linking to the modal dialog's checkbox anywhere in your page. You can also toggle the modal using Javascript, by setting the checkbox's state to <code>checked</code>.</li>
</ul>
<h3>Modal dialog example</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
&nbsp;&nbsp;<label for="modal1" class="btn red">Open modal</label><br><br>
<pre class="panelcode">&lt;input type=&quot;checkbox&quot; class=&quot;modal&quot; id=&quot;modal1&quot;&gt;
&lt;div&gt;
&lt;label for=&quot;modal1&quot; autocomplete=&quot;off&quot;&gt;&lt;/label&gt;
&lt;div&gt;
&lt;label for=&quot;modal1&quot;&gt;
&lt;span class=&quot;close&quot;&gt;&lt;/span&gt;
&lt;/label&gt;
&lt;h3&gt;Modal dialog&lt;/h3&gt;
&lt;hr&gt;
&lt;p&gt;This is a modal dialog.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
...
&lt;label for=&quot;modal1&quot; class=&quot;btn red&quot;&gt;Open modal&lt;/label&gt;</pre>
</div><br>
<h2 id="collapse">Collapse</h2>
<p>The collapse module adds two components with similar functionality. </p>
<ul>
<li>Single collapse components can be created by adding the <code>.clps</code> class on an <code>&lt;input type=&quot;checkbox&quot;&gt;</code> element, followed by a <code>&lt;div&gt;</code> with the content to be hidden/shown based on the collapse's state.</li>
<li>Similarly, accordion collapse components can be created by adding the <code>.acrd</code> class to as many <code>&lt;input type=&quot;radio&quot;&gt;</code> elements as you want. You should add a <code>&lt;label&gt;</code> linking to each radio immediately after it, followed by a <code>&lt;div&gt;</code> with the content to be hidden/shown based on the accordion's state. </li>
<li>You can use the single collapse component's styling for a set of radio buttons or the accordion's styling for a single checkbox if you would like to use a different styling for your collapse components without adding new CSS definitions.</li>
</ul>
<h3>Single collapse style</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
&nbsp;&nbsp;<label for="collapse1" class="btn blue">Toggle collapse</label><br>
<input type="checkbox" class="clps" id="collapse1" autocomplete="off"><div class="well" style="margin-left: 10px; margin-right: 10px;">This text will be shown or hidden based on the above button.</div><br>
<pre class="panelcode">&lt;label for=&quot;collapse1&quot; class=&quot;btn blue&quot;&gt;Toggle collapse&lt;/label&gt;
&lt;input type=&quot;checkbox&quot; class=&quot;clps&quot; id=&quot;collapse1&quot;&gt;
&lt;div&gt;This text will be shown or hidden based on the above button.&lt;/div&gt;</pre>
</div>
<h3>Accordion style</h3>
<div class="panel" ><h4 class="head">Example</h4>
<div style="margin-left: 10px; margin-right: 10px;">
<input type="radio" class="acrd" id="acrd1" autocomplete="off" name="accordion"><label for="acrd1">First option</label>
<div>This is the first collapse of the accordion.</div>
<input type="radio" class="acrd" id="acrd2" autocomplete="off" name="accordion"><label for="acrd2">Second option</label>
<div>This is the second collapse of the accordion.</div>
<input type="radio" class="acrd" id="acrd3" autocomplete="off" name="accordion"><label for="acrd3">Third option</label>
<div>This is the final collapse of the accordion.</div>
</div>
<pre class="panelcode">&lt;input type=&quot;radio&quot; class=&quot;acrd&quot; id=&quot;acrd1&quot; autocomplete=&quot;off&quot; name=&quot;accordion&quot;&gt;
&lt;label for=&quot;acrd1&quot;&gt;First option&lt;/label&gt;
&lt;div&gt;This is the first collapse of the accordion.&lt;/div&gt;
&lt;input type=&quot;radio&quot; class=&quot;acrd&quot; id=&quot;acrd2&quot; autocomplete=&quot;off&quot; name=&quot;accordion&quot;&gt;
&lt;label for=&quot;acrd2&quot;&gt;Second option&lt;/label&gt;
&lt;div&gt;This is the second collapse of the accordion.&lt;/div&gt;
&lt;input type=&quot;radio&quot; class=&quot;acrd&quot; id=&quot;acrd3&quot; autocomplete=&quot;off&quot; name=&quot;accordion&quot;&gt;
&lt;label for=&quot;acrd3&quot;&gt;Third option&lt;/label&gt;
&lt;div&gt;This is the final collapse of the accordion.&lt;/div&gt;</pre>
</div><br>
<h2 id="progress">Progress bars</h2>
<p>The progress bar module is very easy to use and extend. Simply create a <code>&lt;div&gt;</code> with the <code>.prg</code> class and inside it add a <code>&lt;span&gt;</code> element with the desired <code>style=&quot;width:XX%&quot;</code> and you have a progress bar. Add text inside the <code>&lt;span&gt;</code> element if you want. You can use the <code>.green</code> or <code>.red</code> variants for the <code>&lt;span&gt;</code> element if you want to use different colors. Finally, you can always stack multiple progress bars, by simply adding more <code>&lt;span&gt;</code> elements, just make sure their widths add up to 100% or less.</p>
<h3>Default progress bar style</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
<div class="prg" style="margin-left: 10px; margin-right: 10px; padding:0;"><span style="width:60%;">60%</span></div><br>
<pre class="panelcode">&lt;div class=&quot;prg&quot;&gt;&lt;span style=&quot;width:60%;&quot;&gt;60%&lt;/span&gt;&lt;/div&gt;</pre>
</div>
<h3>Progress bar variant styles</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
<div class="prg" style="margin-left: 10px; margin-right: 10px; padding:0;"><span class="green" style="width:40%;"></span></div><br>
<div class="prg" style="margin-left: 10px; margin-right: 10px; padding:0;"><span class="red" style="width:70%;"></span></div><br>
<pre class="panelcode">&lt;div class=&quot;prg&quot;&gt;&lt;span class=&quot;green&quot; style=&quot;width:40%;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;prg&quot;&gt;&lt;span class=&quot;red&quot; style=&quot;width:70%;&quot;&gt;&lt;/span&gt;&lt;/div&gt;</pre>
</div>
<h3>Stacked progress bars</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
<div class="prg" style="margin-left: 10px; margin-right: 10px; padding:0;">
<span class="red" style="width:30%;"></span>
<span class="green" style="width:20%;"></span>
<span style="width:40%;"></span>
</div><br>
<pre class="panelcode">&lt;div class=&quot;prg&quot;&gt;
&lt;span class=&quot;red&quot; style=&quot;width:30%;&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;green&quot; style=&quot;width:20%;&quot;&gt;&lt;/span&gt;
&lt;span style=&quot;width:40%;&quot;&gt;&lt;/span&gt;
&lt;/div&gt;</pre>
</div>
<h3>Progress spinners</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
<p>Spinner dots: <span class="spinner-dots"></span></p>
<p>Spinner round: <span class="spinner-round"></span></p>
<br>
<pre class="panelcode">&lt;span class=&quot;spinner-dots&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;spinner-round&quot;&gt;&lt;/span&gt;</pre>
</div><br>
<h2 id="carousel">Carousel</h2>
<p>The carousel module allows you to create manually-controlled image slideshows for your pages. <strong>Nested carousels might cause unexpected behavior, please refrain from using them.</strong></p>
<h3>Carousel structure</h3>
<p>The base structure for the carousel component is as follows:</p>
<ul>
<li>Specify a carousel wrapper, using the <code>.carousel</code> class on a <code>&lt;div&gt;</code> element.</li>
<li>Inside the wrapper, add the an <code>&lt;input type=&quot;radio&quot;&gt;</code>, followed immediately by a <code>&lt;div&gt;</code> element. Inside the latter, add an <code>&lt;img&gt;</code> element, followed by a <code>&lt;div&gt;</code> element which will act as the image's description. Finally, right after closing the first <code>&lt;div&gt;</code> element, add a <code>&lt;label&gt;</code> linked to the radio button for the image.</li>
<li>Repeat the process as many times as you want to add more images. <strong>Remember that you cannot skip the description <code>&lt;div&gt;</code> element, even if it is empty, as it is required for the component to work properly.</strong></li>
<li>Add the <code>checked</code> attribute to the first radio button of your carousel (or the one corresponding to the image you want to be displayed by default) to make the carousel work properly.</li>
</ul>
<p><strong>Auto-scrolling is not enabled by default in this carousel component.</strong> If you want the carousel to scroll automatically, you can check each of the radio buttons automatically using Javascript on set intervals. Using a similar technique you can pause the automatic scrolling when the user's cursor is inside the carousel.</p>
<h3>Carousel example</h3>
<div class="panel" ><h4 class="head">Example</h4><br>
<div class="carousel">
<input type="radio" name="carousel-control" id="crs1" checked>
<div>
<img src="favicon.png">
<div>
<h3>First image</h3>
<p>This is a sample image description.</p>
</div>
</div>
<label for="crs1"></label>
<input type="radio" name="carousel-control" id="crs2">
<div>
<img src="favicon.png" style="transform: scale(1,-1);">
<div>
<h3>Second image</h3>
<p>This is another sample image description.</p>
</div>
</div>
<label for="crs2"></label>
<input type="radio" name="carousel-control" id="crs3">
<div>
<img src="favicon.png" style="transform: scale(-1,-1);">
<div>
<h3>Third image</h3>
<p>This is yet another image description.</p>
</div>
</div>
<label for="crs3"></label>
</div>
<br>
<pre class="panelcode">&lt;div class=&quot;carousel&quot;&gt;
&lt;input type=&quot;radio&quot; name=&quot;carousel-control&quot; id=&quot;crs1&quot; checked&gt;
&lt;div&gt;
&lt;img src=&quot;favicon.png&quot;&gt;
&lt;div&gt;
&lt;h3&gt;First image&lt;/h3&gt;
&lt;p&gt;This is a sample image description.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;label for=&quot;crs1&quot;&gt;&lt;/label&gt;
&lt;input type=&quot;radio&quot; name=&quot;carousel-control&quot; id=&quot;crs2&quot;&gt;
&lt;div&gt;
&lt;img src=&quot;favicon.png&quot; style=&quot;transform: scale(1,-1);&quot;&gt;
&lt;div&gt;
&lt;h3&gt;Second image&lt;/h3&gt;
&lt;p&gt;This is another sample image description.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;label for=&quot;crs2&quot;&gt;&lt;/label&gt;
&lt;input type=&quot;radio&quot; name=&quot;carousel-control&quot; id=&quot;crs3&quot;&gt;
&lt;div&gt;
&lt;img src=&quot;favicon.png&quot; style=&quot;transform: scale(-1,-1);&quot;&gt;
&lt;div&gt;
&lt;h3&gt;Third image&lt;/h3&gt;
&lt;p&gt;This is yet another image description.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;label for=&quot;crs3&quot;&gt;&lt;/label&gt;
&lt;/div&gt;</pre>
</div><br>
<h2 id="utility">Utilities &amp; Helper classes</h2>
<p>The core utilities module contains a set of useful utilities and helper classes to make common tasks easier when developing new pages.</p>
<h3>Generic borders</h3>
<p>By using the <code>opacity</code> CSS property in a creative way, along with <code>border-radius</code>es, we have created utility classes that will create generic borders for virtually any element you want. Simply add the <code>.bordered</code> class to create a generic border around an element. You can also use the <code>.rounded</code> and <code>.circle</code> classes (with or without the border style) to create reounded or circular corners for different elements accordingly.</p>
<div class="panel" ><h4 class="head">Example</h4><br>
<span>Button with generic border:</span>&nbsp;&nbsp;<button class="btn blue bordered">Button</button><br>
<span>Image with generic border and rounded corners:</span>&nbsp;&nbsp;<img class="bordered rounded" src="favicon.png" style="height: 100px; width: auto; display:inline-block;vertical-align: middle;"><br>
<span>Image with circular corners:</span>&nbsp;&nbsp;<img class="circle" src="favicon.png" style="height: 100px; width: auto; display:inline-block;vertical-align: middle;"><br><br>
<pre class="panelcode">&lt;button class=&quot;btn blue bordered&quot;&gt;Button&lt;/button&gt;
&lt;img class=&quot;bordered rounded&quot; src=&quot;favicon.png&quot;&gt;
&lt;img class=&quot;circle&quot; src=&quot;favicon.png&quot;&gt;</pre>
</div>
<h3>Contextual colors and backgrounds</h3>
<p>You can easily add contextual text or background color to certain textual elements by simply using one of the contextual prefixes (<code>.txt-</code> and <code>.bg-</code> respectively) and a color suffix (<code>red</code>, <code>green</code> or <code>blue</code>).</p>
<div class="panel" ><h4 class="head">Example</h4>
<p>Here is some text with contextual colors: <span class="txt-red">red</span>, <span class="txt-green">green</span> &amp; <span class="txt-blue">blue</span>.<br>
And here is some text with contextual backgrounds: <span class="bg-red">red</span>, <span class="bg-green">green</span> &amp; <span class="bg-blue">blue</span>.</p>
<pre class="panelcode">&lt;span class=&quot;txt-red&quot;&gt;red text&lt;/span&gt;
&lt;span class=&quot;txt-green&quot;&gt;green text&lt;/span&gt;
&lt;span class=&quot;txt-blue&quot;&gt;blue text&lt;/span&gt;
&lt;span class=&quot;bg-red&quot;&gt;red background&lt;/span&gt;
&lt;span class=&quot;bg-green&quot;&gt;green background&lt;/span&gt;
&lt;span class=&quot;bg-blue&quot;&gt;blue background&lt;/span&gt;</pre>
</div>
<h3>Image thumbnails</h3>
<p>Image thumbnails can be used to stylize images by adding a custom border around them by simply using the <code>.thumb</code> class.</p>
<div class="panel" ><h4 class="head">Example</h4><br>
&nbsp;&nbsp;<img class="thumb" src="favicon.png" style="height: 100px; width: auto; display:inline-block;"><br><br>
<pre class="panelcode">&lt;img class=&quot;thumb&quot; src=&quot;favicon.png&quot;&gt;</pre>
</div>
<h3>Utility symbols</h3>
<p>You can easily add carets and close symbols by using the <code>.caret</code> and <code>.close</code> classes respectively.</p>
<div class="panel" ><h4 class="head">Example</h4>
&nbsp;&nbsp;<span class="caret" style="padding:0;"></span>
<span class="close"></span><br>
<pre class="panelcode">&lt;span class=&quot;caret&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;close&quot;&gt;&lt;/span&gt;</pre>
</div>
<h3>Helper classes</h3>
<p>Apart from the above utilities, there are some extra classes provided to help streamline the development process. Some of these classes use the <code class="txt-red">!important</code> property to override other styles, so be careful when using them. The provided helper classes are as follows:</p>
<ul>
<li>Quick floats can be created using the <code>.drg-left</code> and <code>.drg-right</code> classes.</li>
<li>Center content blocks can be created using the <code>.ct-block</code> class.</li>
<li>Utilize the popular <a href="http://nicolasgallagher.com/micro-clearfix-hack/">micro clearfix hack</a> using the <code>.cf</code> class.</li>
<li>Use the <code>.hidden</code> class to hide any content you wish.</li>
</ul>
<h2 id="utility-extra">Utilities &amp; Experimental classes</h2>
<p>The extra utilities module contains some more useful utilities, as well as some more experimental and unstable utility classes, that some people might find of use. <strong>Any components marked as experimental might be unstable and behave unexpectedly, use at your own risk!</strong></p>
<h3>Breadcrumbs</h3>
<p>Create breadcrumbs to indicate the navigational hierarchy of a page's location, using the <code>.brdcrmb</code> class on a list element.</p>
<div class="panel" ><h4 class="head">Example</h4>
<ol class="brdcrmb">
<li><a href="#">Core</a></li>
<li><a href="#">Modules</a></li>
<li>Utility</li>
</ol>
<pre class="panelcode">&lt;ol class=&quot;brdcrmb&quot;&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Core&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Modules&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Utility&lt;/li&gt;
&lt;/ol&gt;</pre>
</div>
<h3>Containers</h3>
<p>There are multiple types of generic containers provided:</p>
<ul>
<li>Wells can be created using the <code>.well</code> class and are the simplest type of generic container.</li>
<li>Alerts are similar to wells, but are contextualized can be toggled on or off (manually or using scripts). Use the <code>.alert-</code> prefix on an <code>&lt;input type=&quot;checkbox&quot;&gt;</code> along with a color suffix (<code>red</code>, <code>green</code> or <code>blue</code>) and a <code>&lt;div&gt;</code> element to create an alert. Adding a <code>&lt;span class=&quot;close&quot;&gt;</li> element inside a label pointing to the alert's checkbox will allow user to dismiss the alert.</code>
<li>Panels are similar to wells, but looks like application windows. You can create a panel using the <code>.panel</code> class and you can specify a title element for your panel using the <code>.head</code> class on the very first element of your panel.</li>
</ul>
<div class="panel" ><h4 class="head">Example</h4><br>
<strong>Well:</strong><br><br>
<div class="well" style="margin-left: 10px; margin-right: 10px;">This is a well.</div><br>
<strong>Alerts:</strong><br><br>
<input type="checkbox" id="alert1" class="alert-red" checked><div style="margin-left: 10px; margin-right: 10px;">This is a red alert without a close button.</div><br>
<input type="checkbox" id="alert2" class="alert-green" checked><div style="margin-left: 10px; margin-right: 10px;">This is a green alert with a <a href="#">link</a> but no close button either.</div><br>
<input type="checkbox" id="alert3" class="alert-blue" checked autocomplete="off"><div style="margin-left: 10px; margin-right: 10px;">This is a blue alert with a close button. <label for="alert3"><span class="close"></span></label></div><br>
<strong>Panel:</strong><br><br>
<div class="panel" style="margin-left: 10px; margin-right: 10px; padding:0"><h3 class="head">Panel head</h3>
<p>This is a panel.</p>
</div><br>
<pre class="panelcode">&lt;div class=&quot;well&quot;&gt;This is a well.&lt;/div&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;alert1&quot; class=&quot;alert-red&quot; checked&gt;
&lt;div&gt;This is a red alert without a close button.&lt;/div&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;alert2&quot; class=&quot;alert-green&quot; checked&gt;
&lt;div&gt;This is a green alert with a &lt;a href=&quot;#&quot;&gt;link&lt;/a&gt; but no close button either.&lt;/div&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;alert3&quot; class=&quot;alert-blue&quot; checked&gt;
&lt;div&gt;This is a blue alert with a close button. &lt;label for=&quot;alert3&quot;&gt;&lt;span class=&quot;close&quot;&gt;&lt;/span&gt;&lt;/label&gt;&lt;/div&gt;
&lt;div class=&quot;panel&quot;&gt;
&lt;h3 class=&quot;head&quot;&gt;Panel head&lt;/h3&gt;
&lt;p&gt;This is a panel.&lt;/p&gt;
&lt;/div&gt;</pre>
</div>
<h3>Popovers</h3>
<p>You can show a small overlay of content when the user clicks on specific elements using the <code>.popover-</code> prefix on an <code>&lt;input type=&quot;checkbox&quot;&gt;</code> along with the <code>top</code> or <code>bottom</code> suffix. Add a <code>&lt;label&gt;</code> right after the checkbox linked to it and inside it add another element with the popover's class you are using. When you click the label, the popover will appear above or below the label. Click on the label again or the popover text itself to hide it.</p>
<div class="panel"><h4 class="head">Example</h4><br>
&nbsp;&nbsp;<input type="checkbox" id="popover1" class="popover-top" autocomplete="off"><label for="popover1" class="btn green">Open top popover<span class="popover-top">This is the popover text.</span></label>
&nbsp;&nbsp;
<input type="checkbox" id="popover2" class="popover-bottom" autocomplete="off"><label for="popover2" class="btn red">Open bottom popover<span class="popover-bottom">This is the popover text.</span></label><br><br>
<pre class="panelcode">&lt;input type=&quot;checkbox&quot; id=&quot;popover1&quot; class=&quot;popover-top&quot; autocomplete=&quot;off&quot;&gt;
&lt;label for=&quot;popover1&quot; class=&quot;btn green&quot;&gt;Open top popover
&lt;span class=&quot;popover-top&quot;&gt;This is the popover text.&lt;/span&gt;
&lt;/label&gt;
&lt;input type=&quot;checkbox&quot; id=&quot;popover2&quot; class=&quot;popover-bottom&quot; autocomplete=&quot;off&quot;&gt;
&lt;label for=&quot;popover2&quot; class=&quot;btn red&quot;&gt;Open bottom popover
&lt;span class=&quot;popover-bottom&quot;&gt;This is the popover text.&lt;/span&gt;
&lt;/label&gt;</pre>
</div>
<h3>Experimental components</h3>
<p>There are two experimental components provided, stateful buttons and button groups:
<ul><li>To create a stateful button apply the <code>.stateful</code> class to an <code>&lt;input type=&quot;checkbox&quot;&gt;</code>, followed by two labels (the first is for the inactive state and the second one for the active state).<strong>This component is not enabled by default as it is unstable, you can enable it manually.</strong></li>
<li>To create a button group, use the <code>.btn-grp</code> class to wrap a set of <code>.btn</code> elements.<strong>This component is considered stable enough, so it is enabled by default, you can disable it manually.</strong></li></ul>
<div class="panel"><h4 class="head">Example</h4>
&nbsp;&nbsp;<input type="checkbox" id="stateful1" class="stateful" autocomplete="off"><label for="stateful1" class="btn blue" style="margin-left: 10px; margin-right: 10px;width:200px;">Click to load</label><label class="btn blue" style="margin-left: 10px; margin-right: 10px;width:200px;">Loading...</label>
<div class="btn-grp">&nbsp;&nbsp;
<button class="btn">1</button>
<button class="btn">2</button>
<button class="btn">3</button>
<button class="btn">4</button>
</div>
<pre class="panelcode">&lt;input type=&quot;checkbox&quot; id=&quot;stateful1&quot; class=&quot;stateful&quot; autocomplete=&quot;off&quot;&gt;
&lt;label for=&quot;stateful1&quot; class=&quot;btn blue&quot;&gt;Click to load&lt;/label&gt;
&lt;label class=&quot;btn blue&quot;&gt;Loading...&lt;/label&gt;
&lt;div class=&quot;btn-grp&quot;&gt;
&lt;button class=&quot;btn&quot;&gt;1&lt;/button&gt;
&lt;button class=&quot;btn&quot;&gt;2&lt;/button&gt;
&lt;button class=&quot;btn&quot;&gt;3&lt;/button&gt;
&lt;button class=&quot;btn&quot;&gt;4&lt;/button&gt;
&lt;/div&gt;</pre>
</div><br>
</div>
</div>
<div class="row footer">
<div class="col xs-no md-1"></div>
<div class="col xs-12 md-10 footer">
<p style="padding-top: 10px;"><strong>mini.css</strong> was designed and built by <a href="https://github.com/Chalarangelo">@Chalarangelo</a>. It is licensed under the <a href="https://github.com/Chalarangelo/mini.css/blob/master/LICENSE">MIT License</a>. You can view the project's source code on <a href="https://github.com/Chalarangelo/mini.css">Github</a>.</p>
</div>
</div>
</div>
</body>
</html>

732
docs/v2/DEVLOG.md Normal file
View File

@@ -0,0 +1,732 @@
# mini.css v2.0 Development Log
## 20161012
- Initialized pages for v2.
- Initialized `/scss/v2` directory.
- Initialized `_base.scss` partial file.
- Initialized `/flavors/v2` directory.
- Initialized `mini-default` flavor.
- Initialized `DEVLOG.md`.
- **Started developing base from [Normalize.css](https://github.com/necolas/normalize.css) v5.0.0**
- Removed support for displaying `[hidden]` in IE 10-.
- Removed support for the display of `template` in IE. `template` is not supported yet in IE, thus this will not make any difference, as long as the element itself is not yet supported.
- Removed support for the display of `canvas` in IE 9-.
- Removed styling fixes for checkboxes and radio buttons in IE 10-.
- Kept the styling fix for `textarea` that only affects IE. It seems like it could be useful elsewhere as well. **Needs further work!**
- Removed the `progress` styling fix for IE 9- as the element is not supported in IE 9-.
- Kept the styling for `svg:not(:root)` although it only affects IE 9-. This is due to the fact that SVG rendering is very important.
- Removed the `img` style fix for IE 10-.
- Removed the fix for `audio:not([controls])` which only applies to iOS 4-7.
- Kept the styling fix of `audio` and `video` for IE 9-, as IE 9 supports both elements.
- *TODO* Change `mark` color to customized from flavor, override normalized default and fix.
- Kept styling fix of `dfn` for Android 4.3-, as element is properly supported.
- *TODO*,*UNCERTAIN* Change the `font-weight` of `b` and `strong` elements to a set number (e.g. 700) to avoid the normalize hack.
- Kept styling fix for `abbr` in Firefox 39-, as the element is well supported.
- Kept styling fixes for links (`a`), as they are a core element in all browsers and they should be supported well even in older browsers.
- Removed the styling fix for `figure` for IE 8. `figure` styling will probably be built from the ground up in the core anyways, so this should not be a problem.
- Kept styling fixes for `figure` and `figcaption` for IE 9-. These elements are supported by IE 9, but not the older versions of IE.
- Kept the styling fixes for `article`, `aside`, `footer`, `header`, `nav` and `section` for IE 9-. Elements are only supported in IE 9.
- **Organized and cleaned the base**
- Merged styling fixes for `article`, `aside`, `footer`, `header`, `nav` and `section` with fixes for `figure`, `figcaption` and `main`.
- Merged styling for `kbd`, `code`, `pre` and `samp`.
- Started documenting default flavor.
## 20161013
- Started coding variables for base of the framework.
- `background-color` and `color` of `body` are going to be `#f9f9f9` and `#222` respectively (default flavor).
- Defaults for `font-family`, `font-size`, `line-height` remain the same.
- Dropped support for `ms-text-size-adjust` in the `html` element, as mobile IE is not well supported by the framework in general.
- Added `apply-defaults-to-all` flag to apply fonts and styles to all elements except `html`, setting fonts and sizes for the whole document properly.
- Set basic styles for headers.
- Change to the color of `small` elements in headers from `#555` to `#444`.
- Built styling for horizontal rules, fixes apply as before.
- `hr` elements get a margin for left and right (`4px`). This is a design decision for the flavor.
- `hr` top and bottom margins changed to `0.5em` from `0.7em`.
- Removed the `font-size: 1em` for the code elements (`code`, `pre`, `kbd`, `samp`) as they should normally be styled using the first style that applies to `html` and all elements. **Highly suggested to use `$apply-defaults-to-all: true;` always.**
- Added variables for `code`, `pre`, `kbd`, `samp` and a flag for `samp` (`$style-samp-element`) to make sure that no unnecessary styles are added if the `samp` element is not to be used by the developer.
- Added conditions to make sure the least amount of code is used and no defaults are redefined when styling `code`. `kbd`, `samp` and `pre`.
- Changed padding of `pre` elements to `6px` and later to `8px`. Changed color for `hr` to `#666` and later to `#888`.
- Styling and optimization for `small`, `sub` and `sup` elements.
- Changed `font-size` of `small`, `sub` and `sup` elements to `75%`.
- Changed all header `margin`s to be `8px` left and right.
- Added `margin` for paragraphs (`1px` top and bottom and `10px` left and right).
- Specified fancy styling flag (`$horizontal-rule-fancy-style`) for `hr` elements and variable (`$horizontal-rule-fancy-gradient`) to specify linear gradient styling to be used instead of the default `border` styling. This styling supports most browsers, but does not work with IE 9- and Opera Mini. Prefix `-webkit` is added to support some browsers.
- Added variable for bold elements to set `font-weight` manually, so that no problems occur and users can fine-tweak this to their liking.
- Removed fix for `b` and `strong` as the above change addresses the issue.
- `pre` `padding` set to `12px` instead of `8px`.
- Added `overflow: auto;` to `pre` elements so that they are responsive and display properly on all devices.
## 20161014
- Added extra styling option for `small` elements in headers using a flag (`$make-header-smalltext-block`) and two variables (`$header-smalltext-b-font-size` and `$header-smalltext-b-top-margin`) to customize the styling of such elements.
- Minor changes to the way the index page looks for the version 2. Changed tagline and added version codename.
- Added github buttons under title in the index page.
- Optimized the way `small` element styling is applied in headers when it is displayed as a block.
- Added fancy styling for `pre` elements with a flag (`$add-pre-element-sidebar`) and a corresponding variable (`$pre-element-sidebar-style`).
- Added margin for `pre` elements to be in line with paragraphs.
- Changed borders for `pre` elements: left-side borders' `border-radius` is now `0`.
- Changed index, centered title etc.
- Deployed first live demo version of the framework's demo index.
## 20161015
- Updated references to `background-color` and `background-image` to use the `background` shorthand instead.
- Changed palette white from `#f9f9f9` to `#fcfcf` to pass all WCAG tests.
- Added styling for `mark` elements to serve as primary contextual elements.
- Added mixin for `mark` elements (`make-mark-alt-color`) to make variants of the `mark` element (`secondary` and `tertiary`).
- Made color palette for marks, passes all WCAG tests.
- `mark` element styling (`padding`, `margin`, `font-size`, `line-height`) implemented and optimized.
- Optimized `mark` color variant mixin.
- Tweaked values of `mark` color variants to be less strict but still pass the WCAG AA test and most other tests (sometimes they won't pass the WCAG AAA test but that's ok).
- Added mixin for `mark` elements (`make-mark-alt-style`) to make style variants (`tag` and `bubble`). Optimized.
- Added some more text to demo index.
- Deployed live demo index.
- Created svg logo.
- Added logo to demo page.
- Created favicon from logo.
- Added favicon to demo page.
- Changed color palette to use material colors for primary, secondary and tertiary, passes most tests (usually is ok in almost 100% of cases).
- Updated page to test `mark` in headers.
- Deployed live version with updated tags.
## 20161019
- More fiddling with palettes. Tried to update colors to material design: `body` `color` is now `#212121`. `body` `background` is now `#fafafa`. `small` inside header `color` is now `#424242`. Codeblock `background` is now `#e0e0e0` and `pre` sidebar `border-color` is `#1565c0`. `mark` `background`s changed to `#0277bd`, `#f44336` and `#558b2f` respectively.
- Added `display: inline-block` to `mark` alternate styles, to avoid splitting of the element into smaller parts (e.g. broken pills).
- Started styling links. `a` `color` will be `#0277bd` normally.
- Added `background` property to `a` in order to apply underlining using image.
- Added flag for `a` `text-decoration:underline` (`$apply-link-underline`) and checks/optimizations for `font-weight`.
- Removed fixes from Normalize about `a` elements, as they were opinionated and unnecessary.
- Added flag for `a` using fancy `:hover` and other focused effects instead of `color` (`$apply-link-hover-fade`).
- Opened issue for module restructure (#14).
- Module restructure based on issue #14 (partial for whatever work was already done):
- Renamed `_base.scss` to `_core.scss` and created folder for submodules (`mini-core`).
- Created `_contextual.scss` for `mark` styling.
- Comments and sections for core.
- Changed import in flavor, imported contextual in core.
- Corrected and finalized display of `abbr` elements with a `title` attribute: Border fix for older Firefox version was kept, dropped some styling for the underline, underline will now always be normal `text-decoration: underline` on all browsers (opinionated).
- Kept display fix for `audio` and `video` for IE 9, as the elements are supported, moved to top of head.
- Added flag (`$include-dfn-fix`) to enable/disable the fix of `dfn` element on older Android versions based on user preference.
- Disabled said flag, due to hope that when this framework releases, there will be too few people using said older Android versions, so this will not be an issue. Also, `dfn` is not a very commonly used element in a lot of pages, might go unnoticed.
- Moved fix for `svg` in IE at the top.
- Added `TODO`s for other fixes.
- Updated index page, probably broke the live version for a while.
## 20161020
- Added some more comments for enabling and disabling modules from core.
- Browser-specific prefixed properties will now precede unprefixed ones. Changes have been applied.
- Started styling `progress` bars in `mini-core/progess`.
- Since CSS3 transitions are supported unprefixed a lot and mostly older browsers use prefixes, no prefixed versions will be added. Apart from that, if the transitions do not play on older browsers, there will be no significant changes, meaning the experience will be less rich but functionally the same.
- `progress` background set to `#f5f5f5` to achieve a very pale shadow effect. Some users might not see that color difference but that's ok.
- `progress` foreground set to `#01579b` (dark blue from material palette).
- `progress` element tweak added to work in IE 10+. Older browsers will probably default to their original display for the element. This is on intentional (Opera Mini is also not supported).
- Changed conditions for `progress` styling, as the `[value]` attribute did not make a huge difference. Progress elements that do not have a `[value]` attribute will almost always cause trouble on some browsers, no matter what. Thus, it is suggested to set a `value="0"` if possible. Otherwise, Javascript shall be used.
- Opened [question on StackOverflow](http://stackoverflow.com/questions/40149311/transition-for-progress-element-on-value-change) about transitions for progress bars.
- Added mixin for `progress` bars that are inline `make-progress-inline` and used it to create `inline` class for `progress` elements.
- Opinionated `vertical-aling: middle` for said mixin and `display: inline-block` to make sure everything works according to what it should.
- `width` of said mixin's result is specified in `em` (`20em` specifically) to make sure it will work well on all screen and is dependent on text.
- Optimized inline `progress` mixin.
- Added condition for `progress` margin to optimize for `0`.
- Created mixin for color variants of `progress` (`make-progress-alt-color`) and added style imports for `secondary` and `tertiary` elements. Optimized.
- Used slightly different colors from `mark` variatns for `progress` color variants (all material).
- Created mixin `make-progress-alt-style` for style variants of `progress`.
- Created `nano` variant for `progress` (nanobar progress) using above mixin.
- Documented mixins for `progress`, optimized etc.
## 20161021 (last change a bit past midnight but still counts)
- Created `mini-core/grid` for flexbox grid system.
- Opened relevant breaking changes issue (#16).
- Opened issue for `progress` element's transitions on value change.
- Started project for feature backlog on Github.
- Created basis for grid system container (fluid only) - `grid`.
- Read a lot of the spec, decided on browser support, coded the `row` basis for the grid system.
- Updated breaking changes issue with more information.
- Added some comments and moved the notes in the flavor file.
- Added set of variables for class names, prefixes, columns, breakpoints etc for grid system.
- Added definitions for extra small screen sizes, using loops etc. Optimized accordingly, tested on local demo.
- Added definitions for small screen sizes, optimized, test on local demo.
- Added definitions for medium and large screen sizes, optimized and tested locally.
- Updated grid definitions to add `$grid-column-padding` so that users can customize the padding for columns.
- Rebuilt demo page from scratch for version 2, added a lot of nice styles etc.
- Updated the edges of the favicon.
- Added grid demo on live page.
- Deployed live demo.
- Added demo docs for progress bars.
- Created `mini-core/table` to build the responsive table module.
- Reorganized variables and imports in order of importance for core and default flavor.
- Added table styling and responsiveness, made customizable etc.
- Added demo table to page, tested.
- Minor consistency reorganization in table module.
- Updated demo page, deployed live.
## 20161023
- Removed `table-layout: fixed;` from tables.
- Added `mini-core/button` and started testing button styling.
- Removed the reset for `:-moz-focusring` (`outline: 1px dotted ButtonText`) for buttons as it was unnecessary and didn't look great.
- Moved fix for `::-moz-focus-inner` to the `button` module.
- Moved generic fix for Android, iOS and Safari to `button` module.
- Removed generic styling reset for `button`, `input`, `optgroup`, `select` and `textarea` based on the fact that the styles are already applied in the first rule `html, *`.
- Split some fixes into generic and button-specific.
- Moved `::-webkit-file-upload-button` fixes to the `button` module.
- Proof-of-concept for `button` module defaults and core, file input is not styled yet (will be done via label hack).
- *TODO* Softcode the `button` module's defaults, add extra styles, classes etc.
- Deployed live demo with hardcoded buttons to test.
## 20161024
- Rebuilt grid system to work with 3 screen sizes instead of 4. Legacy system is now used only if a flag (`$use-four-step-grid`) is enabled.
- Three-step grid breakpoints tweaked to `800px` and `1080px` accordingly.
- Deployed live demo with new grid.
## 20161025
- Issue maintenance and minor changes to issue structure on Github.
- Due to implicit labeling (e.g. `<label>Name:<input></label>`) not being correctly handled by some assistive technologies, explicit labels will be used for the `file` `<input>` elements.
- Added `$hide-file-inputs` flag to decide the styling of `file` `<input>` elements.
- Softcoded changes and optimized some things in the `button` module.
- Updated demo page.
- Added and optimized `make-button-alt-color` mixin, created `primary` color variant.
- Added `secondary` and `tertiary` button variants using the mixin. Tested colors.
- Added button overrides for links styled as buttons for `text-decoration: underline` and `&:hover { opacity: 0.75}`. Should now not give away the fact that it's a link.
- Added `make-button-alt-style` mixin, created `small` and `large` style variants.
- Added and tested an entirely custom button style that does something very different compared to the original variants. Variables and mixins included in the flavor file, but are commented out, as they are only used as a demonstration. *TODO* Add a blog post later down the line where I design a full flavor using the files etc., showcasing things like these.
- Forms module started at `mini-core/form`.
- `input` element selection is based on `not:()` selectors instead of straightforward selection as this is more compact in terms of code and allows for non-standard `input`s like `date` types to by easily styled.
- Added a list of `TODO`s in the `form` module, tried some base styling just to make sure everything works.
- Moved style links at the very top of the `<head>` of the page.
- Updated live demo with latest stylesheet (again).
## 20161026
- Added `textarea` and `select` to the `form` `input` styling.
- Added rule for `:not([type="hidden"])`.
- Added `form` element styling (hardcoded still).
- Added demo forms for inline and aligned.
- Modified `input` `background-color` from `#f5f5f5` to `#fafafa`. Changed `background-color` to `background`.
## 20161030
- Opened issue about certain `input` elements.
- Dropped styling for `range` and `color` `input`s.
- Changed form styling a little bit (hardcoded).
- Added styling for `placeholder`s.
- Defined styles for `fieldset`, `legend` and custom class for `input` and `label` grouping (`input-group`).
- Added variables for `form` styling.
- Softcoded most of the stuff for `form` styling.
- Tested `form` styling thoroughly and optimized code.
- Moved fixes from `core` to `form` module for most of the `form` elements (except `search`).
- Deployed updated live page.
- Decided to avoid styling `search` `input` `type`s, due to lack of support for magnifying lens icon for most search inputs. Generally speaking this can easily be added by the user.
- Reorganized the loading order of modules in `core`.
- Added `search` fixes to `form` module.
- *DESIGN DECISION* To deal with accessibility concerns and the very "hacky" way navigation was implemented in the previous version, the following design decisions have been made.
1. The top menu will be based around the `header` element and will not be able to do `display: fixed`. This will allow content over the fold to appear when important content exists in the menu. Space for a logo and some additional things will be added there.
2. `nav` will be used as a vertical menu, not `fixed`, that will display any navigational content as required by the user. This is the traditional navigation menu. It will be embeddable in a grid column left or right based on user preference.
3. Dropdown components will be removed, as the top bar does not need them to work properly and the side bar can be toggled with code.
4. Sidebar collapsing will not be added as a checkbox hack anymore, but users will be able to use Javascript for that.
5. An example of Javascript will be added for said collapse.
- All `checkbox` and `radio` elements will be `display: none` by default. Grouping one in an `input-group` with a `label` will give the desired style to the label.
- Created module `mini-core/checkbox`.
- Started styling `checkbox`es and `radio` buttons. Got most of the styling done, hardcoded.
- Updated demo again.
## 20161102
- Updated `checkbox` and `radio` styles for accesibility. Now they are visible to screen readers.
- Added style for `:hover`, :focus`, `:active` for the `label` elements of the `checkbox` module.
- Added `tabindex` marks for labels in the `checkbox` module demo.
- Added styling for `readonly` and `disabled` for `checkbox` module.
- Updated `checkbox` module and added variables.
- Added issue for flag `use-checkbox-tick-mark` to allow for one of two styles for `checkboxes` and variables according to that. Implementation pending for **v2.1** or similar.
- Minor updates to `button` and `form` for CSS consistencies.
- Added variables for `checkbox` module, optimized a little bit. (Some optimizations do not make sense, like no-border checkboxes and radio buttons, so I omitted them for this reason).
- Added edge case for tabbing to checkbox for `focus`, which will make the `label`'s box `border` glow to the blue-ish shade usually used.
- Removed `readonly` styling for `checkbox` and `radio` as it does not work due to technicalities.
- Updated demo page for `checkbox` module.
- Created `mini-core/navigation` for the navigational components.
- Cleanup in `core`, moved fixes for navigational to proper file, moved leftover fixes to their proper place.
- Added responsiveness for `img`.
- Updated demo page for `checkbox` module.
- Changed `inline` `progress` elements to use `vw` instead of `em`. Fixed a rare bug that would be caused due to that.
- Coded the `header` element's styling. Optimized.
- Made `header` responsive.
- Added demo for `header` element.
- Updated live page for `header`.
- *NOTE* There is some bleedthrough of styles from `button` to `navigation`, specifically for `header`. This is not a problem, but should be noted for further reference/testing etc.
- Extended testing for `header`, there seem to be no bugs.
- Deployed demo page with `header`.
- Added simple styling for `nav`. Created iteration builder for `sublink` and categories tree.
- Tested and optimized `nav`, added demo to `index`.
- Deployed demo page again.
- Added styling and variables for `footer`.
- Changed optimization for links in `footer` and `nav` to not distinguish between `:visited` links and normal ones, style needed reapplication.
- Tested `footer` component styling.
- Added `footer` to the demo page.
- Changed demo page structure to follow the ordering of modules in `core`.
- Tweaked `progress` `inline` to `60vw` instead of `80vw`, should fit more screens properly.
- Added a heading for the `utility` module section in demo page.
- Deployed demo page yet again.
- Created `mini-core/utility` for utilities and helper classes.
- Copied almost verbatim the mixins from *v1* for `make-border-generic` and `make-border-radial-style`. Added variables and calls for mixins in flavor.
- Copied and tweaked `make-breadcrumbs` mixin from *v1*'s extras.
- Changed the way `breacrumbs` are built (use some `em`-based `padding` now instead of some whitespaces).
- Dropped mixin for `make-btn-group`, opened issue (#23) to later build it.
- Added utility mixin `make-hidden` from *v1*, exactly the same.
- Added new utility mixin `make-visually-hidden` for accessible elements that are visually hidden.
- Added `make-floats` and `make-center-block` mixins along with `make-clearfix` mixin from *v1*.
- Explained utilities in demo page.
- Deployed demo page with utilities docs.
- Started developing `shell`. Added `shell` file and `mini-shell/card` file for the `card` module.
- Actually deleted `shell` file, moved everything to `core` file, renamed to `_mini.scss`.
- Played around with `card`s a little bit, got a few basic ideas down, tested centering in `row`, not worthwhile.
- Some minor styling for cards has been done, lots of work needed still.
## 20161103
- Added some more info in issue #16 about breaking changes and cards etc.
- Added the proper features needed for media inside `card`s, images and other parts named as media will respond as required and images will resize and center properly. This, in turn broke support for certain browsers.
- Added flexbox properties to cards to `align-self` and `justify-content` so that contents and containers will display properly.
- Created `large` and `small` variants for `card`s.
- Optimized `card`s and added variables etc.
- Tested cards, seem to work properly.
- Minor restructure of `utility` for consistency and such.
- Created mixin `make-card-section-alt-color` for alternate background `card` `section`s. Added a couple of variants just for fluff.
- Opened issue for more mixins to be added to `card` module later.
- Deployed live page.
## 20161104
- Added mixin `make-card-alt-color` to `card` module. Supplied an example of a different card (`primary`).
- Added mixin `make-card-alt-size` for `card` sizes.
- Changed `card`'s `small` and `large` to use above mixin.
- Added `fluid` for `card`s.
- Fixed a bug with `fluid` `card`s, the new optimization and checking routine should work for all percentage-based values.
- Updated demo a little bit to showcase all of the new features of `card`s.
- For consistency reasons (inconsistent `margin`s might cause problems with `card`s of different types), there is no choice to change the `margin` of customized `card`s through via mixin.
- Created mixin `make-card-section-alt-style`, added `double-padded` style to add twice the `padding` to sections.
- Deployed updated demo page.
- Added a new mixin `add-grid-row-cards-alignment` without parameters that allows `row`s to align the elements they contain automatically horizontally.
- Deployed demo again.
## 20161109
- Changed `checkbox` module a little bit to use `floor()` functions to fill the `:after` part, so that everything will look kinda tidier on most browsers. This has been modified after testing on more screens and noticing some minor discrepancies with the way `radio`s are presented.
- Created `mini-shell/accordion` for the `accordion/collapse` module (`accordion` from now on).
- Started styling the `accordion` component.
- *DESIGN DECISION* The `accordion` component will be used both for single collapses and multiple ones.
- Added accessibility to `accordion` component.
- Tweaked the way the `accordion` works to use `transform: scaleY()` so that the `transition` will work with it. Using `height` did not work due to the value of `auto` when content was shown.
- Fixed bug with `clip` and `clip-path` in Chrome for `accordion` module.
- Changed the way `accordion` works to use variables. Optimized code.
- Added demo for `accordion` to the `index` page.
- Tweaked values and colors of `accordion`. Tested in both Chrome and Firefox.
- Added support for `-webkit-` prefix for `transform` to support some browsers.
- Updated demo page for `accordion` with `radio`s as well.
- Added a small section about `tab`s and `carousel`s, just to allow me to test presentation a bit more.
- Deployed demo page with `accordion` demo.
- Added `mini-shell/tab` and `mini-shell/spinner` for the `tab` and `spinner` modules accordingly.
- Created `spinner-dot` class and custom-tailored the `spinner` for that. *NOTE* This spinner does not work perfectly fine with many elements, some tweaking might be required.
- Created `spinner-donut` class and made styling for that `spinner`.
- Added mixin `make-spinner-donut-alt-color` to allow for custom `spinner` styles. No optimizations are applied to this mixin, due to the fact that overwriting the background might cause trouble with the foreground etc.
- Optimized and softcoded most of the `spinner` module's stuff.
- Tested `tab` system for a while, tried out a lot of things, hardcoded demo.
- Fixed a variable naming discrepancy with `$tab-container-name`/`$tabs-container-name`.
- Softcoded `tab` module with variables. Optimized.
- Added responsiveness to `tab` module.
- Tested `tab` module thoroughly on both Firefox and Chrome (PC), will test further on phone.
- *DESIGN DECISION* The `accordion` and collapse module will be merged with the `tab` and carousel module. This is a very well-thought out decision, based on the fact that `accordion` components behave like `stacked` `tab` components. This means that users will be forced to use a heavier module for both components (which might not be beneficial if they only wish to use the `accordion` component), however this helps users mnemonically, by allowing more functionality in one technically identical structure. The specifics of this decision are laid out below:
1. The `stacked` class will be used for a `tabs` container, so that an `accordion` component can be easily emulated.
2. Some of the versatility of the `accordion` class will be sacrificed to allow `stacked` `tabs` to include the same functionality. Minor changes can still be made manually.
3. The `tabs` module will use different transformation tricks for `stacked` and normal tabs. Specifically, the responsive stacked tabs on smaller screens will use preset `height`, while `stacked` tabs will use `height: auto;`.
4. All controls for both types of `tab`s will be hidden from screen readers to make the content accessible as-is.
5. The old `accordion` module will be retired and possibly stored in a legacy folder. People that only want that old-school `accordion` module can use it.
6. `stacked` `tabs` will allow both `checkbox` and `radio` `input`s, normal ones will not allow `checkbox`. This is in line with the philosophy of the two components.
7. Carousels can still be built using any of the two styles.
8. `stacked` `tabs` will feature their own color scheme for some things to allow more customization within the module.
9. Both components will use a generic `:hover` effect.
10. The `transform`s applied before to `accordion` will still apply to `stacked` `tabs`.
- Refactored code of `tabs` to work with the above decision, removed obsolete artifacts from the `accordion` module.
- Made a few minor tweaks, decided not to add `accordion`-specific styling, as the current styling is just enough.
- Edited the demo page to include most of the new functionality.
- *TODO* Move `_accordion.scss` to the `legacy` folder etc.
- Deployed live demo.
- Tested on mobile, found some presentational problems.
- Minor change to the way `transition`s work for `tabs`, they will now all utilize the `transform` implementation.
- Deployed updated live demo page.
- Tested on mobile, works better.
- Minor `tabs` update for `:first-of-type` and `:last-of-type` selectors. This update should fix square top-right corners for single collapses.
- Deployed live demo.
- New module restructure: all modules will be moved to core, some merges might have to be applied (check issue #14). Restructure was applied as follows:
- Added the functionality of the new `alert` module to `contextual`. Includes mixin `make-alert-alt-color` for different `alert` color variants.
- Restructured folders. `mini-shell` removed, `mini-core` renamed to `mini`. `mini` is the core folder now.
- Created branch `v1-neutrino` both locally and on Github to support legacy versions in the future. `master` is now the branch for **Fermion** only.
- Aggressive deletion of older files. The following folder are now gone: `scss/mini`, `scss/mini-extra`, `flavors` except for the contents of the `v2` folder and the folder itself.
- Renamed `_mini.scss` to `_core.scss`, moved to the `scss/v2/mini` directory.
- Deleted `accordion` module file as it was obsolete.
- Renamed `scss` directory to `src`. Renamed `flavors` directory to `dist`.
- Moved flavors from their directory to the `src` directory. CSS files produced from flavor files will go to the `dist` folder, along with the minified versions.
- *TODO* Update the `package.json` and `bower.json` files according to the new framework version.
- Updated live demo page reference to use the new structure.
## 20161110
- Continued module restructure and cleanup as follows:
- Code cleanup in `core`, indentation change to tabs for consistency, indentation fixes etc.
- Started converting media queries from `only screen and ()` to plain `()`. Changes have been applied to `grid` module.
- Code cleanup in `grid`, indentation etc.
- Code cleanup in `table`. Media query conversions applied. Optimization.
- Code cleanup in `form`.
- Code cleanup in `button`. Updated `file` `input`s to be accessible.
- Code cleanup in `checkbox`. Optimizations.
- Restructured `form`, `button` and `checkbox` into one module: `input_control`. Made necessary changes for this to work properly.
- Code cleanup in `progress`. Merged `spinner` into `progress`. Removed `spinner-dot` from the `spinner` module as it was not a great component.
- Code cleanup for `contextual`. Minor `mark` optimizations. Added `alert` mixin `make-alert-alt-style` for alternative `alert` styles.
- Removed `spinner` file.
- Cleanup for `navigation`.
- Cleanup for `utility`.
- Cleanup for `card`. Changed loading order and variables to better reflect the new module system. Updated media queries.
- Cleanup for `tab`, updated media queries.
- Deployed live demo after cleanup.
- Added modular `box-shadow` to `card`s.
- Added modular `box-shadow` for `pre`, `code`, `kbd` and `mark`.
- Added `border-style` and `border-radius` to `mark` contextual defaults.
- Changed `padding` of `mark` elements.
- Added modular `box-shadow` to `alert`s.
- Added modular `box-shadow` for `form`, decided not to add for `fieldset` due to the way it displays and how it sort of clashes with the ideas of material design.
- Added modular `box-shadow` for `button` and button-like elements.
- Added modular `box-shadow` for `header` decided not to add for `nav` and `footer`.
- Added modular `box-shadow` for `progress` element.
- Added modular `box-shadow` for `table` element. Tweaked to be responsive on smaller screens.
- Added modular `box-shadow` for `tabs` container. This might have some minor problems with `border-radius`es.
- Added flexbox-based `button-group` system. Added responsiveness to it and optimized accordingly.
- Deployed live demo with new features.
## 20161111
- Rebuilt `breadcrumbs` from scratch. Uses flexbox.
- Changed `clearfix`, `center-block`, `hidden` and `visually-hidden` from mixins to normal components.
- Changed the appearance of `button-group`, it will now use `border` and `border-radius` more creatively to get rid of unnecessary and excessive styling.
- Added mixin `make-box-shadow-generic` in `utility`, used it to create a class for `box-shadow:none;` just in case.
- Added mixin in `progress` `make-spinner-donut-alt-style` for `spinner-donut` and created `large` variant with it.
- Added extra variables and styles for `grid` reordeing for `first`, `last` and `normal` (reset).
- Deployed demo page.
- Squashed a couple of bugs in header caused by `button` elements and button-likes using `box-shadow` and/or `border`/`border-style`.
- Renamed `index.html` from `v2` to `demo.html`.
- Created `template.html` as an empty template for pages for the framework's demo pages.
- Created new `index.html` as introduction page. Bare minimum content added.
- Added some custom styling for the cards in `index`.
- Changed the `border-radius` of `card`s to `0`.
- Deployed new live demo page.
- Fixed a mixup bug with `header` and `heading`. All the `hX` elements now use `heading` instead of `header` to deal with that problem.
- Slightly tweaked the `margin`s and stuff of `p` and `hX` elements.
- Added file size comparison between toolkits.
- Updated `table` `border-radius`es.
- Deployed live demo with fixes etc.
- Added a module list and browser support to the `index` page.
## 20161113
- Added `docs/v2/playground.html` to more extensively test some of the components, especially `card`s and more specifically `fluid` ones.
- Added the fix for `fluid` `card`s using `width: auto;` which was supposed to solve some issues (see #31).
- Figured out a new design paradigm for `fluid` `card`s inside `col-` elements: if two separate `div` containers are used, no `card` "spilling" is observed. This could be either a temporary or a permanent solution depending on the complexity of the real issue at hand. However **Fermion** can initially release like this, as the issue is considered controlled and stable for now.
- Removed the old fix from the `index` page, updated as needed.
- Removed a typo in the index page that read `Reponsive`.
- Figured out a good enough solution for the `fluid` `card` problem.
- Pushed the urgent `fluid` `card` fix to all deployed pages.
- Removed the `playground` page as its purpose was fulfilled.
- Closed issue #31 for good.
- Squashed another major bug in the `make-card-alt-size` mixin, stemming from the use of the conditions and logical operators in that. The issue was thoroughly tested and resolved for all cases. `&&` was replaced with `and` in said condition combination.
- Tested some minor color issues with the page's background color and the cards' background color. Made some adjustments, uncertain if I will keep them.
- Added `$table-body-back-color`, `$table-body-fore-color` and `$table-head-fore-color` in addition to the existing `$table-head-back-color` and optimized them accordingly.
- *TODO* Some minor changes to `.button-group` might be needed (button shadows overlapping and existing, the extra border etc.).
## 20161114
- Added the basic setup instructions in the `index` page.
- Added a few links for getting started in the `index` page. Page is complete for now.
- Minor updates to resources, description, title etc, updated `template` as well.
- Added links for the rest of the docs.
- Added browser logos to the table of `index`.
## 20161115
- Fixed `Reponsive` in `index`...
- Tested `table` `horizontal` layout with flexbox.
## 20161116
- Created `modules.html` page, added content.
- Bumped FontAwesome to v4.7.0 as some icons I used were from that version.
## 20161117
- Started writing `core.html` page.
- Added basic info in `core` page and info on headings.
- Minor changes in `core` module formatting.
- Added `core` documentation for common textual elements.
- Updated stylesheet reference to the latest changes for live pages.
## 20161119
- Started writing `grid.html` page.
- Added basic info for grid, set layout for the page, checked styles - they're all good for grid.
- Added layout demo showcase for the screen specific layouts.
## 20161121
- Changed `grid` breakpoints to `768px` and `1280px` accordingly to better support different resolutions.
- Updated `$button-group-mobile-breakpoint` to `767px` so that it will break on resolutions under `768px` instead of including `768px`.
- Same update for `$table-mobile-breakpoint` to `767px`.
- Updated `grid.html` documentation to reflect the latest changes.
- Updated all demo pages with latest reference to css file.
- Added dos and don'ts in the grid page under the first section.
- Added screen-specific layouts in the `grid.html` doc page.
- Added offsets to the `grid.html` doc page.
- Added reordering to the `grid.html` doc page, `grid` documentation finished - some polishing might still be required.
- Added a rule for `fluid` `card`s inside `col-` elements, allowing the side margins to disappear at the edges of the grid, allowing for better content viewing on mobile. Only for the demo, not in the actual toolkit.
- Changed the value of `$tab-stacked-breakpoint` to `767px` in line with above changes.
- Added `th` to the accessible hiding rule in the `table` module as a safeguard for different things.
- Heavily edited the `table` module. Desktop view now includes whole ruleset inside the `table` element, so no leaks will happen. Did the same for the responsive part of the module.
- Added support for horizontal and non-responsive tables in the `table` module. Added lots of new variables and rules as needed.
- Tested new `table` module functionality thoroughly. Everything seems to work like a charm, even if the implementation is a little bit fiddly due to flexbox playing some tricks.
- Updated a few colors for consistency.
- Added support for `striped` `table`s in the `table` module. Updated accordingly with variables and the likes.
- Added responsiveness for `striped` `table`s.
- Updated stylesheet references for all live pages.
- Fixed typos and proofread the `grid` documentation page.
- Added sample `hr` to the `core` documentation page.
## 20161122
- Added side `padding` to the `horizontal` `table`s.
- Fixed the way `th` elements display on `vertical` `table`s that contain `th` elements inside the `tbody` by adding a semi-specific rule for the `thead` `th` elements. More specificity caused problems.
- Tested `table` module changes on mobile, Firefox and Chrome.
- Created `navigation.html`.
- Added basic info for `navigation` doc page.
- Added basic structure for `navigation` doc page.
- Added samples for `header`, `nav` and `footer` in the `navigation` doc page.
- Added `box-shadow` to the `nav` element to be in line with the rest of the design. Added a `border`, too.
- Tweaked colors and values of other things in the `navigation` module's variables in the flavor file.
- Updated `navigation` module with optimization and borders.
- Updated all `box-shadow` variable checks to test for `none` instead of `0` as that is the proper syntax used for no shadows. This will help with user-friendliness in customization.
- Added some extra styling to the `header` component, allowing `span` elements to be used as separators between links.
- Added defaults to header at the very top.
- Added description for the `header` component in the `navigation` doc page.
- Added description for the `nav` component in the `navigation` doc page.
- Added `footer` documentation in the `navigation` doc page. Finished the page.
## 20161124
- Created `docs/v2/progress.html` doc page for `progress` module.
- Added variable `$progress-max-value` for the arithmetic max value of the `progress` elements, changed to `1000` from original default `100`.
- Made some minor tweaks to the `progress` module and component.
- Opened a question on SO about the `progress` element's `margin-right`: http://stackoverflow.com/questions/40795218/progress-element-does-not-respect-right-margin
- Wrote the basic information for the `progress` module on the doc page.
## 20161125
- Added high-tech feature queries for `progress` elements and variants, `margin` and `width` should now work properly. Tested in Firefox and Chrome.
- Updated demo pages with latest build.
- Tweaks in the `core` module to use a `px`-based root in the `html` element.
- Tweaks in the `core` module to use the "native font stack" - See here: https://www.smashingmagazine.com/2015/11/using-system-ui-fonts-practical-guide/
- Documented basic `progress` module's `progress` element structure.
- Added `spinner` support for older `webkit`-based browsers.
- Added variables and styling for `ol` and `ul` lists in the `core` module after realising I forgot to style these elements and having found a bit of a styling discrepancy.
- Updated `core` documentation page to reflect list changes.
- Made some tweaks in the `utility` module to make `breadcrumbs` work as before.
- Added `progress` variant section in the `progress` module's doc page.
- Updated `index` to reflect the minor bloating of the files that has occured lately. Shame, really.
- Completed documentation for `progress` module.
## 20161126
- Tweaks and additions to the `contextual` module. `alert`s should now have the proper mixins, `mark` has an extra class for `inline-block` and `mark` mixins have been updated to incorporate shadows.
- Contextual testing in `playground`.
- Updated `progress` module mixin to use `box-shadow` if available.
- Removed `max-width: 100%` from the `alert` component as it was not needed due to `display: block;`.
- Updated transitions to use `-webkit-` prefix as needed.
- Added animated `alert`s on condition.
- Documented basic `mark` behavior and stuff.
- Basic documentation for `alert`s.
- Documented `animated` `alert`s. Documentation of `contextual` seems to be complete.
- Added `card` doc page.
- Added some basic info on `card`s in doc page.
- Updated basic documentation for `card` module in doc page.
- Updated some mixins in the `card` module.
- Tested video embedding in `card`s and it works!
- Added some information and demos about `card` `section`s.
- Changed values for some `card` module variables used in mixins.
- Fully documented `card` module.
- Updated `img` responsiveness in `core` to use `max-width` instead of `width`.
- Added documentation for responsive `img` and general typography rules in the `core` doc page.
- Deployed latest demo CSS file.
- Deleted `template.html` as I never actually used it.
- Deleted parts of `playground.html` to reflect documented modules.
## 20161128
- Updated the `card` doc page to include some technical info about the `object-fit` usage. Polyfills should help with the problems.
- Started the `table` doc page.
- Made `alert`s not have rounded corners.
- Added some base info on `table` module doc page and a basic example.
- Full documentation for `table` module.
- Updated all doc pages to use **2 spaces** per indentation.
## 20161205
- `playground` cleanup, readying for the rest of the modules to be tested and documented.
- Added empty `input_control.html` documentation page for the module of the same name.
- Basic structure for `input_control` module's doc page.
- Updated color definitions for almost all the `input_control` `form` elements.
- Changed the `placeholder` rules a little bit to work properly for all elements now.
- Tested a few things in `playground` about `input_control`.
- Changed a little it of the colors used for `button` components. The `background` color used is custom, not from the material colors of Google Material, as I had to find a middle ground. The only discrepancy so far.
- Added customizable `$button-group-margin` and `$button-group-box-shadow` for `button-group` to make it more well-defined.
- Tweaked size variants for `button`s.
- Added `inverse` `button` style to the list of `button` styles.
- Removed the `custom` `button` demo that was still lingering in the current flavor.
- Updated colors and stuff for `button` color variants. They should be consistent now.
## 20161206
- Tweaks to the `checkbox` and `radio` components. Added a lot of customization and recalculated their values from the ground up. This should fix problems with displaying them on different screens.
- Updated the awkward `navigation` `header` component after the `button` changes.
- Logo in `header` changed to reflect the new style.
- Changed `button` default coloration to a material color palette from Google Material Design, so that it will now be more consistent. Tweaked `opacity` to make this work.
- Bumped demo stylesheet to latest commit.
- Tweaked `tab` module colors and variables for consistency with the rest of the modules.
- Added basic documentation for `form`s and `input`s in the `input_control` doc page.
## 20161207
- Documented `radio` and `checkbox` in the `input_control` doc page.
- Tweaked all references of `$back-color` to now use `#fafafa` instead of the previous `#f5f5f5`. This will make contrast better and allow for better visibility of certain pieces of text.
- Full documentation for `button`s and `button-group`s.
- Added documentation for `file` upload in the `input_control` module. Docs complete.
- Removed `demo.html` as it had outlived its purpose.
- `playground.html` cleanup. Moved all the rest of the data from the old `demo` page into it.
## 20161210
- Added `tab.html` for `tab` module documentation.
- Basic documentation and syntax explanation of `tab` module.
- Added documentation for `stacked` `tab`s in `tab` module doc page. Module documentation complete.
- `playground` cleanup, only `utility` module remains there now.
- Added `$breadcrumbs-margin` and updated accordingly to actually use a proper `margin` value if one is speciified, otherwise it will apply the resets.
- *TODO* Add responsive margin and responsive padding mixins in `utility`.
- *TODO* Add circular fixed size elements with close and dropdown icon that will change background color from opacity 0.00 to 1 (transitioned) when hovered over, selected, active etc.
- *TODO* Add folder for `v1` in `docs`, keep folder for `v2`. Add an `index.html` in `v2` that will redirect to the main `index.html`, move contents currently in `v2` to main `docs` folder. Move contents of main `docs` folder to `v1` afterwards. This will allow doc pages by version, while being SEO friendly.
- *TODO* Create a cheatsheet page for all the syntaxes for `v2` as a quick and easy guide to find things. Add to main menu.
- *TODO* Update the `style`sheet for all pages to use a file probably (more calls, but easier to maintain).
## 20161211
- Created `utility.html`, started documentation.
- Implemented mixins for responsive `padding` and `margin` in `utility`.
- Implemented new `close` icon/button in `utility`.
- Documented visibility helpers, floats etc., borders and shadows for `utility`.
## 20161213
- Used `utility` mixins to create `responsive-margin` and `responsive-padding` classes.
- Thoroughly tested `close` and `breadcrumbs`. Found dos and don'ts.
- Completed documentation for `utility` module.
- Removed `playground.html` page, as it was no longer needed.
- Updated comments for modules, so that they can show up in the resulting file.
- Removed local stylesheet from all pages, added newest version of live stylesheet.
- **Updated live demo to showcase new file size, new module components and full documentation for modules.**
- Added some basic OpenGraph meta properties to `index` for Facebook sharing tests.
- Added `flavors.html` and `customization.html`.
- Probably finished `flavor.html`.
## 20161215
- Added styling for `blockquote` in `core` module, just to make sure nothing is really missing.
- Demo updated to include the latest addition.
- Updated table of sized in `index`.
- Started writing `customization`.
- Documented `core` in `customization`.
- `customization` documentation complete (very simplistic, but I think the flavor file is better as a guideline).
- Updated `bower.json` and `package.json`.
- Added `.npmignore` and tested to see if it works.
- Moved docs around, getting ready for release.
## 20161216
- Created `quick_reference.html` page for quick reference.
- Documented `core`'s quick reference with codepens etc.
- Updated link references to `v2.0.0` instead of `v2.0`.
- Added documentation for `grid` module in the quick reference guide.
- Made logo redirect to `index` on all pages.
- Structured base of the whole `quick reference` page.
- Written documentation for `navigation` in quick reference.
- Linked to `quick_reference.html` from all page's header.
## 20161219
- Added code to `quick reference` from all modules. Codepens not done yet.
- Typo fixes and changes in `table`.
- Created codepens until the end of `contextual`, `progress` and `utility` will be done later today.
- *TODO* Notes for `quick reference`.
- *TODO* Readme, demo image etc.
- Extensive proofreading and fixes.
- Finished Codepens.
## 20161220
- Added notes for `input_control` in `quick reference`.
- Documented `table` in `quick reference`.
- Documented `card` in `quick reference`.
- Documented `tab` in `quick reference`.
- Documented `contextual` in `quick reference`.
- Documented `progress` in `quick reference`.
- Documented `utility` in `quick reference`.
- Updated **README** and OpenGraph in `index`.
- Added OpenGraph info to all pages.
- Doc page code cleanup.
- Updated everything, releasing **v2.0.0**.
# v2.0.1 Development Log
## 20161222
- Merged the pull request from @roryprimrose.
- Changed the `_typography.scss` file to `_core.scss`.
- Moved the `@import` statements to the flavor files.
- Updated `customization.html` to make sure the notes reflect the new structure of the toolkit.
- Demo pages updated to use the latest version of the toolkit (v2.0.1).
- Updated `CHANGELOG.md` to reflect new changes.
- Moved mixin `@include` statements inside the flavor files.
# v2.0.2 Development log
## 20161230
- Tweaked default color palette to deal with red-green colorblindness (see #52). `contextual` and `input_control` are affected by this change.
- *TODO* Update the live version sheets to use the v2.0.2 sheet, update all the references in live demo, update the flavors page.
- *TODO* Update the live version local sheets to use the new colors whenever needed.
- *TODO* New flavor with girlfriend.
## 20161231
- GF worked on `sucroa` flavor.
## 20170101
- GF finished `sucroa` flavor.
## 20170102
- Merged pull request for `sucroa` flavor.
- Documented `sucroa` flavor in `flavors.html`.
- Updated `README` and `CHANGELOG`.
- Updated `.do` and `.dont` classes for doc pages.
- Doc pages updated to use v2.0.2.

18
docs/v2/index.html Normal file
View File

@@ -0,0 +1,18 @@
<!DOCTYPE html>
<html>
<head>
<title>mini.css - Minimal, responsive, style-agnostic CSS toolkit</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta name="keywords" content="mini, mini.css, CSS, framework, toolkit, minimal, responsive, style-agnostic, Sass">
<meta name="author" content="Angelos Chalaris (chalarangelo)">
<meta property="og:title" content="mini.css - Minimal, responsive, style-agnostic CSS toolkit">
<meta property="og:type" content="website"/>
<meta property="og:description" content="mini.css is a tiny CSS toolkit designed to build quick, modern and responsive websites."/>
<meta property="og:image" content="../page_thumb.PNG">
<meta property="og:url" content="https://chalarangelo.github.io/mini.css/">
<link rel="icon" type="image/png" href="favicon.png">
<meta http-equiv="refresh" content="0; url=https://chalarangelo.github.io/mini.css/">
</head>
</html>

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -1,420 +0,0 @@
//====================================================================
// This is the file you should edit to make the flavor you want.
// Please read the instructions carefully.
//====================================================================
// !! IMPORTANT !!
// Please copy this file or rename it, if you want to keep the default
// flavor definitions file.
//====================================================================
// Update the comment below to include it in your flavor, providing the information
// you want along with your customized flavor. You can also delete it if you don't
// want it in your final CSS file.
/*
Flavor name: Default (mini-default)
Author: Angelos Chalaris (chalarangelo@gmail.com)
mini.css version: v1.0 (September, 2016)
*/
//====================================================================
//
// CORE COMPONENTS (located in `mini`):
//
//====================================================================
// Variable definitions for the Base module (_base.scss)
//====================================================================
// Basic rules for body
$body-margin: 0; // Margin for body
$body-bg-color: #f5f5f5; // Body background color
$body-color: #222; // Body text color
// Basic typography rules
$base-fonts: "\"Helvetica Neue\", Helvetica, sans-serif"; // Font-family
$base-font-size: 1em; // Font-size
$base-line-height: 1.5; // Line-height
// Rules for headers (multipliers apply on top of the basic typography rules)
$h1-multiplier: 2; // Header 1 font-sze multiplier
$h2-multiplier: 1.5; // Header 2 font-sze multiplier
$h3-multiplier: 1.15; // Header 3 font-sze multiplier
$h4-multiplier: 1; // Header 4 font-sze multiplier
$h5-multiplier: 0.8; // Header 5 font-sze multiplier
$h6-multiplier: 0.7; // Header 6 font-sze multiplier
$header-line-height-multiplier: 0.8; // Multiplier for line height of headers
$header-margin: 0.7em 0; // Margin for headers
$header-font-weight: 500; // Font weight for headers
// Rules for small elements inside headers
$header-small-color: lighten($body-color, 20%); // Header small text color
$header-small-font-weight: 200; // Header small font weight
// Rules for horizontal rules
$hr-line-height-multiplier: 0.8; // Multiplier for line height of horizontal rule
$hr-margin: 0.7em 0; // Margin for horizontal rule
$hr-border-style: 1px solid darken($body-bg-color, 15%); // Color and style of horizontal rule
// Common content typography rules (paragraphs, lists etc.)
$p-margin: 0 0 0.6em; // Margin for paragraph and pre elements
$small-font-size: 75%; // Font size for small, sub and sup elements
$sub-bottom: -0.25em; // Sub bottom
$sup-top: -0.5em; // Sup top
$list-margin-top: 0; // Top margin for lists
$list-margin-bottom: 0.6em; // Bottom margin for lists
$mark-bg-color: #ffff33; // Mark background color
$mark-color: $body-color; // Mark text color
// Code, preformatted and keyboard rules
$code-fonts: monospace, monospace; // Font-family for code, pre, kbd, samp elements
$code-padding: 2px 4px; // Padding for code and pre elements
$code-bg-color: darken($body-bg-color, 10%); // Code and pre background color
$code-border-radius: 4px; // Border radius for code, pre and kbd elements
$kbd-bg-color: $body-color; // Kbd background color
$kbd-color: lighten($body-bg-color, 3.5%); // Kbd text color
// Hyperlink rules
$a-color: #2678b3; // Hyperlink text color
$a-hover-color: lighten($a-color, 10%); // Hyperlink hover text color
$a-visited-color: darken($a-color, 10%); // Hyperlink visited text color
$a-visited-hover-color: $a-color; // Hyperlink visited hover text color
// Button, input and form rules
$button-fonts: $base-fonts; // Font-family for buttons and inputs
$button-font-size: 100%; // Font size for buttons and inputs
$button-line-height-multiplier: 0.8; // Multiplier for line height of buttons and inputs
$button-margin: 0; // Margin for buttons and inputs
$fieldset-border: 1px solid darken($body-bg-color, 15%); // Border style for fieldset
$fieldset-border-radius: 4px; // Border radius for fieldset
$fieldset-margin: 0 2px; // Margin for fieldset
$fieldset-padding: 0.35em 0.65em 0.75em; // Padding for fieldset
// Enable base (_base.scss) and use the variables defined above.
@import '../scss/mini/base';
//====================================================================
// Variable definitions for the Button module (_button.scss)
//====================================================================
// Colors and styles (you can remove things you don't need or define more
// colors if you need them).
$btn-default-color: #2a2a2a; // Default text color for buttons
$btn-alt-color: #eeeeee; // Alternative text color for buttons
$btn-default-bg-color: #eaeaea; // Default background color for buttons
$btn-b-bg-color: #3f84b3; // Color for button style 1
$btn-g-bg-color: #2db747; // Color for button style 2
$btn-r-bg-color: #ea4848; // Color for button style 3
// Button class names (you can remove things you don't need or define more
// classes if you need them).
$btn-class-name: btn; // Name for the base button class
$btn-style1-name: 'blue'; // Name for button style 1 class
$btn-style2-name: 'green'; // Name for button style 2 class
$btn-style3-name: 'red'; // Name for button style 3 class
$btn-size1-name: lg; // Name for the button size 1 class
$btn-size2-name: sm; // Name for the button size 2 class
// Enable buttons (_button.scss). (Use individual mixins below to use.)
@import '../scss/mini/button';
// Use button mixins to create buttons with given specs. For more information
// refer to the _button.scss file to check the definitions.
@include make-btn($btn-class-name, 0, 4px, 2px 0, 6px 12px, $btn-default-color, $btn-default-bg-color, lighten, 7.5%, pointer, not-allowed, .65);
@include make-btn-style($btn-class-name, $btn-style1-name, $btn-alt-color, $btn-b-bg-color);
@include make-btn-style($btn-class-name, $btn-style2-name, $btn-alt-color, $btn-g-bg-color);
@include make-btn-style($btn-class-name, $btn-style3-name, $btn-alt-color, $btn-r-bg-color);
@include make-btn-size($btn-class-name, $btn-size1-name, 9px 15px, 135%);
@include make-btn-size($btn-class-name, $btn-size2-name, 4px 8px, 80%);
//====================================================================
// Variable definitions for the Grid module (_grid.scss)
//====================================================================
// Class names for the grid system
$grid-container-name: grid-container; // Name for the grid container class
$grid-row-name: row; // Name for the grid's row class
$grid-column-name: col; // Name for the grid's column class
$grid-extra-small-device-name: xs; // Name for extra small devices
$grid-small-device-name: sm; // Name for small devices
$grid-medium-device-name: md; // Name for medium devices
$grid-large-device-name: lg; // Name for large devices
$grid-no-show-name: no; // Name for hidden grid elements class
// Grid breakpoints for different screens
$grid-small-breakpoint: 768px; // Breakpoint for extra small to small devices
$grid-medium-breakpoint: 1024px; // Breakpoint for small to medium devices
$grid-large-breakpoint: 1280px; // Breakpoint for medium to large devices
// Enable grid(s) (_grid.scss). (Use individual mixins below to use.)
@import '../scss/mini/grid';
// Use grid mixin to create grid with given specs. For more information
// refer to the grid.scss file to check the definitions.
@include make-grid($grid-container-name, 0, $grid-row-name, $grid-column-name, 12, 12px, $grid-extra-small-device-name, $grid-small-device-name, $grid-medium-device-name, $grid-large-device-name, $grid-no-show-name, $grid-small-breakpoint, $grid-medium-breakpoint, $grid-large-breakpoint);
//====================================================================
// Variable definitions for the Form module (_form.scss)
//====================================================================
// Class names for the forms and components
$form-class-name: frm; // Name for the form class
$form-control-group-name: ctrl-group; // Name for the form's control group class
// Colors for form components
$form-focus-color: #2678b3; // Color for focused form element outline
$form-invalid-color: #e9322d; // Color for invalid form element outline
// Enable forms (_form.scss). (Use individual mixins below to use.)
@import '../scss/mini/form';
// Use form mixin to create form with given specs. For more information
// refer to the _form.scss file to check the definitions.
@include make-frm($form-class-name, 1px solid #ccc, 4px, 0.2em, 0.3em, $form-focus-color, $form-invalid-color, not-allowed, .65, darken($body-bg-color,10%), darken($body-bg-color,25%), 1.9em, 0.5em 0 0 0.2em, $form-control-group-name, 0 0 0.3em 0, inline, aligned,15em);
//====================================================================
// Variable definitions for the Table module (_table.scss)
//====================================================================
// Class names for the tables
$table-class-name: tbl; // Name for the table class
$table-horizontal-name: hor; // Name for the horizontal style tables
$table-bordered-name: bor; // Name for the bordered style tables
// Colors for the tables
$table-head-bg-color: #d9d9d9; // Table header background color
$table-head-color: #111; // Table header text color
$table-body-bg-color: #f5f5f5; // Table body bakground color
$table-body-alt-bg-color: #ececec; // Table body alternative background color
$table-body-color: #111; // Table body text color
// Enable tables (_table.scss). (Use individual mixins below to use.)
@import '../scss/mini/table';
// Use table mixin to create table with given specs. For more information
// refer to the _table.scss file to check the definitions.
@include make-tbl($table-class-name, 1px solid #bdbdbd, 0, 0.5em, $table-head-bg-color, $table-head-color, $table-body-bg-color,$table-body-alt-bg-color, $table-body-color, $table-horizontal-name, $table-bordered-name);
//====================================================================
// Variable definitions for the Navigation module (_nav.scss)
//====================================================================
// Class names for the navigation elements
$navigation-class-name: nav; // Name for the navigation bar class
$navigation-vertical-name: vertical; // Name for the vertical navigation class
$navigation-fixed-name: fixed; // Name for the fixed navigation class
$navigation-logo-name: logo; // Name for the navigation logo class
$navigation-link-name: link; // Name for the navigation link class
// Colors and breakpoint for the navigation
$navigation-bg-color: #272727; // Background color for the navigation bar
$navigation-color: #ddd; // Color for the navigation text
$navigation-fixed-collapse-breakpoint: 768px; // Breakpoint for fixed naviation collapse
// Enable navigation (_nav.scss). (Use individual mixins below to use.)
@import '../scss/mini/nav';
// Use nav mixin to create nav with default specs. For more information
// refer to the _nav.scss file to check the definitions.
@include make-nav($navigation-class-name, $navigation-vertical-name, $navigation-fixed-name, $navigation-logo-name, 135%, $navigation-link-name, 8px, $navigation-color, $navigation-bg-color, darken, 7.5%, not-allowed, .65, left, 12, 2, $navigation-fixed-collapse-breakpoint, top-right, 10px, 1.75em);
//====================================================================
// Variable definitions for the Utilities and Helper Classes module (_utility.scss)
//====================================================================
// Class names for the utility and helper classes (you can remove things you
// don't need or define more if you need them).
$thumbnail-class-name: thumb; // Name for the thumbnail class
$bordered-class-name: bordered; // Name for the bordered class
$bordered-radial-name: rounded; // Name for the rounded border class
$bordered-radial2-name: circle; // Name for the alternative rounded border class
$colored-text1-name: txt-blue; // Name for the colored text style 1 class
$colored-text2-name: txt-green; // Name for the colored text style 2 class
$colored-text3-name: txt-red; // Name for the colored text style 3 class
$colored-bg-text1-name: bg-blue; // Name for the colored background text style 1 class
$colored-bg-text2-name: bg-green; // Name for the colored background text style 2 class
$colored-bg-text3-name: bg-red; // Name for the colored background text style 3 class
$drag-left-name: drg-left; // Name for the drag-left class
$drag-right-name: drg-right; // Name for the drag-right class
$center-block-name: ct-block; // Name for the center block class
$caret-class-name: caret; // Name for the caret class
$close-class-name: close; // Name for the close class
$clearfix-class-name: cf; // Name for the clearfix class
$hidden-class-name: hidden; // Name for the hidden class
// Colors for the utility and helper classes (you can remove things you
// don't need or define more colors if you need them).
$bordered-radial-radius: 4px; // Border radius of rounded borders
$bordered-radial2-radius: 50%; // Border radius of the alternative rounded borders
$colored-text1-color: $btn-b-bg-color; // Text color for the colored text style 1 class
$colored-text2-color: $btn-g-bg-color; // Text color for the colored text style 2 class
$colored-text3-color: $btn-r-bg-color; // Text color for the colored text style 3 class
$colored-bg-text1-bg-color: $btn-b-bg-color; // Background color for the colored text style 1 class
$colored-bg-text2-bg-color: $btn-g-bg-color; // Background color for the colored text style 2 class
$colored-bg-text3-bg-color: $btn-r-bg-color; // Background color for the colored text style 3 class
// Enable utilities (_utility.scss). (Use individual mixins below to use.)
@import '../scss/mini/utility';
// Use utility mixins to create utility classes with given specs. For more information
// refer to the _utility.scss file to check the definitions.
@include make-thumb($thumbnail-class-name, 0.25em, 1px solid #ccc, 4px);
@include make-border-generic($bordered-class-name);
@include make-border-radial-style($bordered-radial-name, $bordered-radial-radius);
@include make-border-radial-style($bordered-radial2-name, $bordered-radial2-radius);
@include make-colored-text($colored-text1-name, $colored-text1-color);
@include make-colored-text($colored-text2-name, $colored-text2-color);
@include make-colored-text($colored-text3-name, $colored-text3-color);
@include make-colored-bg-text($colored-bg-text1-name, $colored-bg-text1-bg-color);
@include make-colored-bg-text($colored-bg-text2-name, $colored-bg-text2-bg-color);
@include make-colored-bg-text($colored-bg-text3-name, $colored-bg-text3-bg-color);
@include make-caret-down($caret-class-name, 0.35em, #222);
@include make-close($close-class-name, #aaa, pointer, 1.3em, 700, #777);
@include make-drags($drag-left-name, $drag-right-name);
@include make-center-block($center-block-name);
@include make-clearfix($clearfix-class-name);
@include make-hidden($hidden-class-name);
//====================================================================
//
// EXTRA COMPONENTS (located in `mini-extra`):
//
//====================================================================
// Variable definitions for the Label module (_label.scss)
//====================================================================
// Colors and styles (you can remove things you don't need or define more
// colors if you need them).
$lbl-default-color: $btn-alt-color; // Default text color for labels/badges
$lbl-default-bg-color: #777; // Default background color for labels/badges
$lbl-b-bg-color: $btn-b-bg-color; // Color for labels/badges style 1
$lbl-g-bg-color: $btn-g-bg-color; // Color for labels/badges style 2
$lbl-r-bg-color: $btn-r-bg-color; // Color for labels/badges style 3
// Label class names (you can remove things you don't need or define more
// classes if you need them).
$lbl-class-name: lbl; // Name for the base labels class
$lbl-style1-name: 'blue'; // Name for labels/badges style 1 class
$lbl-style2-name: 'green'; // Name for labels/badges style 2 class
$lbl-style3-name: 'red'; // Name for labels/badges style 3 class
$badge-class-name: bdg; // Name for the base badges class
// Enable labels (_label.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/label';
// Use label mixins to create labels with given specs. For more information
// refer to the _label.scss file to check the definitions.
@include make-lbl($lbl-class-name, $lbl-default-bg-color, $lbl-default-color, 4px, 6px 10px, hide);
@include make-lbl-style($lbl-class-name, $lbl-style1-name, $lbl-default-color, $lbl-b-bg-color);
@include make-lbl-style($lbl-class-name, $lbl-style2-name, $lbl-default-color, $lbl-g-bg-color);
@include make-lbl-style($lbl-class-name, $lbl-style3-name, $lbl-default-color, $lbl-r-bg-color);
@include make-lbl($badge-class-name, $lbl-default-bg-color, $lbl-default-color, 8px, 3px 8px, hide);
@include make-lbl-style($badge-class-name, $lbl-style1-name, $lbl-default-color, $lbl-b-bg-color);
@include make-lbl-style($badge-class-name, $lbl-style2-name, $lbl-default-color, $lbl-g-bg-color);
@include make-lbl-style($badge-class-name, $lbl-style3-name, $lbl-default-color, $lbl-r-bg-color);
//====================================================================
// Variable definitions for the Tab module (_tab.scss)
//====================================================================
// Tab class names.
$tabs-class-name: tabs; // Name for the tab system container class
// Colors and styles (you can remove things you don't need or define more
// colors if you need them).
$tabs-border-color: #ccc; // Border color for the tabs system
$tabs-content-bg-color: #fff; // Background for the active tab's content
$tabs-color: $a-color; // Color for the text in the tab labels
$tabs-bg-color: $body-bg-color; // Background color for the tab labels
$tabs-active-color: $body-color; // Color for the text in the active tab's label
$tabs-active-bg-color: $tabs-content-bg-color; // Background color for the active tab's label
$tabs-active-stripe-style: 3px solid $a-color; // Style for the active tab label's stripe
// Enable tabs (_tab.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/tab';
// Use tabs mixin to create tab system with given specs. For more information
// refer to the _tab.scss file to check the definitions.
@include make-tabs($tabs-class-name, 250px, 3px, 40px, 8px 14px, $tabs-color, $tabs-bg-color, $tabs-active-color, $tabs-active-bg-color, $tabs-border-color, 4px 4px 0 0, $tabs-active-stripe-style, 'darken', 10%, $tabs-content-bg-color, 20px);
//====================================================================
// Variable definitions for the Modal module (_modal.scss)
//====================================================================
// Modal class names.
$modal-class-name: modal; // Name for the modal class
// Colors and styles (you can remove things you don't need or define more
// colors if you need them).
$modal-bg-color: $body-bg-color; // Background color for the modal
$modal-color: $body-color; // Color for the text in the modal
$modal-border: 1px solid #ccc; // Border style for the modal
// Enable modal (_modal.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/modal';
// Use modal mixin to create modal with given specs. For more information
// refer to the _modal.scss file to check the definitions.
@include make-modal($modal-class-name, $modal-color, $modal-bg-color, 'enabled', 'enabled', $modal-border, 4px, 18px, 8.5%, 45%);
@include make-modal-close-support($modal-class-name, $close-class-name, 20px);
//====================================================================
// Variable definitions for the Dropdown module (_dropdown.scss)
//====================================================================
// Dropdown class names.
$dropdown-class-name: dropdown; // Name for the modal class
// Enable dropdown (_dropdown.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/dropdown';
// Use dropdown mixin to create dropdown with given specs. For more information
// refer to the _dropdown.scss file to check the definitions.
@include make-dropdown($navigation-class-name, $navigation-link-name,$dropdown-class-name, 20px, 0.8em);
//====================================================================
// Variable definitions for the Collapse module (_collapse.scss)
//====================================================================
// Collapse and accordion class names.
$collapse-class-name: clps; // Name for the collapse class
$accordion-class-name: acrd; // Name for the accordion class
// Collapse colors and styles (you can remove things you don't need or
// define more colors if you need them).
$collapse-border: 1px solid #ccc; // Border style for the collapse
$collapse-color: $body-color; // Color for the text in the collapse
$collapse-bg-color: #eeeeee; // Background color for the collapse
// Accordion colors and styles (you can remove things you don't need or
// define more colors if you need them).
$accordion-border: $collapse-border; // Border style for the accordion
$accordion-color: $collapse-color; // Color for the text in the accordion
$accordion-bg-color: $body-bg-color; // Background color for the accordion
$accordion-label-color: $collapse-color; // Color for the text in the accordion's label
$accordion-label-bg-color: $collapse-bg-color; // Background color for the accordion's label
// Enable collapse (_collapse.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/collapse';
// Use collapse and accordion mixins to create components wit the given specs.
// For more information refer to the _collapse.scss file to check the definitions.
@include make-collapse($collapse-class-name, $collapse-border, 4px, 10px, 5px, $collapse-color, $collapse-bg-color);
@include make-accordion($accordion-class-name, $accordion-border, 4px, 10px, 5px, $accordion-color, $accordion-bg-color, $accordion-label-color, $accordion-label-bg-color, 8px, 'darken', 7.5%);
//====================================================================
// Variable definitions for the Progress module (_progress.scss)
//====================================================================
// Progress and progress variants class names.
$progress-class-name: prg; // Name for the progress class
$progress-bar-style1-name: 'green'; // Name for the progress bar style 1 class
$progress-bar-style2-name: 'red'; // Name for the progress bar style 2 class
// Progress and p progress variants colors (you can remove things you
// don't need or define more colors if you need them).
$progress-bg-color: #d7d7d7; // Background color for the progress bar container
$progress-bar-color: $btn-alt-color; // Color for the text of the progress bar
$progress-bar-style1-color: $btn-alt-color; // Color for the text of the style 1 progress bar
$progress-bar-style2-color: $btn-alt-color; // Color for the text of the style 2 progress bar
$progress-bar-bg-color: $btn-b-bg-color; // Background color for the progress bar
$progress-bar-style1-bg-color: $btn-g-bg-color; // Background color for the style 1 progress bar
$progress-bar-style2-bg-color: $btn-r-bg-color; // Background color for the style 2 progress bar
// Enable progress (_progress.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/progress';
// Use progress mixins to create progress bars with given specs. For more
// information refer to the _progress.scss file to check the definitions.
@include make-progress($progress-class-name, 20px, 4px, $progress-bg-color, 0.8em, $progress-bar-color, $progress-bar-bg-color);
@include make-progress-bar-variant($progress-class-name, $progress-bar-style1-name, $progress-bar-style1-color, $progress-bar-style1-bg-color);
@include make-progress-bar-variant($progress-class-name, $progress-bar-style2-name, $progress-bar-style2-color, $progress-bar-style2-bg-color);
//====================================================================
// Variable definitions for the Carousel module (_carousel.scss)
//====================================================================
// Carousel class names.
$carousel-class-name: carousel; // Name for the carousel class
// Carousel colors and styles.
$carousel-border: 1px solid #ccc; // Border style for the carousel
$carousel-content-bg-color: #e7e7e7; // Background color for the carousel
$carousel-description-color: $body-bg-color; // Color for the text in the carousel's description
$carousel-description-bg-color: $body-color; // Background color for the carousel's description
$carousel-control-color: #fafafa; // Color for the carousel's control elements
// Enable carousel (_carousel.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/carousel';
// Use carousel mixin to create carousel with given specs. For more
// information refer to the _carousel.scss file to check the definitions.
@include make-carousel($carousel-class-name, 80%, 500px, $carousel-border, 4px, $carousel-content-bg-color, 10px, $carousel-description-color, $carousel-description-bg-color, 340px, 160px, 450px, 1.8em, $carousel-control-color);
//====================================================================
// Variable definitions for the Utility module (_utility.scss)
//====================================================================
// Utility class names.
$breadcrumbs-class-name: brdcrmb; // Name for the breadcrumbs class
$well-class-name: well; // Name for the well class
$alert-style1-class: alert-blue; // Name for the style 1 alert
$alert-style2-class: alert-green; // Name for the style 2 alert
$alert-style3-class: alert-red; // Name for the style 3 alert
$panel-class-name: panel; // Name for the panel class
$panel-header-name: head; // Name for the panel's header class
$button-states-class-name: stateful; // Name for the stateful button class
$button-group-class-name: btn-grp; // Name for the button group class
$popover-above-name: popover-top; // Name for the popover above class
$popover-below-name: popover-bottom; // Name for the popover below class
// Utility color variables and styles (you can remove things you
// don't need or define more colors if you need them).
$well-color: $body-color; // Text color for the well
$well-bg-color: #e7e7e7; // Background color for the well
$panel-color: $body-color; // Text color for the panel
$panel-bg-color: $body-bg-color; // Background color for the panel
$panel-header-color: $body-color; // Text color for the panel's header
$panel-header-bg-color: #e7e7e7; // Background color for the panel's header
$popover-color: $body-bg-color; // Text color for the popover
$popover-bg-color: $body-color; // Background color for the popover
// Enable utilities (_utility.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/utility';
// Use utilities mixins to create utilities with given specs. For more
// information refer to the _utility.scss file to check the definitions.
@include make-breadcrumbs($breadcrumbs-class-name);
@include make-generic-container($well-class-name, $well-color, $well-bg-color, 1px solid #ccc, 4px, 20px);
@include make-alert($alert-style1-class, darken($btn-b-bg-color,20%), lighten($btn-b-bg-color, 10%) , 1px solid darken($btn-b-bg-color, 10%), 4px, 20px, close);
@include make-alert($alert-style2-class, darken($btn-g-bg-color,20%), lighten($btn-g-bg-color, 10%) , 1px solid darken($btn-g-bg-color, 10%), 4px, 20px, close);
@include make-alert($alert-style3-class, darken($btn-r-bg-color,20%), lighten($btn-r-bg-color, 10%) , 1px solid darken($btn-r-bg-color, 10%), 4px, 20px, close);
@include make-panel(panel, $panel-color, $panel-bg-color, 1px solid #ccc, 4px, 10px, $panel-header-name, $panel-header-color, $panel-header-bg-color, 10px);
@include make-popover($popover-above-name, top, 5px, 45px, $popover-color, $popover-bg-color, 7px 10px);
@include make-popover($popover-below-name, bottom, 4px, 45px, $popover-color, $popover-bg-color, 7px 10px);
// Use experimental utilities mixins to create utilities with given
// specs. Please exercise caution when using these mixins.
//@include make-button-states($button-states-class-name); // This mixin is unstable and buggy, we suggest you disable it.
// The folowing mixin is considered stable, you can disable it if you need to.
@include make-btn-group($button-group-class-name, $btn-class-name, 1px solid #ccc, 4px);
@include make-btn-group(btn-grp, $btn-class-name+'.'+$btn-style1-name, 1px solid darken($btn-b-bg-color, 10%), 4px);
@include make-btn-group(btn-grp, $btn-class-name+'.'+$btn-style2-name, 1px solid darken($btn-g-bg-color, 10%), 4px);
@include make-btn-group(btn-grp, $btn-class-name+'.'+$btn-style3-name, 1px solid 1px solid darken($btn-r-bg-color, 10%), 4px);
//====================================================================
//====================================================================

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -1,420 +0,0 @@
//====================================================================
// This is the file you should edit to make the flavor you want.
// Please read the instructions carefully.
//====================================================================
// !! IMPORTANT !!
// Please copy this file or rename it, if you want to keep the default
// flavor definitions file.
//====================================================================
// Update the comment below to include it in your flavor, providing the information
// you want along with your customized flavor. You can also delete it if you don't
// want it in your final CSS file.
/*
Flavor name: NiteOwl (mini-niteowl)
Author: Angelos Chalaris (chalarangelo@gmail.com)
mini.css version: v1.0 (September, 2016)
*/
//====================================================================
//
// CORE COMPONENTS (located in `mini`):
//
//====================================================================
// Variable definitions for the Base module (_base.scss)
//====================================================================
// Basic rules for body
$body-margin: 0; // Margin for body
$body-bg-color: #151f29; // Body background color
$body-color: #f5f5f5; // Body text color
// Basic typography rules
$base-fonts: "\"Helvetica Neue\", Helvetica, sans-serif"; // Font-family
$base-font-size: 1em; // Font-size
$base-line-height: 1.5; // Line-height
// Rules for headers (multipliers apply on top of the basic typography rules)
$h1-multiplier: 2; // Header 1 font-sze multiplier
$h2-multiplier: 1.5; // Header 2 font-sze multiplier
$h3-multiplier: 1.15; // Header 3 font-sze multiplier
$h4-multiplier: 1; // Header 4 font-sze multiplier
$h5-multiplier: 0.8; // Header 5 font-sze multiplier
$h6-multiplier: 0.7; // Header 6 font-sze multiplier
$header-line-height-multiplier: 0.8; // Multiplier for line height of headers
$header-margin: 0.7em 0; // Margin for headers
$header-font-weight: 500; // Font weight for headers
// Rules for small elements inside headers
$header-small-color: darken($body-color, 25%); // Header small text color
$header-small-font-weight: 200; // Header small font weight
// Rules for horizontal rules
$hr-line-height-multiplier: 0.8; // Multiplier for line height of horizontal rule
$hr-margin: 0.7em 0; // Margin for horizontal rule
$hr-border-style: 1px solid #304251; // Color and style of horizontal rule
// Common content typography rules (paragraphs, lists etc.)
$p-margin: 0 0 0.6em; // Margin for paragraph and pre elements
$small-font-size: 75%; // Font size for small, sub and sup elements
$sub-bottom: -0.25em; // Sub bottom
$sup-top: -0.5em; // Sup top
$list-margin-top: 0; // Top margin for lists
$list-margin-bottom: 0.6em; // Bottom margin for lists
$mark-bg-color: #e44b23; // Mark background color
$mark-color: $body-color; // Mark text color
// Code, preformatted and keyboard rules
$code-fonts: monospace, monospace; // Font-family for code, pre, kbd, samp elements
$code-padding: 2px 4px; // Padding for code and pre elements
$code-bg-color: darken($body-bg-color, 10%); // Code and pre background color
$code-border-radius: 4px; // Border radius for code, pre and kbd elements
$kbd-bg-color: $body-color; // Kbd background color
$kbd-color: lighten($body-bg-color, 3.5%); // Kbd text color
// Hyperlink rules
$a-color: #6493cd; // Hyperlink text color
$a-hover-color: lighten($a-color, 10%); // Hyperlink hover text color
$a-visited-color: darken($a-color, 10%); // Hyperlink visited text color
$a-visited-hover-color: $a-color; // Hyperlink visited hover text color
// Button, input and form rules
$button-fonts: $base-fonts; // Font-family for buttons and inputs
$button-font-size: 100%; // Font size for buttons and inputs
$button-line-height-multiplier: 0.8; // Multiplier for line height of buttons and inputs
$button-margin: 0; // Margin for buttons and inputs
$fieldset-border: 1px solid #304251; // Border style for fieldset
$fieldset-border-radius: 4px; // Border radius for fieldset
$fieldset-margin: 0 2px; // Margin for fieldset
$fieldset-padding: 0.35em 0.65em 0.75em; // Padding for fieldset
// Enable base (_base.scss) and use the variables defined above.
@import '../scss/mini/base';
//====================================================================
// Variable definitions for the Button module (_button.scss)
//====================================================================
// Colors and styles (you can remove things you don't need or define more
// colors if you need them).
$btn-default-color: #f5f5f5; // Default text color for buttons
$btn-alt-color: #f5f5f5; // Alternative text color for buttons
$btn-default-bg-color: #454545; // Default background color for buttons
$btn-b-bg-color: #364952; // Color for button style 1
$btn-g-bg-color: #409f45; // Color for button style 2
$btn-r-bg-color: #e72a2a; // Color for button style 3
// Button class names (you can remove things you don't need or define more
// classes if you need them).
$btn-class-name: btn; // Name for the base button class
$btn-style1-name: 'blue'; // Name for button style 1 class
$btn-style2-name: 'green'; // Name for button style 2 class
$btn-style3-name: 'red'; // Name for button style 3 class
$btn-size1-name: lg; // Name for the button size 1 class
$btn-size2-name: sm; // Name for the button size 2 class
// Enable buttons (_button.scss). (Use individual mixins below to use.)
@import '../scss/mini/button';
// Use button mixins to create buttons with given specs. For more information
// refer to the _button.scss file to check the definitions.
@include make-btn($btn-class-name, 0, 4px, 2px 0, 6px 12px, $btn-default-color, $btn-default-bg-color, lighten, 7.5%, pointer, not-allowed, .65);
@include make-btn-style($btn-class-name, $btn-style1-name, $btn-alt-color, $btn-b-bg-color);
@include make-btn-style($btn-class-name, $btn-style2-name, $btn-alt-color, $btn-g-bg-color, darken, 5%);
@include make-btn-style($btn-class-name, $btn-style3-name, $btn-alt-color, $btn-r-bg-color, darken);
@include make-btn-size($btn-class-name, $btn-size1-name, 9px 15px, 135%);
@include make-btn-size($btn-class-name, $btn-size2-name, 4px 8px, 80%);
//====================================================================
// Variable definitions for the Grid module (_grid.scss)
//====================================================================
// Class names for the grid system
$grid-container-name: grid-container; // Name for the grid container class
$grid-row-name: row; // Name for the grid's row class
$grid-column-name: col; // Name for the grid's column class
$grid-extra-small-device-name: xs; // Name for extra small devices
$grid-small-device-name: sm; // Name for small devices
$grid-medium-device-name: md; // Name for medium devices
$grid-large-device-name: lg; // Name for large devices
$grid-no-show-name: no; // Name for hidden grid elements class
// Grid breakpoints for different screens
$grid-small-breakpoint: 768px; // Breakpoint for extra small to small devices
$grid-medium-breakpoint: 1024px; // Breakpoint for small to medium devices
$grid-large-breakpoint: 1280px; // Breakpoint for medium to large devices
// Enable grid(s) (_grid.scss). (Use individual mixins below to use.)
@import '../scss/mini/grid';
// Use grid mixin to create grid with given specs. For more information
// refer to the grid.scss file to check the definitions.
@include make-grid($grid-container-name, 0, $grid-row-name, $grid-column-name, 12, 12px, $grid-extra-small-device-name, $grid-small-device-name, $grid-medium-device-name, $grid-large-device-name, $grid-no-show-name, $grid-small-breakpoint, $grid-medium-breakpoint, $grid-large-breakpoint);
//====================================================================
// Variable definitions for the Form module (_form.scss)
//====================================================================
// Class names for the forms and components
$form-class-name: frm; // Name for the form class
$form-control-group-name: ctrl-group; // Name for the form's control group class
// Colors for form components
$form-focus-color: #f1e05a; // Color for focused form element outline
$form-invalid-color: #e44b23; // Color for invalid form element outline
// Enable forms (_form.scss). (Use individual mixins below to use.)
@import '../scss/mini/form';
// Use form mixin to create form with given specs. For more information
// refer to the _form.scss file to check the definitions.
@include make-frm($form-class-name, 1px solid #304251, 4px, 0.2em, 0.3em, $form-focus-color, $form-invalid-color, not-allowed, .65, darken($body-bg-color,10%), darken($body-bg-color,25%), 1.9em, 0.5em 0 0 0.2em, $form-control-group-name, 0 0 0.3em 0, inline, aligned,15em);
//====================================================================
// Variable definitions for the Table module (_table.scss)
//====================================================================
// Class names for the tables
$table-class-name: tbl; // Name for the table class
$table-horizontal-name: hor; // Name for the horizontal style tables
$table-bordered-name: bor; // Name for the bordered style tables
// Colors for the tables
$table-head-bg-color: lighten($body-bg-color,22%); // Table header background color
$table-head-color: $body-color; // Table header text color
$table-body-bg-color: lighten($body-bg-color,5%); // Table body bakground color
$table-body-alt-bg-color: lighten($body-bg-color,10%); // Table body alternative background color
$table-body-color: darken($body-color,8%); // Table body text color
// Enable tables (_table.scss). (Use individual mixins below to use.)
@import '../scss/mini/table';
// Use table mixin to create table with given specs. For more information
// refer to the _table.scss file to check the definitions.
@include make-tbl($table-class-name, 1px solid #304251, 0, 0.5em, $table-head-bg-color, $table-head-color, $table-body-bg-color,$table-body-alt-bg-color, $table-body-color, $table-horizontal-name, $table-bordered-name);
//====================================================================
// Variable definitions for the Navigation module (_nav.scss)
//====================================================================
// Class names for the navigation elements
$navigation-class-name: nav; // Name for the navigation bar class
$navigation-vertical-name: vertical; // Name for the vertical navigation class
$navigation-fixed-name: fixed; // Name for the fixed navigation class
$navigation-logo-name: logo; // Name for the navigation logo class
$navigation-link-name: link; // Name for the navigation link class
// Colors and breakpoint for the navigation
$navigation-bg-color: #243447; // Background color for the navigation bar
$navigation-color: $body-color; // Color for the navigation text
$navigation-fixed-collapse-breakpoint: 768px; // Breakpoint for fixed naviation collapse
// Enable navigation (_nav.scss). (Use individual mixins below to use.)
@import '../scss/mini/nav';
// Use nav mixin to create nav with default specs. For more information
// refer to the _nav.scss file to check the definitions.
@include make-nav($navigation-class-name, $navigation-vertical-name, $navigation-fixed-name, $navigation-logo-name, 135%, $navigation-link-name, 8px, $navigation-color, $navigation-bg-color, darken, 7.5%, not-allowed, .65, left, 12, 2, $navigation-fixed-collapse-breakpoint, top-right, 10px, 1.75em);
//====================================================================
// Variable definitions for the Utilities and Helper Classes module (_utility.scss)
//====================================================================
// Class names for the utility and helper classes (you can remove things you
// don't need or define more if you need them).
$thumbnail-class-name: thumb; // Name for the thumbnail class
$bordered-class-name: bordered; // Name for the bordered class
$bordered-radial-name: rounded; // Name for the rounded border class
$bordered-radial2-name: circle; // Name for the alternative rounded border class
$colored-text1-name: txt-blue; // Name for the colored text style 1 class
$colored-text2-name: txt-green; // Name for the colored text style 2 class
$colored-text3-name: txt-red; // Name for the colored text style 3 class
$colored-bg-text1-name: bg-blue; // Name for the colored background text style 1 class
$colored-bg-text2-name: bg-green; // Name for the colored background text style 2 class
$colored-bg-text3-name: bg-red; // Name for the colored background text style 3 class
$drag-left-name: drg-left; // Name for the drag-left class
$drag-right-name: drg-right; // Name for the drag-right class
$center-block-name: ct-block; // Name for the center block class
$caret-class-name: caret; // Name for the caret class
$close-class-name: close; // Name for the close class
$clearfix-class-name: cf; // Name for the clearfix class
$hidden-class-name: hidden; // Name for the hidden class
// Colors for the utility and helper classes (you can remove things you
// don't need or define more colors if you need them).
$bordered-radial-radius: 4px; // Border radius of rounded borders
$bordered-radial2-radius: 50%; // Border radius of the alternative rounded borders
$colored-text1-color: $btn-b-bg-color; // Text color for the colored text style 1 class
$colored-text2-color: $btn-g-bg-color; // Text color for the colored text style 2 class
$colored-text3-color: $btn-r-bg-color; // Text color for the colored text style 3 class
$colored-bg-text1-bg-color: $btn-b-bg-color; // Background color for the colored text style 1 class
$colored-bg-text2-bg-color: $btn-g-bg-color; // Background color for the colored text style 2 class
$colored-bg-text3-bg-color: $btn-r-bg-color; // Background color for the colored text style 3 class
// Enable utilities (_utility.scss). (Use individual mixins below to use.)
@import '../scss/mini/utility';
// Use utility mixins to create utility classes with given specs. For more information
// refer to the _utility.scss file to check the definitions.
@include make-thumb($thumbnail-class-name, 0.25em, 1px solid #304251, 4px);
@include make-border-generic($bordered-class-name);
@include make-border-radial-style($bordered-radial-name, $bordered-radial-radius);
@include make-border-radial-style($bordered-radial2-name, $bordered-radial2-radius);
@include make-colored-text($colored-text1-name, $colored-text1-color);
@include make-colored-text($colored-text2-name, $colored-text2-color);
@include make-colored-text($colored-text3-name, $colored-text3-color);
@include make-colored-bg-text($colored-bg-text1-name, $colored-bg-text1-bg-color);
@include make-colored-bg-text($colored-bg-text2-name, $colored-bg-text2-bg-color);
@include make-colored-bg-text($colored-bg-text3-name, $colored-bg-text3-bg-color);
@include make-caret-down($caret-class-name, 0.35em, #aaa);
@include make-close($close-class-name, #aaa, pointer, 1.3em, 700, #777);
@include make-drags($drag-left-name, $drag-right-name);
@include make-center-block($center-block-name);
@include make-clearfix($clearfix-class-name);
@include make-hidden($hidden-class-name);
//====================================================================
//
// EXTRA COMPONENTS (located in `mini-extra`):
//
//====================================================================
// Variable definitions for the Label module (_label.scss)
//====================================================================
// Colors and styles (you can remove things you don't need or define more
// colors if you need them).
$lbl-default-color: $btn-alt-color; // Default text color for labels/badges
$lbl-default-bg-color: lighten($btn-default-bg-color,5%); // Default background color for labels/badges
$lbl-b-bg-color: $btn-b-bg-color; // Color for labels/badges style 1
$lbl-g-bg-color: $btn-g-bg-color; // Color for labels/badges style 2
$lbl-r-bg-color: $btn-r-bg-color; // Color for labels/badges style 3
// Label class names (you can remove things you don't need or define more
// classes if you need them).
$lbl-class-name: lbl; // Name for the base labels class
$lbl-style1-name: 'blue'; // Name for labels/badges style 1 class
$lbl-style2-name: 'green'; // Name for labels/badges style 2 class
$lbl-style3-name: 'red'; // Name for labels/badges style 3 class
$badge-class-name: bdg; // Name for the base badges class
// Enable labels (_label.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/label';
// Use label mixins to create labels with given specs. For more information
// refer to the _label.scss file to check the definitions.
@include make-lbl($lbl-class-name, $lbl-default-bg-color, $lbl-default-color, 4px, 6px 10px, hide);
@include make-lbl-style($lbl-class-name, $lbl-style1-name, $lbl-default-color, $lbl-b-bg-color);
@include make-lbl-style($lbl-class-name, $lbl-style2-name, $lbl-default-color, $lbl-g-bg-color);
@include make-lbl-style($lbl-class-name, $lbl-style3-name, $lbl-default-color, $lbl-r-bg-color);
@include make-lbl($badge-class-name, $lbl-default-bg-color, $lbl-default-color, 8px, 3px 8px, hide);
@include make-lbl-style($badge-class-name, $lbl-style1-name, $lbl-default-color, $lbl-b-bg-color);
@include make-lbl-style($badge-class-name, $lbl-style2-name, $lbl-default-color, $lbl-g-bg-color);
@include make-lbl-style($badge-class-name, $lbl-style3-name, $lbl-default-color, $lbl-r-bg-color);
//====================================================================
// Variable definitions for the Tab module (_tab.scss)
//====================================================================
// Tab class names.
$tabs-class-name: tabs; // Name for the tab system container class
// Colors and styles (you can remove things you don't need or define more
// colors if you need them).
$tabs-border-color: #304251; // Border color for the tabs system
$tabs-content-bg-color: lighten($body-bg-color,5%); // Background for the active tab's content
$tabs-color: $a-color; // Color for the text in the tab labels
$tabs-bg-color: $body-bg-color; // Background color for the tab labels
$tabs-active-color: $body-color; // Color for the text in the active tab's label
$tabs-active-bg-color: $tabs-content-bg-color; // Background color for the active tab's label
$tabs-active-stripe-style: 3px solid $a-color; // Style for the active tab label's stripe
// Enable tabs (_tab.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/tab';
// Use tabs mixin to create tab system with given specs. For more information
// refer to the _tab.scss file to check the definitions.
@include make-tabs($tabs-class-name, 250px, 3px, 40px, 8px 14px, $tabs-color, $tabs-bg-color, $tabs-active-color, $tabs-active-bg-color, $tabs-border-color, 4px 4px 0 0, $tabs-active-stripe-style, 'darken', 10%, $tabs-content-bg-color, 20px);
//====================================================================
// Variable definitions for the Modal module (_modal.scss)
//====================================================================
// Modal class names.
$modal-class-name: modal; // Name for the modal class
// Colors and styles (you can remove things you don't need or define more
// colors if you need them).
$modal-bg-color: $body-bg-color; // Background color for the modal
$modal-color: $body-color; // Color for the text in the modal
$modal-border: 1px solid #304251; // Border style for the modal
// Enable modal (_modal.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/modal';
// Use modal mixin to create modal with given specs. For more information
// refer to the _modal.scss file to check the definitions.
@include make-modal($modal-class-name, $modal-color, $modal-bg-color, 'enabled', 'enabled', $modal-border, 4px, 18px, 8.5%, 45%);
@include make-modal-close-support($modal-class-name, $close-class-name, 20px);
//====================================================================
// Variable definitions for the Dropdown module (_dropdown.scss)
//====================================================================
// Dropdown class names.
$dropdown-class-name: dropdown; // Name for the modal class
// Enable dropdown (_dropdown.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/dropdown';
// Use dropdown mixin to create dropdown with given specs. For more information
// refer to the _dropdown.scss file to check the definitions.
@include make-dropdown($navigation-class-name, $navigation-link-name,$dropdown-class-name, 20px, 0.8em);
//====================================================================
// Variable definitions for the Collapse module (_collapse.scss)
//====================================================================
// Collapse and accordion class names.
$collapse-class-name: clps; // Name for the collapse class
$accordion-class-name: acrd; // Name for the accordion class
// Collapse colors and styles (you can remove things you don't need or
// define more colors if you need them).
$collapse-border: 1px solid #304251; // Border style for the collapse
$collapse-color: $body-color; // Color for the text in the collapse
$collapse-bg-color: lighten($body-bg-color,10%); // Background color for the collapse
// Accordion colors and styles (you can remove things you don't need or
// define more colors if you need them).
$accordion-border: $collapse-border; // Border style for the accordion
$accordion-color: $collapse-color; // Color for the text in the accordion
$accordion-bg-color: $body-bg-color; // Background color for the accordion
$accordion-label-color: $collapse-color; // Color for the text in the accordion's label
$accordion-label-bg-color: $collapse-bg-color; // Background color for the accordion's label
// Enable collapse (_collapse.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/collapse';
// Use collapse and accordion mixins to create components wit the given specs.
// For more information refer to the _collapse.scss file to check the definitions.
@include make-collapse($collapse-class-name, $collapse-border, 4px, 10px, 5px, $collapse-color, $collapse-bg-color);
@include make-accordion($accordion-class-name, $accordion-border, 4px, 10px, 5px, $accordion-color, $accordion-bg-color, $accordion-label-color, $accordion-label-bg-color, 8px, 'darken', 7.5%);
//====================================================================
// Variable definitions for the Progress module (_progress.scss)
//====================================================================
// Progress and progress variants class names.
$progress-class-name: prg; // Name for the progress class
$progress-bar-style1-name: 'green'; // Name for the progress bar style 1 class
$progress-bar-style2-name: 'red'; // Name for the progress bar style 2 class
// Progress and p progress variants colors (you can remove things you
// don't need or define more colors if you need them).
$progress-bg-color: #d7d7d7; // Background color for the progress bar container
$progress-bar-color: $btn-alt-color; // Color for the text of the progress bar
$progress-bar-style1-color: $btn-alt-color; // Color for the text of the style 1 progress bar
$progress-bar-style2-color: $btn-alt-color; // Color for the text of the style 2 progress bar
$progress-bar-bg-color: $btn-b-bg-color; // Background color for the progress bar
$progress-bar-style1-bg-color: $btn-g-bg-color; // Background color for the style 1 progress bar
$progress-bar-style2-bg-color: $btn-r-bg-color; // Background color for the style 2 progress bar
// Enable progress (_progress.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/progress';
// Use progress mixins to create progress bars with given specs. For more
// information refer to the _progress.scss file to check the definitions.
@include make-progress($progress-class-name, 20px, 4px, $progress-bg-color, 0.8em, $progress-bar-color, $progress-bar-bg-color);
@include make-progress-bar-variant($progress-class-name, $progress-bar-style1-name, $progress-bar-style1-color, $progress-bar-style1-bg-color);
@include make-progress-bar-variant($progress-class-name, $progress-bar-style2-name, $progress-bar-style2-color, $progress-bar-style2-bg-color);
//====================================================================
// Variable definitions for the Carousel module (_carousel.scss)
//====================================================================
// Carousel class names.
$carousel-class-name: carousel; // Name for the carousel class
// Carousel colors and styles.
$carousel-border: 1px solid #304251; // Border style for the carousel
$carousel-content-bg-color: lighten($body-bg-color,80%); // Background color for the carousel
$carousel-description-color: $body-color; // Color for the text in the carousel's description
$carousel-description-bg-color: $body-bg-color; // Background color for the carousel's description
$carousel-control-color: $body-color; // Color for the carousel's control elements
// Enable carousel (_carousel.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/carousel';
// Use carousel mixin to create carousel with given specs. For more
// information refer to the _carousel.scss file to check the definitions.
@include make-carousel($carousel-class-name, 80%, 500px, $carousel-border, 4px, $carousel-content-bg-color, 10px, $carousel-description-color, $carousel-description-bg-color, 340px, 160px, 450px, 1.8em, $carousel-control-color);
//====================================================================
// Variable definitions for the Utility module (_utility.scss)
//====================================================================
// Utility class names.
$breadcrumbs-class-name: brdcrmb; // Name for the breadcrumbs class
$well-class-name: well; // Name for the well class
$alert-style1-class: alert-blue; // Name for the style 1 alert
$alert-style2-class: alert-green; // Name for the style 2 alert
$alert-style3-class: alert-red; // Name for the style 3 alert
$panel-class-name: panel; // Name for the panel class
$panel-header-name: head; // Name for the panel's header class
$button-states-class-name: stateful; // Name for the stateful button class
$button-group-class-name: btn-grp; // Name for the button group class
$popover-above-name: popover-top; // Name for the popover above class
$popover-below-name: popover-bottom; // Name for the popover below class
// Utility color variables and styles (you can remove things you
// don't need or define more colors if you need them).
$well-color: $body-color; // Text color for the well
$well-bg-color: lighten($body-bg-color,10%); // Background color for the well
$panel-color: $body-color; // Text color for the panel
$panel-bg-color: $body-bg-color; // Background color for the panel
$panel-header-color: $body-color; // Text color for the panel's header
$panel-header-bg-color: lighten($body-bg-color,10%); // Background color for the panel's header
$popover-color: $body-bg-color; // Text color for the popover
$popover-bg-color: $body-color; // Background color for the popover
// Enable utilities (_utility.scss). (Use individual mixins below to use.)
@import '../scss/mini-extra/utility';
// Use utilities mixins to create utilities with given specs. For more
// information refer to the _utility.scss file to check the definitions.
@include make-breadcrumbs($breadcrumbs-class-name);
@include make-generic-container($well-class-name, $well-color, $well-bg-color, 1px solid #304251, 4px, 20px);
@include make-alert($alert-style1-class, darken($btn-b-bg-color,20%), lighten($btn-b-bg-color, 10%) , 1px solid darken($btn-b-bg-color, 10%), 4px, 20px, close);
@include make-alert($alert-style2-class, darken($btn-g-bg-color,20%), lighten($btn-g-bg-color, 10%) , 1px solid darken($btn-g-bg-color, 10%), 4px, 20px, close);
@include make-alert($alert-style3-class, darken($btn-r-bg-color,20%), lighten($btn-r-bg-color, 10%) , 1px solid darken($btn-r-bg-color, 10%), 4px, 20px, close);
@include make-panel(panel, $panel-color, $panel-bg-color, 1px solid #304251, 4px, 10px, $panel-header-name, $panel-header-color, $panel-header-bg-color, 10px);
@include make-popover($popover-above-name, top, 5px, 45px, $popover-color, $popover-bg-color, 7px 10px);
@include make-popover($popover-below-name, bottom, 4px, 45px, $popover-color, $popover-bg-color, 7px 10px);
// Use experimental utilities mixins to create utilities with given
// specs. Please exercise caution when using these mixins.
//@include make-button-states($button-states-class-name); // This mixin is unstable and buggy, we suggest you disable it.
// The folowing mixin is considered stable, you can disable it if you need to.
@include make-btn-group($button-group-class-name, $btn-class-name, 1px solid #304251, 4px);
@include make-btn-group(btn-grp, $btn-class-name+'.'+$btn-style1-name, 1px solid darken($btn-b-bg-color, 10%), 4px);
@include make-btn-group(btn-grp, $btn-class-name+'.'+$btn-style2-name, 1px solid darken($btn-g-bg-color, 10%), 4px);
@include make-btn-group(btn-grp, $btn-class-name+'.'+$btn-style3-name, 1px solid 1px solid darken($btn-r-bg-color, 10%), 4px);
//====================================================================
//====================================================================

View File

@@ -1,7 +1,7 @@
{
"name": "mini.css",
"version": "1.0.0",
"description": "A minimal Sass-y responsive mobile-first style-agnostic CSS framework.",
"version": "2.0.2",
"description": "A minimal, responsive, style-agnostic CSS toolkit.",
"main": "flavors/mini-default.min.css",
"directories": {
"doc": "docs"
@@ -17,12 +17,11 @@
"mini.css",
"mini",
"CSS",
"responsive",
"framework",
"mobile",
"first",
"style",
"agnostic",
"toolkit",
"minimal",
"responsive",
"style-agnostic",
"Sass"
],
"author": "Angelos Chalaris (Chalarangelo)",

View File

@@ -1,420 +0,0 @@
//====================================================================
// This is the file you should edit to make the flavor you want.
// Please read the instructions carefully.
//====================================================================
// !! IMPORTANT !!
// Please copy this file or rename it, if you want to keep the default
// flavor definitions file.
//====================================================================
// Update the comment below to include it in your flavor, providing the information
// you want along with your customized flavor. You can also delete it if you don't
// want it in your final CSS file.
/*
Flavor name: Default (mini-default)
Author: Angelos Chalaris (chalarangelo@gmail.com)
mini.css version: v1.0 (September, 2016)
*/
//====================================================================
//
// CORE COMPONENTS (located in `mini`):
//
//====================================================================
// Variable definitions for the Base module (_base.scss)
//====================================================================
// Basic rules for body
$body-margin: 0; // Margin for body
$body-bg-color: #f5f5f5; // Body background color
$body-color: #222; // Body text color
// Basic typography rules
$base-fonts: "\"Helvetica Neue\", Helvetica, sans-serif"; // Font-family
$base-font-size: 1em; // Font-size
$base-line-height: 1.5; // Line-height
// Rules for headers (multipliers apply on top of the basic typography rules)
$h1-multiplier: 2; // Header 1 font-sze multiplier
$h2-multiplier: 1.5; // Header 2 font-sze multiplier
$h3-multiplier: 1.15; // Header 3 font-sze multiplier
$h4-multiplier: 1; // Header 4 font-sze multiplier
$h5-multiplier: 0.8; // Header 5 font-sze multiplier
$h6-multiplier: 0.7; // Header 6 font-sze multiplier
$header-line-height-multiplier: 0.8; // Multiplier for line height of headers
$header-margin: 0.7em 0; // Margin for headers
$header-font-weight: 500; // Font weight for headers
// Rules for small elements inside headers
$header-small-color: lighten($body-color, 20%); // Header small text color
$header-small-font-weight: 200; // Header small font weight
// Rules for horizontal rules
$hr-line-height-multiplier: 0.8; // Multiplier for line height of horizontal rule
$hr-margin: 0.7em 0; // Margin for horizontal rule
$hr-border-style: 1px solid darken($body-bg-color, 15%); // Color and style of horizontal rule
// Common content typography rules (paragraphs, lists etc.)
$p-margin: 0 0 0.6em; // Margin for paragraph and pre elements
$small-font-size: 75%; // Font size for small, sub and sup elements
$sub-bottom: -0.25em; // Sub bottom
$sup-top: -0.5em; // Sup top
$list-margin-top: 0; // Top margin for lists
$list-margin-bottom: 0.6em; // Bottom margin for lists
$mark-bg-color: #ffff33; // Mark background color
$mark-color: $body-color; // Mark text color
// Code, preformatted and keyboard rules
$code-fonts: monospace, monospace; // Font-family for code, pre, kbd, samp elements
$code-padding: 2px 4px; // Padding for code and pre elements
$code-bg-color: darken($body-bg-color, 10%); // Code and pre background color
$code-border-radius: 4px; // Border radius for code, pre and kbd elements
$kbd-bg-color: $body-color; // Kbd background color
$kbd-color: lighten($body-bg-color, 3.5%); // Kbd text color
// Hyperlink rules
$a-color: #2678b3; // Hyperlink text color
$a-hover-color: lighten($a-color, 10%); // Hyperlink hover text color
$a-visited-color: darken($a-color, 10%); // Hyperlink visited text color
$a-visited-hover-color: $a-color; // Hyperlink visited hover text color
// Button, input and form rules
$button-fonts: $base-fonts; // Font-family for buttons and inputs
$button-font-size: 100%; // Font size for buttons and inputs
$button-line-height-multiplier: 0.8; // Multiplier for line height of buttons and inputs
$button-margin: 0; // Margin for buttons and inputs
$fieldset-border: 1px solid darken($body-bg-color, 15%); // Border style for fieldset
$fieldset-border-radius: 4px; // Border radius for fieldset
$fieldset-margin: 0 2px; // Margin for fieldset
$fieldset-padding: 0.35em 0.65em 0.75em; // Padding for fieldset
// Enable base (_base.scss) and use the variables defined above.
@import 'mini/base';
//====================================================================
// Variable definitions for the Button module (_button.scss)
//====================================================================
// Colors and styles (you can remove things you don't need or define more
// colors if you need them).
$btn-default-color: #2a2a2a; // Default text color for buttons
$btn-alt-color: #eeeeee; // Alternative text color for buttons
$btn-default-bg-color: #eaeaea; // Default background color for buttons
$btn-b-bg-color: #3f84b3; // Color for button style 1
$btn-g-bg-color: #2db747; // Color for button style 2
$btn-r-bg-color: #ea4848; // Color for button style 3
// Button class names (you can remove things you don't need or define more
// classes if you need them).
$btn-class-name: btn; // Name for the base button class
$btn-style1-name: 'blue'; // Name for button style 1 class
$btn-style2-name: 'green'; // Name for button style 2 class
$btn-style3-name: 'red'; // Name for button style 3 class
$btn-size1-name: lg; // Name for the button size 1 class
$btn-size2-name: sm; // Name for the button size 2 class
// Enable buttons (_button.scss). (Use individual mixins below to use.)
@import 'mini/button';
// Use button mixins to create buttons with given specs. For more information
// refer to the _button.scss file to check the definitions.
@include make-btn($btn-class-name, 0, 4px, 2px 0, 6px 12px, $btn-default-color, $btn-default-bg-color, lighten, 7.5%, pointer, not-allowed, .65);
@include make-btn-style($btn-class-name, $btn-style1-name, $btn-alt-color, $btn-b-bg-color);
@include make-btn-style($btn-class-name, $btn-style2-name, $btn-alt-color, $btn-g-bg-color);
@include make-btn-style($btn-class-name, $btn-style3-name, $btn-alt-color, $btn-r-bg-color);
@include make-btn-size($btn-class-name, $btn-size1-name, 9px 15px, 135%);
@include make-btn-size($btn-class-name, $btn-size2-name, 4px 8px, 80%);
//====================================================================
// Variable definitions for the Grid module (_grid.scss)
//====================================================================
// Class names for the grid system
$grid-container-name: grid-container; // Name for the grid container class
$grid-row-name: row; // Name for the grid's row class
$grid-column-name: col; // Name for the grid's column class
$grid-extra-small-device-name: xs; // Name for extra small devices
$grid-small-device-name: sm; // Name for small devices
$grid-medium-device-name: md; // Name for medium devices
$grid-large-device-name: lg; // Name for large devices
$grid-no-show-name: no; // Name for hidden grid elements class
// Grid breakpoints for different screens
$grid-small-breakpoint: 768px; // Breakpoint for extra small to small devices
$grid-medium-breakpoint: 1024px; // Breakpoint for small to medium devices
$grid-large-breakpong: 1280px; // Breakpoint for medium to large devices
// Enable grid(s) (_grid.scss). (Use individual mixins below to use.)
@import 'mini/grid';
// Use grid mixin to create grid with given specs. For more information
// refer to the grid.scss file to check the definitions.
@include make-grid($grid-container-name, 0, $grid-row-name, $grid-column-name, 12, 12px, $grid-extra-small-device-name, $grid-small-device-name, $grid-medium-device-name, $grid-large-device-name, $grid-no-show-name, $grid-small-breakpoint, $grid-medium-breakpoint, $grid-large-breakpoint);
//====================================================================
// Variable definitions for the Form module (_form.scss)
//====================================================================
// Class names for the forms and components
$form-class-name: frm; // Name for the form class
$form-control-group-name: ctrl-group; // Name for the form's control group class
// Colors for form components
$form-focus-color: #2678b3; // Color for focused form element outline
$form-invalid-color: #e9322d; // Color for invalid form element outline
// Enable forms (_form.scss). (Use individual mixins below to use.)
@import 'mini/form';
// Use form mixin to create form with given specs. For more information
// refer to the _form.scss file to check the definitions.
@include make-frm($form-class-name, 1px solid #ccc, 4px, 0.2em, 0.3em, $form-focus-color, $form-invalid-color, not-allowed, .65, darken($body-bg-color,10%), darken($body-bg-color,25%), 1.9em, 0.5em 0 0 0.2em, $form-control-group-name, 0 0 0.3em 0, inline, aligned,15em);
//====================================================================
// Variable definitions for the Table module (_table.scss)
//====================================================================
// Class names for the tables
$table-class-name: tbl; // Name for the table class
$table-horizontal-name: hor; // Name for the horizontal style tables
$table-bordered-name: bor; // Name for the bordered style tables
// Colors for the tables
$table-head-bg-color: #d9d9d9; // Table header background color
$table-head-color: #111; // Table header text color
$table-body-bg-color: #f5f5f5; // Table body bakground color
$table-body-alt-bg-color: #ececec; // Table body alternative background color
$table-body-color: #111; // Table body text color
// Enable tables (_table.scss). (Use individual mixins below to use.)
@import 'mini/table';
// Use table mixin to create table with given specs. For more information
// refer to the _table.scss file to check the definitions.
@include make-tbl($table-class-name, 1px solid #bdbdbd, 0, 0.5em, $table-head-bg-color, $table-head-color, $table-body-bg-color,$table-body-alt-bg-color, $table-body-color, $table-horizontal-name, $table-bordered-name);
//====================================================================
// Variable definitions for the Navigation module (_nav.scss)
//====================================================================
// Class names for the navigation elements
$navigation-class-name: nav; // Name for the navigation bar class
$navigation-vertical-name: vertical; // Name for the vertical navigation class
$navigation-fixed-name: fixed; // Name for the fixed navigation class
$navigation-logo-name: logo; // Name for the navigation logo class
$navigation-link-name: link; // Name for the navigation link class
// Colors and breakpoint for the navigation
$navigation-bg-color: #272727; // Background color for the navigation bar
$navigation-color: #ddd; // Color for the navigation text
$navigation-fixed-collapse-breakpoint: 768px; // Breakpoint for fixed naviation collapse
// Enable navigation (_nav.scss). (Use individual mixins below to use.)
@import 'mini/nav';
// Use nav mixin to create nav with default specs. For more information
// refer to the _nav.scss file to check the definitions.
@include make-nav($navigation-class-name, $navigation-vertical-name, $navigation-fixed-name, $navigation-logo-name, 135%, $navigation-link-name, 8px, $navigation-color, $navigation-bg-color, darken, 7.5%, not-allowed, .65, left, 12, 2, $navigation-fixed-collapse-breakpoint, top-right, 10px, 1.75em);
//====================================================================
// Variable definitions for the Utilities and Helper Classes module (_utility.scss)
//====================================================================
// Class names for the utility and helper classes (you can remove things you
// don't need or define more if you need them).
$thumbnail-class-name: thumb; // Name for the thumbnail class
$bordered-class-name: bordered; // Name for the bordered class
$bordered-radial-name: rounded; // Name for the rounded border class
$bordered-radial2-name: circle; // Name for the alternative rounded border class
$colored-text1-name: txt-blue; // Name for the colored text style 1 class
$colored-text2-name: txt-green; // Name for the colored text style 2 class
$colored-text3-name: txt-red; // Name for the colored text style 3 class
$colored-bg-text1-name: bg-blue; // Name for the colored background text style 1 class
$colored-bg-text2-name: bg-green; // Name for the colored background text style 2 class
$colored-bg-text3-name: bg-red; // Name for the colored background text style 3 class
$drag-left-name: drg-left; // Name for the drag-left class
$drag-right-name: drg-right; // Name for the drag-right class
$center-block-name: ct-block; // Name for the center block class
$caret-class-name: caret; // Name for the caret class
$close-class-name: close; // Name for the close class
$clearfix-class-name: cf; // Name for the clearfix class
$hidden-class-name: hidden; // Name for the hidden class
// Colors for the utility and helper classes (you can remove things you
// don't need or define more colors if you need them).
$bordered-radial-radius: 4px; // Border radius of rounded borders
$bordered-radial2-radius: 50%; // Border radius of the alternative rounded borders
$colored-text1-color: $btn-b-bg-color; // Text color for the colored text style 1 class
$colored-text2-color: $btn-g-bg-color; // Text color for the colored text style 2 class
$colored-text3-color: $btn-r-bg-color; // Text color for the colored text style 3 class
$colored-bg-text1-bg-color: $btn-b-bg-color; // Background color for the colored text style 1 class
$colored-bg-text2-bg-color: $btn-g-bg-color; // Background color for the colored text style 2 class
$colored-bg-text3-bg-color: $btn-r-bg-color; // Background color for the colored text style 3 class
// Enable utilities (_utility.scss). (Use individual mixins below to use.)
@import 'mini/utility';
// Use utility mixins to create utility classes with given specs. For more information
// refer to the _utility.scss file to check the definitions.
@include make-thumb($thumbnail-class-name, 0.25em, 1px solid #ccc, 4px);
@include make-border-generic($bordered-class-name);
@include make-border-radial-style($bordered-radial-name, $bordered-radial-radius);
@include make-border-radial-style($bordered-radial2-name, $bordered-radial2-radius);
@include make-colored-text($colored-text1-name, $colored-text1-color);
@include make-colored-text($colored-text2-name, $colored-text2-color);
@include make-colored-text($colored-text3-name, $colored-text3-color);
@include make-colored-bg-text($colored-bg-text1-name, $colored-bg-text1-bg-color);
@include make-colored-bg-text($colored-bg-text2-name, $colored-bg-text2-bg-color);
@include make-colored-bg-text($colored-bg-text3-name, $colored-bg-text3-bg-color);
@include make-caret-down($caret-class-name, 0.35em, #222);
@include make-close($close-class-name, #aaa, pointer, 1.3em, 700, #777);
@include make-drags($drag-left-name, $drag-right-name);
@include make-center-block($center-block-name);
@include make-clearfix($clearfix-class-name);
@include make-hidden($hidden-class-name);
//====================================================================
//
// EXTRA COMPONENTS (located in `mini-extra`):
//
//====================================================================
// Variable definitions for the Label module (_label.scss)
//====================================================================
// Colors and styles (you can remove things you don't need or define more
// colors if you need them).
$lbl-default-color: $btn-alt-color; // Default text color for labels/badges
$lbl-default-bg-color: #777; // Default background color for labels/badges
$lbl-b-bg-color: $btn-b-bg-color; // Color for labels/badges style 1
$lbl-g-bg-color: $btn-g-bg-color; // Color for labels/badges style 2
$lbl-r-bg-color: $btn-r-bg-color; // Color for labels/badges style 3
// Label class names (you can remove things you don't need or define more
// classes if you need them).
$lbl-class-name: lbl; // Name for the base labels class
$lbl-style1-name: 'blue'; // Name for labels/badges style 1 class
$lbl-style2-name: 'green'; // Name for labels/badges style 2 class
$lbl-style3-name: 'red'; // Name for labels/badges style 3 class
$badge-class-name: bdg; // Name for the base badges class
// Enable labels (_label.scss). (Use individual mixins below to use.)
@import 'mini-extra/label';
// Use label mixins to create labels with given specs. For more information
// refer to the _label.scss file to check the definitions.
@include make-lbl($lbl-class-name, $lbl-default-bg-color, $lbl-default-color, 4px, 6px 10px, hide);
@include make-lbl-style($lbl-class-name, $lbl-style1-name, $lbl-default-color, $lbl-b-bg-color);
@include make-lbl-style($lbl-class-name, $lbl-style2-name, $lbl-default-color, $lbl-g-bg-color);
@include make-lbl-style($lbl-class-name, $lbl-style3-name, $lbl-default-color, $lbl-r-bg-color);
@include make-lbl($badge-class-name, $lbl-default-bg-color, $lbl-default-color, 8px, 3px 8px, hide);
@include make-lbl-style($badge-class-name, $lbl-style1-name, $lbl-default-color, $lbl-b-bg-color);
@include make-lbl-style($badge-class-name, $lbl-style2-name, $lbl-default-color, $lbl-g-bg-color);
@include make-lbl-style($badge-class-name, $lbl-style3-name, $lbl-default-color, $lbl-r-bg-color);
//====================================================================
// Variable definitions for the Tab module (_tab.scss)
//====================================================================
// Tab class names.
$tabs-class-name: tabs; // Name for the tab system container class
// Colors and styles (you can remove things you don't need or define more
// colors if you need them).
$tabs-border-color: #ccc; // Border color for the tabs system
$tabs-content-bg-color: #fff; // Background for the active tab's content
$tabs-color: $a-color; // Color for the text in the tab labels
$tabs-bg-color: $body-bg-color; // Background color for the tab labels
$tabs-active-color: $body-color; // Color for the text in the active tab's label
$tabs-active-bg-color: $tabs-content-bg-color; // Background color for the active tab's label
$tabs-active-stripe-style: 3px solid $a-color; // Style for the active tab label's stripe
// Enable tabs (_tab.scss). (Use individual mixins below to use.)
@import 'mini-extra/tab';
// Use tabs mixin to create tab system with given specs. For more information
// refer to the _tab.scss file to check the definitions.
@include make-tabs($tabs-class-name, 250px, 3px, 40px, 8px 14px, $tabs-color, $tabs-bg-color, $tabs-active-color, $tabs-active-bg-color, $tabs-border-color, 4px 4px 0 0, $tabs-active-stripe-style, 'darken', 10%, $tabs-content-bg-color, 20px);
//====================================================================
// Variable definitions for the Modal module (_modal.scss)
//====================================================================
// Modal class names.
$modal-class-name: modal; // Name for the modal class
// Colors and styles (you can remove things you don't need or define more
// colors if you need them).
$modal-bg-color: $body-bg-color; // Background color for the modal
$modal-color: $body-color; // Color for the text in the modal
$modal-border: 1px solid #ccc; // Border style for the modal
// Enable modal (_modal.scss). (Use individual mixins below to use.)
@import 'mini-extra/modal';
// Use modal mixin to create modal with given specs. For more information
// refer to the _modal.scss file to check the definitions.
@include make-modal($modal-class-name, $modal-color, $modal-bg-color, 'enabled', 'enabled', $modal-border, 4px, 18px, 8.5%, 45%);
@include make-modal-close-support($modal-class-name, $close-class-name, 20px);
//====================================================================
// Variable definitions for the Dropdown module (_dropdown.scss)
//====================================================================
// Dropdown class names.
$dropdown-class-name: dropdown; // Name for the modal class
// Enable dropdown (_dropdown.scss). (Use individual mixins below to use.)
@import 'mini-extra/dropdown';
// Use dropdown mixin to create dropdown with given specs. For more information
// refer to the _dropdown.scss file to check the definitions.
@include make-dropdown($navigation-class-name, $navigation-link-name,$dropdown-class-name, 20px, 0.8em);
//====================================================================
// Variable definitions for the Collapse module (_collapse.scss)
//====================================================================
// Collapse and accordion class names.
$collapse-class-name: clps; // Name for the collapse class
$accordion-class-name: acrd; // Name for the accordion class
// Collapse colors and styles (you can remove things you don't need or
// define more colors if you need them).
$collapse-border: 1px solid #ccc; // Border style for the collapse
$collapse-color: $body-color; // Color for the text in the collapse
$collapse-bg-color: #eeeeee; // Background color for the collapse
// Accordion colors and styles (you can remove things you don't need or
// define more colors if you need them).
$accordion-border: $collapse-border; // Border style for the accordion
$accordion-color: $collapse-color; // Color for the text in the accordion
$accordion-bg-color: $body-bg-color; // Background color for the accordion
$accordion-label-color: $collapse-color; // Color for the text in the accordion's label
$accordion-label-bg-color: $collapse-bg-color; // Background color for the accordion's label
// Enable collapse (_collapse.scss). (Use individual mixins below to use.)
@import 'mini-extra/collapse';
// Use collapse and accordion mixins to create components wit the given specs.
// For more information refer to the _collapse.scss file to check the definitions.
@include make-collapse($collapse-class-name, $collapse-border, 4px, 10px, 5px, $collapse-color, $collapse-bg-color);
@include make-accordion($accordion-class-name, $accordion-border, 4px, 10px, 5px, $accordion-color, $accordion-bg-color, $accordion-label-color, $accordion-label-bg-color, 8px, 'darken', 7.5%);
//====================================================================
// Variable definitions for the Progress module (_progress.scss)
//====================================================================
// Progress and progress variants class names.
$progress-class-name: prg; // Name for the progress class
$progress-bar-style1-name: 'green'; // Name for the progress bar style 1 class
$progress-bar-style2-name: 'red'; // Name for the progress bar style 2 class
// Progress and p progress variants colors (you can remove things you
// don't need or define more colors if you need them).
$progress-bg-color: #d7d7d7; // Background color for the progress bar container
$progress-bar-color: $btn-alt-color; // Color for the text of the progress bar
$progress-bar-style1-color: $btn-alt-color; // Color for the text of the style 1 progress bar
$progress-bar-style2-color: $btn-alt-color; // Color for the text of the style 2 progress bar
$progress-bar-bg-color: $btn-b-bg-color; // Background color for the progress bar
$progress-bar-style1-bg-color: $btn-g-bg-color; // Background color for the style 1 progress bar
$progress-bar-style2-bg-color: $btn-r-bg-color; // Background color for the style 2 progress bar
// Enable progress (_progress.scss). (Use individual mixins below to use.)
@import 'mini-extra/progress';
// Use progress mixins to create progress bars with given specs. For more
// information refer to the _progress.scss file to check the definitions.
@include make-progress($progress-class-name, 20px, 4px, $progress-bg-color, 0.8em, $progress-bar-color, $progress-bar-bg-color);
@include make-progress-bar-variant($progress-class-name, $progress-bar-style1-name, $progress-bar-style1-color, $progress-bar-style1-bg-color);
@include make-progress-bar-variant($progress-class-name, $progress-bar-style2-name, $progress-bar-style2-color, $progress-bar-style2-bg-color);
//====================================================================
// Variable definitions for the Carousel module (_carousel.scss)
//====================================================================
// Carousel class names.
$carousel-class-name: carousel; // Name for the carousel class
// Carousel colors and styles.
$carousel-border: 1px solid #ccc; // Border style for the carousel
$carousel-content-bg-color: #e7e7e7; // Background color for the carousel
$carousel-description-color: $body-bg-color; // Color for the text in the carousel's description
$carousel-description-bg-color: $body-color; // Background color for the carousel's description
$carousel-control-color: #fafafa; // Color for the carousel's control elements
// Enable carousel (_carousel.scss). (Use individual mixins below to use.)
@import 'mini-extra/carousel';
// Use carousel mixin to create carousel with given specs. For more
// information refer to the _carousel.scss file to check the definitions.
@include make-carousel($carousel-class-name, 80%, 500px, $carousel-border, 4px, $carousel-content-bg-color, 10px, $carousel-description-color, $carousel-description-bg-color, 340px, 160px, 450px, 1.8em, $carousel-control-color);
//====================================================================
// Variable definitions for the Utility module (_utility.scss)
//====================================================================
// Utility class names.
$breadcrumbs-class-name: brdcrmb; // Name for the breadcrumbs class
$well-class-name: well; // Name for the well class
$alert-style1-class: alert-blue; // Name for the style 1 alert
$alert-style2-class: alert-green; // Name for the style 2 alert
$alert-style3-class: alert-red; // Name for the style 3 alert
$panel-class-name: panel; // Name for the panel class
$panel-header-name: head; // Name for the panel's header class
$button-states-class-name: stateful; // Name for the stateful button class
$button-group-class-name: btn-grp; // Name for the button group class
$popover-above-name: popover-top; // Name for the popover above class
$popover-below-name: popover-bottom; // Name for the popover below class
// Utility color variables and styles (you can remove things you
// don't need or define more colors if you need them).
$well-color: $body-color; // Text color for the well
$well-bg-color: #e7e7e7; // Background color for the well
$panel-color: $body-color; // Text color for the panel
$panel-bg-color: $body-bg-color; // Background color for the panel
$panel-header-color: $body-color; // Text color for the panel's header
$panel-header-bg-color: #e7e7e7; // Background color for the panel's header
$popover-color: $body-bg-color; // Text color for the popover
$popover-bg-color: $body-color; // Background color for the popover
// Enable utilities (_utility.scss). (Use individual mixins below to use.)
@import 'mini-extra/utility';
// Use utilities mixins to create utilities with given specs. For more
// information refer to the _utility.scss file to check the definitions.
@include make-breadcrumbs($breadcrumbs-class-name);
@include make-generic-container($well-class-name, $well-color, $well-bg-color, 1px solid #ccc, 4px, 20px);
@include make-alert($alert-style1-class, darken($btn-b-bg-color,20%), lighten($btn-b-bg-color, 10%) , 1px solid darken($btn-b-bg-color, 10%), 4px, 20px, close);
@include make-alert($alert-style2-class, darken($btn-g-bg-color,20%), lighten($btn-g-bg-color, 10%) , 1px solid darken($btn-g-bg-color, 10%), 4px, 20px, close);
@include make-alert($alert-style3-class, darken($btn-r-bg-color,20%), lighten($btn-r-bg-color, 10%) , 1px solid darken($btn-r-bg-color, 10%), 4px, 20px, close);
@include make-panel(panel, $panel-color, $panel-bg-color, 1px solid #ccc, 4px, 10px, $panel-header-name, $panel-header-color, $panel-header-bg-color, 10px);
@include make-popover($popover-above-name, top, 5px, 45px, $popover-color, $popover-bg-color, 7px 10px);
@include make-popover($popover-below-name, bottom, 4px, 45px, $popover-color, $popover-bg-color, 7px 10px);
// Use experimental utilities mixins to create utilities with given
// specs. Please exercise caution when using these mixins.
//@include make-button-states($button-states-class-name); // This mixin is unstable and buggy, we suggest you disable it.
// The folowing mixin is considered stable, you can disable it if you need to.
@include make-btn-group($button-group-class-name, $btn-class-name, 1px solid #ccc, 4px);
@include make-btn-group(btn-grp, $btn-class-name+'.'+$btn-style1-name, 1px solid darken($btn-b-bg-color, 10%), 4px);
@include make-btn-group(btn-grp, $btn-class-name+'.'+$btn-style2-name, 1px solid darken($btn-g-bg-color, 10%), 4px);
@include make-btn-group(btn-grp, $btn-class-name+'.'+$btn-style3-name, 1px solid 1px solid darken($btn-r-bg-color, 10%), 4px);
//====================================================================
//====================================================================

View File

@@ -1,92 +0,0 @@
/*
Mixin for the carousel component.
Parameters:
- $carousel-name : The class name for the carousel.
- $carousel-width : The width of the carousel. [1]
- $carousel-height : The height of the carousel.
- $carousel-border : The style of the carousel's border.
- $carousel-border-radius : The border-radius of the carousel.
- $carousel-container-bg-color : The background color of the carousel.
- $carousel-content-padding : The padding of the carousel's contents. [2]
- $carousel-description-color : The text color of the carousel's description.
- $carousel-description-bg-color : The background color of the carousel's description.
- $carousel-description-top : The distance of the carousel's description from the top of the container. [3]
- $carousel-description-height : The height of the carousel's description area. [3]
- $carousel-control-top : The distance of the carousel's controls from the top of the container. [3]
- $carousel-control-font-size : The font-size of the carousel's controls.
- $carousel-control-color : The text color of the carousel's controls.
Notes:
- [1] : The height of the carousel is suggested to be defined as a percentage so that
it makes it responsive for smaller screens.
- [2] : The value of $carousel-content-padding only applies to images inside the carousel.
- [3] : The distances from the top are used for positioning the elements. The height of the
desccription should normally be the height of the container minus the top distance of
the description. Control distance should be about 90% of the container's height.
*/
@mixin make-carousel( $carousel-name, $carousel-width, $carousel-height, $carousel-border,
$carousel-border-radius, $carousel-container-bg-color, $carousel-content-padding,
$carousel-description-color, $carousel-description-bg-color,
$carousel-description-top, $carousel-description-height, $carousel-control-top,
$carousel-control-font-size, $carousel-control-color ){
.#{$carousel-name}{
position: relative;
width: $carousel-width;
height: $carousel-height;
overflow: hidden;
text-align: center;
margin: auto;
border: $carousel-border;
border-radius: $carousel-border-radius;
& input[type="radio"]{
display: none;
& + div{
display: none;
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
padding: $carousel-content-padding;
background-color: $carousel-container-bg-color;
& > img{
max-width: 100%;
max-height: 100%;
margin: auto;
}
& > div{
position: absolute;
width: 100%;
height: $carousel-description-height;
overflow: auto;
left: 0;
top: $carousel-description-top;
background-color: $carousel-description-bg-color;
color: $carousel-description-color;
opacity: 0.1;
&:hover, &:active, &:focus{
opacity: 0.8;
}
}
& + label{
position: relative;
z-index: 998;
cursor: pointer;
top: $carousel-control-top;
color: $carousel-control-color;
font-size: $carousel-control-font-size;
&:before{
content:'\25cb';
}
}
}
&:checked + div{
display: block;
& + label{
&:before{
content:'\25cf';
}
}
}
}
}
}

View File

@@ -1,108 +0,0 @@
/*
Mixin for collapse component.
Parameters:
- $collapse-name : The class name of the collapse component.
- $collapse-border : The border style of the collapse contents.
- $collapse-border-radius : The border radius of the collapse contents.
- $collapse-padding : The padding of the collapse contents.
- $collapse-margin-top : The margin above the collapse contents. [1]
- $collapse-color : The collapse contents' text color.
- $collapse-bg-color : The collapse contents' background color.
Notes:
- [1] : The value of $collapse-margin-top is used for spacing between the button label that is usually
above the collapsed contents and the contents themselves.
*/
@mixin make-collapse( $collapse-name, $collapse-border, $collapse-border-radius, $collapse-padding,
$collapse-margin-top, $collapse-color, $collapse-bg-color ){
input[type="checkbox"]{
&.#{$collapse-name}{
display: none;
& + div{
display: none;
color: $collapse-color;
background-color: $collapse-bg-color;
padding: $collapse-padding;
margin-top: $collapse-margin-top;
border: $collapse-border;
border-radius: $collapse-border-radius;
}
}
&:checked.#{$collapse-name}{
& + div{
display: block;
}
}
}
}
/*
Mixin for accordion component.
Parameters:
- $accordion-name : The class name of the accordion component.
- $accordion-border : The border style of the accordion component.
- $accordion-border-radius : The border radius of the accordion component. [1]
- $accordion-padding : The padding of the accordion's contents.
- $accordion-margin : The margin between accordion's parts. [2]
- $accordion-color : The accordion contents' text color.
- $accordion-bg-color : The accordion contents' background color.
- $accordion-label-color : The accordion labels' text color.
- $accordion-label-bg-color : The accordion labels' background color.
- $accordion-label-padding : The padding of the accordion's labels.
- $accordion-hover-style : Hover/active/focus style of the accordion's labels. [3]
- $accordion-hover-style-percentage : Hover/active/focus style of the accordion's labels percentage modifier.
Notes:
- [1] : The value of $accordion-border-radius will be applied to labels along with their contents.
Closed labels will have the border-radius applied to all of their corners, while open labels will
change accordingly to combine their border with the shown contents.
- [2] : The value of $accordion-margin will be applied only to margin-bottom of all parts in order
to space them out evenly. This does not apply to label and related content margins.
- [3] : The values that $accordion-hover-style can take are `lighten` and `darken`. The inside condition only
checks if the value is `lighten` and acts accordingly. Invalid values are treated as `darken`.
*/
@mixin make-accordion( $accordion-name, $accordion-border, $accordion-border-radius, $accordion-padding,
$accordion-margin, $accordion-color, $accordion-bg-color, $accordion-label-color,
$accordion-label-bg-color, $accordion-label-padding, $accordion-hover-style,
$accordion-hover-style-percentage ){
input[type="radio"]{
&.#{$accordion-name}{
display: none;
& + label{
width: 100%;
display: block;
color: $accordion-label-color;
background-color: $accordion-label-bg-color;
padding: $accordion-label-padding;
margin-bottom: $accordion-margin;
border: $accordion-border;
border-radius: $accordion-border-radius;
cursor: pointer;
&:hover, &:active, &:focus{
@if $accordion-hover-style == 'lighten'{
background: lighten($accordion-label-bg-color, $accordion-hover-style-percentage);
}
@else{
background: darken($accordion-label-bg-color, $accordion-hover-style-percentage);
}
}
& + div{
display: none;
color: $accordion-color;
background-color: $accordion-bg-color;
padding: $accordion-padding;
margin-top: -1px;
margin-bottom: $accordion-margin;
border: $accordion-border;
border-radius: 0 0 $accordion-border-radius $accordion-border-radius;
}
}
}
&:checked.#{$accordion-name}{
& + label{
border-radius: $accordion-border-radius $accordion-border-radius 0 0;
margin-bottom: 0;
& + div{
display: block;
}
}
}
}
}

View File

@@ -1,37 +0,0 @@
/*
Mixin for navigation bar's dropdown element.
Parameters:
- $nav-name : The class name for the navigation bar. [1]
- $nav-link-name : The class name for the navigation links of the navigation bar. [1]
- $dropdown-name : The class name for the dropdown element. [2]
- $dropdown-left-margin : The left margin of the dropdown element's contents. [3]
- $dropdown-font-size : The font size of the dropdown element's contents.
Notes:
- [1] : The values of $nav-name and $nav-link-name must match those specified in the navigation bar's
definition, otherwise the dropdown element will not work properly.
- [2] : The value of $dropdown-name is used in two distinct elements of the component, namely the
checkbox and the dropdown toggle.
- [3] : The value of $dropdown-left-margin will affect all open dropdown menus, as well as dropdown
menus on mobile screens. It is suggested that you set this value to something different than
0 to visually represent the menu hierarchy in devices with smaller screens.
*/
@mixin make-dropdown($nav-name, $nav-link-name, $dropdown-name, $dropdown-left-margin, $dropdown-font-size){
.#{$nav-name}{
& .#{$nav-link-name}.#{$dropdown-name}{
cursor: pointer;
}
& input[type="checkbox"], & input[type="radio"]{
display: none;
&.#{$dropdown-name} + div{
display: none;
}
&:checked.#{$dropdown-name}{
+ div{
display: block;
font-size: $dropdown-font-size;
margin-left: $dropdown-left-margin;
}
}
}
}
}

View File

@@ -1,44 +0,0 @@
/*
Mixin for the labels/badges.
Parameters:
- $lbl-name : The class name of the labels/badges.
- $lbl-bg-color : The background color of the labels/badges.
- $lbl-color : The text color of the labels/badges.
- $lbl-border-radius : The border-radius of the labels/badges.
- $lbl-padding : The padding of the labels/badges.
- $lbl-hide-on-empty : Style of the label/badges when empty. [1]
Notes:
- [1] : The values that $lbl-hide-on-empty can take are `hide` or `show`. The inside condition only
checks if the value is `hide` and acts accordingly. Invalid values are treated as `show`.
*/
@mixin make-lbl($lbl-name, $lbl-bg-color, $lbl-color, $lbl-border-radius, $lbl-padding, $lbl-hide-on-empty){
.#{$lbl-name}{
display: inline;
padding: $lbl-padding;
color: $lbl-color;
background-color: $lbl-bg-color;
border-radius: $lbl-border-radius;
@if $lbl-hide-on-empty == 'hide'{
&:empty{
display: none;
}
}
}
}
/*
Mixin for labels/badges styles.
Parameters:
- $lbl-name : The class name of the labels/badges. [1]
- $lbl-style-name : The class name of the labels/badges style.
- $lbl-style-color : The text color of the labels/badges style.
- $lbl-style-bg-color : The background color of the labels/badges style.
Notes:
- [1] : The value of $lbl-name must be the same as the value specified when using `make-lbl`, otherwise
the specified style will not work correctly.
*/
@mixin make-lbl-style($lbl-name, $lbl-style-name, $lbl-style-color, $lbl-style-bg-color){
.#{$lbl-name}.#{$lbl-style-name}{
color: $lbl-style-color;
background: $lbl-style-bg-color;
}
}

View File

@@ -1,83 +0,0 @@
/*
Mixin for modal dialogs.
Parameters:
- $modal-name : The class name for the modal dialog.
- $modal-color : The text color of the modal dialog.
- $modal-bg-color : The background color of the modal dialog.
- $modal-transition-enabled : Determines if a transition style will be applied when the modal changes states. [1]
- $modal-shadow-enabled : Determines if a shadow should be cast from the modal dialog. [1]
- $modal-border : The border style of the modal dialog.
- $modal-border-radius : The border radius of the modal dialog's border.
- $modal-padding : The padding of the modal dialog's contents.
- $modal-top-margin : The distance of the modal dialog from the top of the parent container. [2]
- $modal-width : The width of the modal dialog. [2]
Notes:
- [1] : The values of $modal-transition-enabled and $modal-shadow-enabled should be `enabled` or `disabled`.
If an invalid value is supplied, the mixin will act as if it was `disabled`.
- [2] : The values of $modal-top-margin and $modal-width should be in percentage (%) values to properly scale
on all devices. However, there are no restrictions.
*/
@mixin make-modal( $modal-name, $modal-color, $modal-bg-color, $modal-transition-enabled,
$modal-shadow-enabled, $modal-border, $modal-border-radius,
$modal-padding, $modal-top-margin, $modal-width ){
.#{$modal-name}{
display: none;
& + div{
z-index: 997;
position: fixed;
width: 100%;
height: 0;
opacity: 0;
@if $modal-transition-enabled == 'enabled'{
transition: opacity .3s ease-out;
}
& > div{
z-index: 998;
position: relative;
width: $modal-width;
color: $modal-color;
background-color: $modal-bg-color;
margin: $modal-top-margin auto 0;
padding: $modal-padding;
border: $modal-border;
border-radius: $modal-border-radius;
@if $modal-shadow-enabled == 'enabled'{
box-shadow: 0 5px 15px rgba(0,0,0,.5);
}
}
}
&:checked + div{
height: 100%;
opacity: 1;
& > label{
background-color: rgba(0,0,0,.35);
position: fixed;
width: 100%;
height: 100%;
top: 0;
}
}
}
}
/*
Mixin for close button support inside of modal dialogs.
Parameters:
- $modal-name : The class name for the modal dialog. [1]
- $close-name : The class name for the close sign utility class. [2]
- $modal-padding : The padding of the close button. [3]
Notes:
- [1] : The value of $modal-name should match the value specified in the modal dialog's
mixin, in order for this to work correctly.
- [2] : The value of $close-name should match the value specified in the close sign utility's
mixin, in order for this to work correctly.
- [3] : The close button will be placed at the top right of the modal dialog. Its padding
should be similar to the value specified for padding in the modal dialog itself, however
it could vary based on personal preference.
*/
@mixin make-modal-close-support($modal-name, $close-name, $modal-padding){
.#{$modal-name} + div > div .#{$close-name}{
position: absolute;
top: $modal-padding;
right: $modal-padding;
}
}

View File

@@ -1,53 +0,0 @@
/*
Mixin for the progress element.
Parameters:
- $progress-name : The class name of the progress wrapper.
- $progress-height : The height of the progress wrapper.
- $progress-border-radius : The border radius of the progress wrapper.
- $progress-bg-color : The background color of the progress wrapper. [1]
- $progress-font-size : The font size of the progress bar's text (if any).
- $progress-bar-color : The progress bar's text color.
- $progress-bar-bg-color : The progress bar's background color.
Notes:
- [1] : The background color of the progress wrapper should be a different color than the
page's background to make sure that it is visible.
- [2] : This only creates a basic progress style. For more progress bar styles use `make-progress-bar-variant`.
*/
@mixin make-progress( $progress-name, $progress-height, $progress-border-radius, $progress-bg-color,
$progress-font-size, $progress-bar-color, $progress-bar-bg-color ){
.#{$progress-name}{
position: relative;
overflow: hidden;
height: $progress-height;
background-color: $progress-bg-color;
border-radius: $progress-border-radius;
& > span{
float: left;
width: 0;
height: 100%;
background-color: $progress-bar-bg-color;
text-align: center;
font-size: $progress-font-size;
color: $progress-bar-color;
}
}
}
/*
Mixin for progress bar styles.
Parameters:
- $progress-name : The class name of the progress wrapper. [1]
- $progress-bar-variant-name : The class name of the progress bar variant.
- $progress-bar-variant-color : The progress bar variant's text color.
- $progress-bar-variant-bg-coor : The progress bar variant's background color.
Notes:
- [1] : The name of $progress-name should match the one specified in `make-progress` for the
progress bar variant to work correctly.
- [2] : This mixin should be used in combination with `make-progress` and is suggested that you
use it after `make-progress`.
*/
@mixin make-progress-bar-variant($progress-name, $progress-bar-variant-name, $progress-bar-variant-color, $progress-bar-variant-bg-color){
.#{$progress-name} > span.#{$progress-bar-variant-name}{
background-color: $progress-bar-variant-bg-color;
color: $progress-bar-variant-color;
}
}

View File

@@ -1,85 +0,0 @@
/*
Mixin for tab system.
Parameters:
- $tabs-name : The class name for the tab system's container.
- $tabs-label-spacing : The spacing between tab labels.
- $tabs-label-height : The height of the tab labels.
- $tabs-label-padding : The padding of the tab labels.
- $tabs-label-color : The text color of the tab labels.
- $tabs-label-bg-color : The background color of the tab labels.
- $tabs-active-label-color : The text color of the active tab's label.
- $tabs-active-label-bg-color : The background color of the active tab's label.
- $tabs-border-color : Border color for the tab system. [1]
- $tabs-label-border-radius : Border radius for the tab labels.
- $tabs-active-label-stripe : The style of the colored stripe that appears on the active tab's label. [2]
- $tabs-inactive-label-hover-style : Hover/active/focus style of the tab labels. [3]
- $tabs-inactive-label-hover-style-percentage : Hover/active/focus style of the tab labels percentage modifier.
- $tabs-content-bg-color : The background color of the active tab's content.
- $tabs-content-padding : The padding of the active tab's content.
Notes:
- [1] : The color specified in $tabs-border-color applies to all borders in the tab system. This
includes borders in the tab labels and active tab's content.
- [2] : The style of the colored stripe is a border style so you should specify it as such.
- [3] : The values that $tabs-hover-style can take are `lighten` and `darken`. The inside condition only
checks if the value is `lighten` and acts accordingly. Invalid values are treated as `darken`.
*/
@mixin make-tabs( $tabs-name, $tabs-min-height, $tabs-label-spacing, $tabs-label-height,
$tabs-label-padding, $tabs-label-color, $tabs-label-bg-color,
$tabs-active-label-color, $tabs-active-label-bg-color,
$tabs-border-color, $tabs-label-border-radius, $tabs-active-label-stripe,
$tabs-inactive-label-hover-style, $tabs-inactive-label-hover-style-percentage,
$tabs-content-bg-color, $tabs-content-padding ){
.#{$tabs-name}{
position: relative;
min-height: $tabs-min-height;
width: 100%;
& input[type="radio"]{
display: none;
& + div{
display: inline;
& > label{
position: reative;
float: left;
margin-right: $tabs-label-spacing;
left: 1px;
height: $tabs-label-height;
padding: $tabs-label-padding;
color: $tabs-label-color;
background-color: $tabs-label-bg-color;
border: 1px solid $tabs-border-color;
border-radius: $tabs-label-border-radius;
cursor: pointer;
&:hover, &:active, &:focus{
@if $tabs-inactive-label-hover-style == 'lighten'{
background: lighten($tabs-label-bg-color, $tabs-inactive-label-hover-style-percentage);
}
@else{
background: darken($tabs-label-bg-color, $tabs-inactive-label-hover-style-percentage);
}
}
& + div{
position: absolute;
z-index: -2;
left: 0;
top: ($tabs-label-height - 1px);
bottom: 0;
right: 0;
padding: $tabs-content-padding;
background: $tabs-content-bg-color;
border: 1px solid $tabs-border-color;
}
}
}
&:checked + div > label{
color: $tabs-active-label-color;
background: $tabs-active-label-bg-color;
border-top: $tabs-active-label-stripe;
border-bottom: 1px solid $tabs-content-bg-color;
& + div{
position: absolute;
z-index: -1;
}
}
}
}
}

View File

@@ -1,274 +0,0 @@
/*
Mixin for breadcrumbs style.
Parameters:
- $breadcrumbs-name : The class name for the breadcrumbs style.
- $breadcrumbs-style : The style of the breadcrumbs separator character. [1][2][3]
Notes:
- [1] : $breadcrumbs-style accepts the values 1, 2 or 3. If an invalid value is
supplied, it will be treated as 3.
- [2] : The three provided styles are as follows:
- $breadcrumbs-style == 1 : forward slash.
- $breadcrumbs-style == 2 : greater than symbol.
- $breadcrumbs-style == 3 : right angle symbol (default).
- [3] : The value of $breadcrumbs-style can be omitted and will default to 3.
*/
@mixin make-breadcrumbs($breadcrumbs-name, $breadcrumbs-style: 3){
.#{$breadcrumbs-name}{
list-style: none;
& > li{
display: inline-block;
& + li:before{
@if $breadcrumbs-style == 1{
content: '\002f\00a0';
}
@else if $breadcrumbs-style == 2{
content: '\003e\00a0';
}
@else{
content: '\27e9\00a0';
}
}
}
}
}
/*
Mixin for generic container style.
Parameters:
- $container-name : The class name for the generic container.
- $container-color : The text color of the generic container.
- $container-bg-color : The background color of the generic container.
- $container-border : The border style of the generic container.
- $container-border-radius : The border-radius of the generic container.
- $container-padding : The content badding of the generic container.
Notes:
- [1] : This mixin is also used for making alerts and panels.
*/
@mixin make-generic-container($container-name, $container-color, $container-bg-color, $container-border, $container-border-radius, $container-padding){
.#{$container-name}{
border: $container-border;
border-radius: $container-border-radius;
background-color: $container-bg-color;
color: $container-color;
padding: $container-padding;
}
}
/*
Mixin for generic alert style.
Parameters:
- $alert-name : The class name for the alert.
- $alert-color : The text color of the alert.
- $alert-bg-color : The background color of the alert.
- $alert-border : The border style of the alert.
- $alert-border-radius : The border-radius of the alert.
- $alert-padding : The content badding of the alert.
- $close-name : The class name for the close utility. [1]
Notes:
- [1] : The value of $close-name must match that of the class specified
for close elements for the alert to work correctly.
- [2] : This mixin uses `make-generic-container` to partially generate its
CSS.
*/
@mixin make-alert( $alert-name, $alert-color, $alert-bg-color, $alert-border,
$alert-border-radius, $alert-padding, $close-name ){
@include make-generic-container($alert-name+' + div', $alert-color, $alert-bg-color, $alert-border, $alert-border-radius, $alert-padding);
input[type="checkbox"].#{$alert-name}{
display: none;
& + div{
display: none;
position: relative;
& a{
font-weight: 700;
text-decoration: none;
color: darken($alert-color, 10%);
&:hover, &:active, &:focus{
text-decoration: underline;
}
}
& .#{$close-name}{
position: absolute;
top: $alert-padding;
right: $alert-padding;
color: $alert-color;
&:hover, &:active, &:focus{
color: darken($alert-color, 10%);
}
}
}
}
input[type="checkbox"]:checked.#{$alert-name} + div{
display: block;
}
}
/*
Mixin for generic panel style.
Parameters:
- $panel-name : The class name for the panel.
- $panel-color : The text color of the panel.
- $panel-bg-color : The background color of the panel.
- $panel-border : The border style of the panel.
- $panel-border-radius : The border-radius of the panel.
- $panel-padding : The content badding of the panel.
- $panel-header-name : The class name for the panel's header.
- $panel-header-color : The text color of the panel's header.
- $panel-header-bg-color : The background color of the panel's header.
- $panel-header-padding : The padding of the panel's header.
Notes:
- [1] : This mixin uses `make-generic-container` to partially generate its
CSS.
*/
@mixin make-panel( $panel-name, $panel-color, $panel-bg-color, $panel-border,
$panel-border-radius, $panel-padding, $panel-header-name,
$panel-header-color, $panel-header-bg-color, $panel-header-padding ){
@include make-generic-container($panel-name, $panel-color, $panel-bg-color, $panel-border, $panel-border-radius, 0);
.#{$panel-name}{
& > *{
padding: $panel-padding;
}
& .#{$panel-header-name}{
border-top: 0;
border-left: 0;
border-right: 0;
border-bottom: $panel-border;
color: $panel-header-color;
background-color: $panel-header-bg-color;
padding: $panel-header-padding;
margin: 0;
}
}
}
/*
Mixin for generic popover style.
Parameters:
- $popover-name : The name for the popover style
- $popover-direction : The direction of the popover. [1]
- $popover-border-radius : The border radius for the popover style.
- $popover-distance : The distance for the popover style's placement. [2]
- $popover-color : The text color of the popover style.
- $popover-bg-color : The background color of the popover style.
- $popover-padding : The padding of the popover.
Notes:
- [1] : The values that $popover-direction accepts are 'top' and 'bottom'. If an invalid value
is provided, it will be treated as 'bottom'.
- [2] : The value of $popover-distance should be treated as a general guideline for the popover
distance and is supposed to be tweaked with inline styles or helper classes for better use.
*/
@mixin make-popover( $popover-name, $popover-direction, $popover-border-radius,
$popover-distance, $popover-color, $popover-bg-color, $popover-padding ){
input[type="checkbox"]{
&.#{$popover-name}{
display:none;
+ label{
position: relative;
}
+ label > .#{$popover-name}{
position: absolute;
display: none;
background-color: $popover-bg-color;
color: $popover-color;
border-radius: $popover-border-radius;
padding: $popover-padding;
z-index: 998;
width: auto;
@if $popover-direction == 'top'
{
bottom: 49px;
}
@else{
top: 49px;
}
&:before{
position: absolute;
display: block;
@if $popover-direction == 'top'
{
border-top: 7px solid $popover-bg-color;
border-right: 7px solid transparent;
border-left: 7px solid transparent;
bottom: -7px;
}
@else{
border-bottom: 7px solid $popover-bg-color;
border-right: 7px solid transparent;
border-left: 7px solid transparent;
top: -7px;
}
content: '';
left: 50%;
margin-left: -7px;
}
}
}
&:checked.#{$popover-name}{
+ label > .#{$popover-name}{
display: block;
}
}
}
}
//====================================================================
// THE MIXINS SPECIFIED BELOW ARE EXPERIMENTAL AND MIGHT NOT BEHAVE
// AS DOCUMENTED. EXERCISE CAUTION IF YOU USE THEM!
//====================================================================
/*
Mixin for generic button states.
Parameters:
- $button-states-name : The class name of the stateful button.
Notes:
- [1] : This mixin is experimental, it might be buggy.
*/
@mixin make-button-states($button-states-name){
input[type="checkbox"]{
&.#{$button-states-name}{
display: none;
& + label{
display: block;
& + label{
display: none;
}
}
}
&:checked{
& + label{
display: none;
& + label{
display: block;
}
}
}
}
}
/*
Mixin for generic button groups.
Parameters:
- $btn-group-name : The class name of the button group.
- $btn-name : The name of the button class. [1][2]
- $btn-group-border : The border style of the button group.
- $btn-group-border-radius : The border radius at the edges of the button group.
Notes:
- [1] : The value of $btn-name must match that of the generic button class.
- [2] : The value of $btn-name can be hacked to allow for button variants to be styled
in custom manners (e.g. if you button class is `btn` and your button variant's class
is `blue`, you can style it, using `btn +'.blue'`).
- [3] : This mixin is experimental, although it is marked stable for most cases.
- [4] : The results of this mixin are purely stylistic and do not provide any grouping
functionality.
*/
@mixin make-btn-group($btn-group-name, $btn-name, $btn-group-border, $btn-group-border-radius){
.#{$btn-group-name}{
& .#{$btn-name}{
border: $btn-group-border;
margin: 0;
&:not(:first-child):not(:last-child){
border-radius: 0;
border-right: 0;
}
&:first-child{
border-radius: $btn-group-border-radius 0 0 $btn-group-border-radius;
border-right: 0;
}
&:last-child{
border-radius: 0 $btn-group-border-radius $btn-group-border-radius 0;
}
}
}
}

View File

@@ -1,310 +0,0 @@
/*
Set font-family, line-height, prevent adjustments of font size after orientation changes in IE and iOS.
Set body colors and margin.
*/
html {
font-family: #{$base-fonts};
font-size: $base-font-size;
line-height: $base-line-height;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
}
body {
margin: $body-margin;
color: $body-color;
background-color: $body-bg-color;
}
/*
Correct display in IE 9-.
Give images display: block to be responsive.
*/
article, aside, footer, header, nav, section, figcaption, figure, main, details, menu, img {
display: block;
}
/*
Correct margin in IE 8.
*/
figure {
margin: 1em 40px;
}
/*
Styles for headers.
*/
h1, h2, h3, h4, h5, h6{
line-height: $base-line-height * $header-line-height-multiplier;
margin: $header-margin ;
font-weight: $header-font-weight ;
small{
color: $header-small-color ;
font-weight: $header-small-font-weight ;
}
}
h1{ font-size: $base-font-size * $h1-multiplier; }
h2{ font-size: $base-font-size * $h2-multiplier; }
h3{ font-size: $base-font-size * $h3-multiplier; }
h4{ font-size: $base-font-size * $h4-multiplier; }
h5{ font-size: $base-font-size * $h5-multiplier; }
h6{ font-size: $base-font-size * $h6-multiplier; }
/*
Correct box-sizing in Firefox.
Style for horizontal rule.
*/
hr {
box-sizing: content-box;
line-height: $base-line-height * $hr-line-height-multiplier ;
margin: $hr-margin ;
height: 0;
border: 0;
border-top: $hr-border-style;
}
/*
Style for all small text and size for sub and sup.
*/
small, sub, sup{
font-size: $small-font-size;
}
/*
Style for paragraph and preformatted elements.
*/
p, pre {
margin: $p-margin;
}
/*
Style for lists.
*/
ul, ol {
margin-top: $list-margin-top;
margin-bottom: $list-margin-bottom;
ul, ol {
margin-bottom: 0;
}
}
/*
Styles for code and preformatted.
*/
samp, kbd, code, pre{
font-family: #{$code-fonts};
font-size: $base-font-size;
}
kbd, code, pre {
padding: $code-padding;
border-radius: $code-border-radius;
}
code, pre{
background-color: $code-bg-color;
}
kbd {
color: $kbd-color;
background-color: $kbd-bg-color;
}
pre {
display: block;
word-break: break-all;
word-wrap: break-word;
code {
padding: 0;
font-size: inherit;
color: inherit;
white-space: pre-wrap;
background-color: transparent;
border-radius: 0;
}
}
/*
Style for hyperlinks, remove underline.
Remove gray background on active links in IE 10.
Remove outline on focused links when they are also active or hovered.
*/
a {
background-color: transparent;
text-decoration: none;
color: $a-color;
&:active, &:hover{
outline-width: 0;
color: $a-hover-color;
}
&:visited{
color: $a-visited-color;
&:active, &:hover{
color: $a-visited-hover-color;
}
}
}
/*
Prevent the duplicate application of `bolder` in Safari 6.
*/
b, strong {
font-weight: inherit;
}
/*
Correct font weight in Chrome, Edge, Safari.
*/
b, strong {
font-weight: bolder;
}
/*
Correct font style in Android 4.3-.
*/
dfn {
font-style: italic;
}
/*
Remove botom border in Firefox 39-.
Correct text decoration in Chrome, Edge, IE, Opera, and Safari.
*/
abbr[title] {
border-bottom: none;
text-decoration: underline;
text-decoration: underline dotted;
}
/*
Style for mark.
*/
mark {
background-color: $mark-bg-color;
color: $mark-color;
}
/*
Styling for hidden elements.
Correct display for template in IE.
Correct display for audio:not([controls]) in iOS 4-7.
*/
[hidden], .hidden, template, audio:not([controls]) {
display: none;
}
audio:not([controls]) {
height: 0;
}
/*
Correct display in IE 9-.
*/
audio, video, progress {
display: inline-block;
}
/*
Styles for sub and sup.
Prevent `sub` and `sup` elements from affecting the line height.
Correct vertical alignment of progress in Chrome, Firefox, and Opera.
*/
sub, sup, progress{
vertical-align: baseline;
}
sub, sup {
line-height: 0;
position: relative;
}
sub {
bottom: $sub-bottom;
}
sup {
top: $sup-top;
}
/*
Remove the border on images inside links in IE 10-.
Make images responsive.
*/
img {
border-style: none;
max-width: 100%;
}
/*
Hide the overflow in IE.
*/
svg:not(:root) {
overflow: hidden;
}
/*
Show the overflow in IE and Edge.
*/
button, input, hr {
overflow: visible;
}
/*
Style for buttons and input elements.
*/
button, input, optgroup, select, textarea {
font-family: #{$button-fonts};
font-size: $button-font-size;
line-height: $base-line-height * $button-line-height-multiplier;
margin: $button-margin;
}
/*
Remove the inheritance of text transform in Edge, Firefox, and IE.
*/
button, select {
text-transform: none;
}
/*
Correct styling for iOS, Safari and Firefox.
*/
button, html [type="button"], [type="reset"], [type="submit"] {
-webkit-appearance: button;
&::-moz-focus-inner{
border-style: none;
padding: 0;
}
&:-moz-focusring{
outline: 1px dotted ButtonText;
}
}
/*
Style for fieldset.
*/
fieldset {
border: $fieldset-border;
border-radius: $fieldset-border-radius;
margin: $fieldset-margin;
padding: $fieldset-padding;
}
/*
Add correct box sizing and remove padding in IE 10-.
*/
[type="checkbox"], [type="radio"], legend {
box-sizing: border-box;
padding: 0;
}
/*
Correct text wrapping and color inheritance from `fieldset` elements in Edge and IE.
Remove the padding so developers are not caught out when they zero out `fieldset`
elements in all browsers.
*/
legend {
color: inherit;
display: table;
max-width: 100%;
white-space: normal;
}
/*
Remove the default vertical scrollbar in IE.
*/
textarea {
overflow: auto;
}
/*
Correct the cursor style of increment and decrement buttons in Chrome.
Make images responsive.
*/
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button, img {
height: auto;
}
/*
Correct styling in Chrome and Safari.
Remove the inner padding and cancel buttons in Chrome and Safari on OS X.
*/
[type="search"] {
-webkit-appearance: textfield;
outline-offset: -2px;
&::-webkit-search-cancel-button, &::-webkit-search-decoration {
-webkit-appearance: none;
}
}
/*
Correct the inability to style clickable types in iOS and Safari.
Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
-webkit-appearance: button;
font: inherit;
}

View File

@@ -1,106 +0,0 @@
/*
Mixin for button color variant.
Parameters:
- $btn-variant-color : The text color of the button variant.
- $btn-variant-bg-color : The background color of the button variant.
- $btn-variant-hover-style : Hover/active/focus style of the button variant. [1]
- $btn-variant-hover-style-percentage : Hover/active/focus style of the button variant percentage modifier.
Notes:
- [1] : The values that $btn-variant-hover-style can take are `lighten` and `darken`. The inside condition
only checks if the value is `lighten` and acts accordingly. Invalid values are treated as `darken`.
- [2] : Do not use this mixin directly, use `make-btn-style` instead.
*/
@mixin btn-variant ($btn-variant-color, $btn-variant-bg-color, $btn-variant-hover-style, $btn-variant-hover-style-percentage){
color: $btn-variant-color;
background: $btn-variant-bg-color;
&:hover, &:active, &:focus{
@if $btn-variant-hover-style == 'lighten'{
background: lighten($btn-variant-bg-color, $btn-variant-hover-style-percentage);
}
@else{
background: darken($btn-variant-bg-color, $btn-variant-hover-style-percentage);
}
}
}
/*
Mixin for the buttons.
Parameters:
- $btn-name : The class name of the buttons.
- $btn-border : The border of the buttons.
- $btn-border-radius : The border-radius of the buttons.
- $btn-margin : The margin of the buttons.
- $btn-padding : The padding of the buttons.
- $btn-color : The text color of the buttons.
- $btn-bg-color : The background color of the buttons.
- $btn-hover-style : Hover/active/focus style of the buttons. [1]
- $btn-hover-style-percentage : Hover/active/focus style of the buttons percentage modifier.
- $btn-cursor : The cursor style when hovering over the buttons.
- $btn-disabled-cursor : The cursor style when hovering over the buttons whie disabled.
- $btn-disabled-opacity : The opacity of the buttons when disabled.
Notes:
- [1] : The values that $btn-hover-style can take are `lighten` and `darken`. The inside condition only
checks if the value is `lighten` and acts accordingly. Invalid values are treated as `darken`.
- [2] : This only creates a basic button style. For more styles use `make-btn-style`.
*/
@mixin make-btn( $btn-name, $btn-border, $btn-border-radius, $btn-margin,
$btn-padding, $btn-color, $btn-bg-color,
$btn-hover-style, $btn-hover-style-percentage,
$btn-cursor, $btn-disabled-cursor, $btn-disabled-opacity){
.#{$btn-name}, a.#{$btn-name}, a.#{$btn-name}:visited{
display: inline-block;
border: $btn-border;
border-radius: $btn-border-radius;
margin: $btn-margin;
padding: $btn-padding;
@include btn-variant($btn-color, $btn-bg-color, $btn-hover-style, $btn-hover-style-percentage);
cursor: $btn-cursor;
&.disabled, &[disabled], &fieldset[disabled]{
cursor: $btn-disabled-cursor;
opacity: $btn-disabled-opacity;
}
}
}
/*
Mixin for button styles.
Parameters:
- $btn-name : The class name of the buttons. [1]
- $btn-style-name : The class name of the button style.
- $btn-style-color : The text color of the button style.
- $btn-style-bg-color : The background color of the button style.
- $btn-style-hover-style : Hover/active/focus style of the button style. [2][3]
- $btn-style-hover-style-percentage : Hover/active/focus style of the button style percentage modifier.[3]
Notes:
- [1] : The value of $btn-name must be the same as the value specified when using `make-btn`, otherwise
the specified style will not work correctly.
- [2] : The values that $btn-style-hover-style can take are `lighten` and `darken`. The inside condition
only checks if the value is `lighten` and acts accordingly. Invalid values are treated as `darken`.
- [3] : The values of $btn-style-hover-style and $btn-style-hover-style-percentage default to `lighten`
and `7.5%` if not specified.
- [4] : This mixin should be used in combination with `make-btn` and is suggested that you use it after
`make-btn`.
*/
@mixin make-btn-style($btn-name, $btn-style-name, $btn-style-color, $btn-style-bg-color, $btn-style-hover-style: lighten, $btn-style-hover-style-percentage: 7.5%){
.#{$btn-name}.#{$btn-style-name}, a.#{$btn-name}.#{$btn-style-name}, a.#{$btn-name}.#{$btn-style-name}:visited{
@include btn-variant($btn-style-color, $btn-style-bg-color, $btn-style-hover-style, $btn-style-hover-style-percentage);
}
}
/*
Mixin for button sizes.
Parameters:
- $btn-name : The class name of the buttons. [1]
- $btn-size-name : The class name of the button size.
- $btn-size-padding : The padding of the button size.
- $btn-size-font-size : The font-size of the button size.
Notes:
- [1] : The value of $btn-name must be the same as the value specified when using `make-btn`, otherwise
the specified style will not work correctly.
- [2] : This mixin should be used in combination with `make-btn` and is suggested that you use it after
`make-btn`.
*/
@mixin make-btn-size($btn-name, $btn-size-name, $btn-size-padding, $btn-size-font-size){
.#{$btn-name}.#{$btn-size-name}{
padding: $btn-size-padding;
font-size: $btn-size-font-size;
}
}

View File

@@ -1,100 +0,0 @@
/*
Mixin for the forms.
Parameters:
- $frm-name : The class name of the form.
- $frm-border : The border of the form elements.
- $frm-border-radius : The border-radius of the form elements.
- $frm-margin : The margin of the form elements.
- $frm-padding : The padding of the form elements.
- $frm-focus-color : The color used to mark the focused form element.
- $frm-invalid-color : The color used to mark an invalid form element.
- $frm-disabled-cursor : The cursor style when hovering over disabled form elements.
- $frm-disabled-opacity : The opacity of the form elements when disabled.
- $frm-readonly-bg-color : The background color of the form elements when they are readonly.
- $frm-readonly-border-color : The border color of the form elements when they are readonly.
- $frm-select-height : The height for non-multiline select elements in the form.
- $frm-label-margin : The margin for the form's label elements.
- $frm-ctrl-group-name : The class name of the control groups in the form.
- $frm-ctl-group-margin : The margin for control groups inside the form.
- $frm-inline-name : The class name for forms with inline style.
- $frm-aligned-name : The class name for forms with aligned style.
- $frm-aligned-label-width : The width of labels in forms with aligned style.
Notes:
- [1] : Input elements with button-like style (i.e. submit, reset, button etc.) are not affected by form styling.
Please use the button styles and mixins provided to properly style them to your liking.
*/
@mixin make-frm( $frm-name, $frm-border, $frm-border-radius,
$frm-margin, $frm-padding, $frm-focus-color,
$frm-invalid-color, $frm-disabled-cursor, $frm-disabled-opacity,
$frm-readonly-bg-color, $frm-readonly-border-color,
$frm-select-height, $frm-label-margin, $frm-ctrl-group-name,
$frm-ctrl-group-margin, $frm-inline-name,
$frm-aligned-name, $frm-aligned-label-width){
.#{$frm-name}{
input[type="color"], input[type^="date"], input[type$="time"], input[type="email"],
input[type="month"], input[type="week"], input[type="text"], input[type="password"],
input[type="url"], input[type="number"], input[type="search"], input[type="tel"],
select, textarea{
box-sizing: border-box;
border: $frm-border;
border-radius: $frm-border-radius;
box-shadow: none;
}
input:not([type]){
box-sizing: border-box;
border: $frm-border;
border-radius: $frm-border-radius;
box-shadow: none;
}
input, select, textarea{
display: block;
margin: $frm-margin;
padding: $frm-padding;
&:focus{
border-color: $frm-focus-color;
}
&[disabled]{
cursor: $frm-disabled-cursor;
opacity: $frm-disabled-opacity;
}
&:invalid, &:focus:invalid, &:focus:invalid:focus{
border-color: $frm-invalid-color;
}
&[readonly]{
background-color: $frm-readonly-bg-color;
border-color: $frm-readonly-border-color;
}
}
input[type="checkbox"], input[type="radio"]{
display: inline-block;
}
select{
height: $frm-select-height;
&[multiple]{
height: auto;
}
}
label{
margin: $frm-label-margin;
}
&.#{$frm-inline-name}, &.#{$frm-aligned-name}{
input, select, textarea, label{
display: inline-block;
}
}
&.#{$frm-inline-name}{
.ctrl-group{
display: inline-block;
}
}
&.#{$frm-aligned-name} .#{$frm-ctrl-group-name} label{
text-align: right;
vertical-align: middle;
width: $frm-aligned-label-width;
margin-top: 0;
}
.#{$frm-ctrl-group-name}{
margin: $frm-ctrl-group-margin;
}
}
}

View File

@@ -1,113 +0,0 @@
/*
Mixin for responsive, mobile-first grid.
Parameters:
- $container-name : The class name of the container for the grid.
- $container-padding : The left and right padding of the container. [1]
- $row-name : The class name of the grid's rows.
- $col-name : The class name of the grid's columns.
- $col-number : The amount of columns in the grid.
- $xs-prefix : Class prefix for extra small screens.
- $sm-prefix : Class prefix for small screens.
- $md-prefix : Class prefix for medium screens.
- $lg-prefix : Class prefix for large screens.
- $hide-suffix : Class suffix for hidden columns. [2]
- $sm-breakpoint : Breakpoint for small screens.
- $md-breakpoint : Breakpoint for medium screens.
- $lg-breakpoint : Breakpoint for large screens.
Notes:
- [1] : The padding of the container might cause the page to grow by $container-padding to the right. This
can be fixed either via @media queries or setting the padding to 0.
- [2] : Columns with the $hide-suffix will be only hidden in the screen size specified.
- [3] : Refer to https://github.com/Chalarangelo/mini.css/wiki/Grid for additional information.
*/
@mixin make-grid( $container-name, $container-padding,
$row-name, $col-name, $col-number, $col-padding,
$xs-prefix, $sm-prefix, $md-prefix, $lg-prefix, $hide-suffix,
$sm-breakpoint, $md-breakpoint, $lg-breakpoint ){
// Container
.#{$container-name}{
padding-right: $container-padding;
padding-left: $container-padding;
margin-right: auto;
margin-left: auto;
width: 100%;
*{
box-sizing: border-box;
}
}
// Row
.#{$row-name}{
&:before, &:after{
content: "";
display: table;
clear: both;
}
}
// Column
.#{$col-name}{
float: left;
padding: $col-padding;
}
// Extra small screen
@for $i from 1 through $col-number{
.#{$xs-prefix}-#{$i}{
width: #{($i * 100% / $col-number)};
}
}
.#{$sm-prefix}-#{$hide-suffix},
.#{$md-prefix}-#{$hide-suffix},
.#{$lg-prefix}-#{$hide-suffix}{
display: block;
}
.#{$xs-prefix}-#{$hide-suffix}{
display: none;
}
// Small screen
@media (min-width: $sm-breakpoint){
@for $i from 1 through $col-number{
.#{$sm-prefix}-#{$i}{
width: #{($i * 100% / $col-number)};
}
}
.#{$xs-prefix}-#{$hide-suffix},
.#{$md-prefix}-#{$hide-suffix},
.#{$lg-prefix}-#{$hide-suffix}{
display: block;
}
.#{$sm-prefix}-#{$hide-suffix}{
display: none;
}
}
// Medium screen
@media (min-width: $md-breakpoint){
@for $i from 1 through $col-number{
.#{$md-prefix}-#{$i}{
width: #{($i * 100% / $col-number)};
}
}
.#{$xs-prefix}-#{$hide-suffix},
.#{$sm-prefix}-#{$hide-suffix},
.#{$lg-prefix}-#{$hide-suffix}{
display: block;
}
.#{$md-prefix}-#{$hide-suffix}{
display: none;
}
}
// Large screen
@media (min-width: $lg-breakpoint){
@for $i from 1 through $col-number{
.#{$lg-prefix}-#{$i}{
width: #{($i * 100% / $col-number)};
}
}
.#{$xs-prefix}-#{$hide-suffix},
.#{$sm-prefix}-#{$hide-suffix},
.#{$md-prefix}-#{$hide-suffix}{
display: block;
}
.#{$lg-prefix}-#{$hide-suffix}{
display: none;
}
}
}

View File

@@ -1,197 +0,0 @@
/*
Mixin for navigation bar and complementary styles.
Parameters:
- $nav-name : The class name for the navigation bar.
- $nav-vertical-name : The class name for the vertical style of the navigation bar.
- $nav-fixed-name : The class name for the fixed style of the navigation bar.
- $nav-logo-name : The class name for the logo item of the navigation bar.
- $nav-logo-size : The font-size of the logo item of the navigation bar.
- $nav-link-name : The class name for the navigation links of the navigation bar.
- $nav-padding : The padding of the elements of the navigation bar. [1]
- $nav-color : The text color of the navigation elements.
- $nav-bg-color : The background color of the navigation bar.
- $nav-hover-style : Hover/active/focus style of the navigation elements. [2]
- $nav-hover-style-percentage : Hover/active/focus style of the navigation elements percentage modifier.
- $nav-disabled-cursor : The cursor style when hovering over the navigation elements whie disabled.
- $nav-disabled-opacity : The opacity of the navigation elements when disabled.
- $nav-fixed-left-right : The orientation of the fixed navigation bar. [3][4]
- $grid-columns-total : Total amount fo columns in the used grid. [5]
- $grid-coloumns-count-for-nav-fixed-vertical : Desired amount of columns occupied by the vertical navigation bar in the grid. [5]
- $nav-fixed-collapse-breakpoint : The breakpoint below which fixed navigation bars will collapse to a menu toggle button.
- $nav-fixed-collapse-label-location : Location of the collapsed menu button label. [6]
- $nav-fixed-collapse-label-margin : The margin for the collapsed menu button label.
- $nav-fixed-collapse-label-font-size : The font size of the collapsed menu button label.
Notes:
- [1] : This padding applies to all elements of the navigation bar and all styles(e.g. vertical or fixed).
For vertical styles it adapts to apply properly. It also adapts to apply properly to the collapse
label of the navigation bar. Please specify only a single padding value (i.e. 6px, 1.25em etc.) to
avoid CSS errors and ultimately the style not being applied to some elements.
- [2] : The values that $nav-hover-style can take are `lighten` and `darken`. The inside condition only
checks if the value is `lighten` and acts accordingly. Invalid values are treated as `darken`.
- [3] : The values of $nav-fixed-left-right recognizes are `left` and `right`. However if invalid values
are provided, due to the inside condition only checking for `left`, `right` will be used as the
default value.
- [4]: The values of $nav-fixed-left-right will apply to all fixed navigation bars. The horizontal bars
should not be affected as they are 100% width, meaning that anchoring to left or right should have
the same result.
- [5] : These values are used to make the navigation bar work better with the grid system. Values do not have
to be the same as the grid or integer values, meaning that values like 12 and 1.5 could work great leaving
a small gap just before the third column in the grid. If no grid is specified, you can use percentage
values like 100 and 15 to get a 15% width for example.
- [6] : The value $nav-fixed-collapse-label-location recognizes are `top-left`, `top-right`, `bottom-left`
and `bottom-right`. Due to the way the conditional checking is implemented, `bottom-right` will be
used as a default if no valid value is specified.
*/
@mixin make-nav( $nav-name, $nav-vertical-name, $nav-fixed-name, $nav-logo-name,
$nav-logo-size, $nav-link-name, $nav-padding, $nav-color, $nav-bg-color,
$nav-hover-style, $nav-hover-style-percentage, $nav-disabled-cursor,
$nav-disabled-opacity, $nav-fixed-left-right, $grid-columns-total,
$grid-columns-count-for-nav-fixed-vertical, $nav-fixed-collapse-breakpoint,
$nav-fixed-collapse-label-location, $nav-fixed-collapse-label-margin,
$nav-fixed-collapse-label-font-size ){
.#{$nav-name}{
box-sizing: border-box;
background-color: #{$nav-bg-color};
.#{$nav-logo-name}{
font-size: $nav-logo-size;
color: #{$nav-color};
}
ul{
display: inline-block;
list-style: none;
margin: 0;
padding: 0;
li{
display: inline-block;
margin: 0;
white-space: nowrap;
> * {
display: inline-block;
padding: #{$nav-padding};
color: #{$nav-color};
margin: 0;
}
.#{$nav-link-name}{
&:hover, &:active, &:focus{
color: #{$nav-color};
@if $nav-hover-style == 'lighten'{
background: lighten($nav-bg-color, $nav-hover-style-percentage);
}
@else{
background: darken($nav-bg-color, $nav-hover-style-percentage);
}
}
&.disabled, &[disabled]{
cursor: $nav-disabled-cursor;
opacity: $nav-disabled-opacity;
}
}
}
}
&.#{$nav-vertical-name}{
ul{
display: block;
li{
display: block;
> * {
width: 100%;
padding: #{$nav-padding} 0;
}
}
}
}
&.#{$nav-fixed-name}{
position: fixed;
@if $nav-fixed-left-right == 'left'{
left: 0;
}
@else{
right: 0;
}
top: 0;
z-index: 999;
width: 100%;
&.#{$nav-vertical-name}{
height: 100%;
width: #{($grid-columns-count-for-nav-fixed-vertical * 100%/ $grid-columns-total)};
ul{
width: 100%;
li{
display: block;
}
}
}
}
& + label{
display: none;
font-weight: 700;
margin: $nav-fixed-collapse-label-margin;
font-size: $nav-fixed-collapse-label-font-size;
padding: #{$nav-padding};
color: #{$nav-color};
background-color: $nav-bg-color;
width: auto;
position: fixed;
z-index: 1000;
@if $nav-fixed-collapse-label-location == 'top-left'{
top: 0;
left: 0;
}
@else if $nav-fixed-collapse-label-location == 'top-right'{
top: 0;
right: 0;
}
@else if $nav-fixed-collapse-label-location == 'bottom-left'{
bottom: 0;
left: 0;
}
@else{
bottom: 0;
right: 0;
}
&:before{
position: relative;
content: '\2630';
}
&:hover, &:active, &:focus{
@if $nav-hover-style == 'lighten'{
background: lighten($nav-bg-color, $nav-hover-style-percentage);
}
@else{
background: darken($nav-bg-color, $nav-hover-style-percentage);
}
}
}
}
@media (max-width: $nav-fixed-collapse-breakpoint){
.#{$nav-name}{
overflow: auto;
&.#{$nav-fixed-name}{
display: none;
& + label{
display: block;
}
}
}
input[type="checkbox"]:checked + .#{$nav-name}.#{$nav-fixed-name}{
display: block;
width: 100%;
height: 100%;
ul{
display: block;
li{
display: block;
* {
width: 100%;
padding: #{$nav-padding} 0;
}
}
}
& + label{
&:before{
content: '\00d7';
}
}
}
}
}

View File

@@ -1,59 +0,0 @@
/*
Mixin for the tables.
Parameters:
- $tbl-name : The class name of the table.
- $tbl-border : The border of the table and cells. [1]
- $tbl-margin : The margin of the table cells.
- $tbl-padding : The padding of the table cells.
- $tbl-head-bg-color : The color of the thead background.
- $tbl-head-color : The color of the thead text.
- $tbl-body-bg-color : The color of the even-numbered rows in tbody.
- $tbl-body-alt-bg-color : The color of the odd-numbered rows in tbody.
- $tbl-body-color : The color of the text in tbody.
- $tbl-horizontal-name : The class name for the horizontal style table.
- $tbl-bordered-name : The class name for the bordered style table.
Notes:
- [1] : This style will apply to the table and cells. All styles applied to
the table (horizontal, bordered) will use the same style of border.
*/
@mixin make-tbl( $tbl-name, $tbl-border, $tbl-margin, $tbl-padding,
$tbl-head-bg-color, $tbl-head-color, $tbl-body-bg-color,
$tbl-body-alt-bg-color, $tbl-body-color,
$tbl-horizontal-name, $tbl-bordered-name ){
.#{$tbl-name}{
border-collapse: collapse;
border-spacing: 0;
empty-cells: show;
border: $tbl-border;
td, th{
overflow: visible;
border-left: $tbl-border;
border-bottom: none;
margin: $tbl-margin;
padding: $tbl-padding;
}
thead {
background-color: $tbl-head-bg-color;
color: $tbl-head-color;
text-align: left;
}
tbody {
background-color: $tbl-body-bg-color;
color: $tbl-body-color;
tr:nth-child(2n-1) {
background-color: $tbl-body-alt-bg-color;
}
}
&.#{$tbl-horizontal-name}{
td,th{
border-left: none;
border-bottom: $tbl-border;
}
}
&.#{$tbl-bordered-name}{
td,th{
border-bottom: $tbl-border;
}
}
}
}

View File

@@ -1,182 +0,0 @@
/*
Image thumbnail style mixin. [1]
Parameters:
- $thumb-name : The class name for the thumbnail style.
- $thumb-padding : The padding between the image and the border.
- $thumb-border : The style of the thumbnail's border.
- $thumb-border-radius : The border radius of the thumbnail.
Notes:
- [1] : This style only applies to `img` elements with the class specified in
`$thumb-name`.
*/
@mixin make-thumb($thumb-name, $thumb-padding, $thumb-border, $thumb-border-radius){
img.#{$thumb-name}{
padding: $thumb-padding;
border: $thumb-border;
border-radius: $thumb-border-radius;
}
}
/*
Mixin for generic border style.
Parameters:
- $border-generic-name : The class name for the generic border.
Notes:
- [1] : The border style uses rgba to create a 1px solid border with 0.25
opacity around an element, which makes it look properly bordered.
Might be incompatible with older browsers.
- [2] : The border style overwrites any border style as it uses
`!important`, exercise caution when using.
*/
@mixin make-border-generic($border-generic-name){
.#{$border-generic-name}{
border: 1px solid rgba(0,0,0, 0.25) !important;
}
}
/*
Mixin for generic border radius styles.
Parameters:
- $border-style-name : The class name for the generic border radius style.
- $border-style-radius : The radius for the generic border radius style.
Notes:
- [1] : The border style overwrites any border style as it uses
`!important`, exercise caution when using.
*/
@mixin make-border-radial-style($border-style-name, $border-style-radius){
.#{$border-style-name}{
border-radius: $border-style-radius !important;
}
}
/*
Mixin for generic contextual color text styles.
Parameters:
- $colored-text-name : The class name for the contextual color text style.
- $colored-text-color : The color for the contextual color text style.
Notes:
- [1] : The contextual color text style overwrites any text color as it uses
`!important`, exercise caution when using.
*/
@mixin make-colored-text($colored-text-name, $colored-text-color){
.#{$colored-text-name}{
color: $colored-text-color !important;
}
}
/*
Mixin for generic contextual background text styles.
Parameters:
- $colored-bg-text-name : The class name for the contextual background text style.
- $colored-bg-text-color : The background color for the contextual background text style.
Notes:
- [1] : The contextual background text style overwrites any text color as it
uses `!important`, exercise caution when using.
*/
@mixin make-colored-bg-text($colored-bg-text-name, $colored-bg-text-color){
.#{$colored-bg-text-name}{
background-color: $colored-bg-text-color !important;
}
}
/*
Mixin for simple caret utility class.
Parameters:
- $caret-name : The class name for caret utility class.
- $caret-size : The size of the caret utility element. [1]
- $caret-color : The color of the caret utility element.
Notes:
- [1] : The caret is built using the border trick. Sizes can be specified
in either `px` or `em`, but they might take a bit of tweaking to
get right.
*/
@mixin make-caret-down($caret-name, $caret-size, $caret-color){
.#{$caret-name} {
display: inline-block;
vertical-align: middle;
line-height: 1;
width: 0;
height: 0;
border-left: $caret-size solid transparent;
border-right: $caret-size solid transparent;
border-top: $caret-size solid $caret-color;
}
}
/*
Mixin for simple close sign utility class.
Parameters:
- $close-name : The class name for close utility class.
- $close-color : The color of the close utility element.
- $close-cursor : The cursor for the close utility element.
- $close-font-size : The font-size for the close utility element.
- $close-font-weight : The font-weight for the close utility element.
- $close-hover-color : The color of the close utility element when hovering over it.
*/
@mixin make-close($close-name, $close-color, $close-cursor, $close-font-size, $close-font-weight, $close-hover-color){
.#{$close-name}{
display: inline-block;
vertical-align: middle;
line-height: 1;
color: $close-color;
font-size: $close-font-size;
font-weight: $close-font-weight;
cursor: $close-cursor;
&:before {
content: '\00d7';
}
&:hover{
color: $close-hover-color;
}
}
}
/*
Mixin for quick float classes. [1]
Parameters:
- $drag-left-name : The class name for left drags.
- $drag-right-name : The class name for right drags.
Notes:
- [1] : These classes use `!important` to set the float properties,
exercise caution when using.
*/
@mixin make-drags($drag-left-name, $drag-right-name){
.#{$drag-left-name} {
float: left !important;
}
.#{$drag-right-name} {
float: right !important;
}
}
/*
Mixin for center block class.
Parameters:
- $center-block-name : The class name for center block class.
*/
@mixin make-center-block($center-block-name){
.#{$center-block-name} {
display: block;
margin-left: auto;
margin-right: auto;
}
}
/*
Mixin for clearfix class.
Parameters:
- $clearfix-name : The class name for the clearfix class.
*/
@mixin make-clearfix($clearfix-name){
.#{$clearfix-name} {
&:before, &:after {
content: "";
display: table;
clear: both;
}
}
}
/*
Mixin for hidden class. [1]
Parameters:
- $hidden-name : The class name for hidden elements.
Notes:
- [1] : This class uses `!important` to set the display property,
exercise caution when using.
*/
@mixin make-hidden($hidden-name){
.#{$hidden-name}{
display: none !important;
}
}

View File

@@ -0,0 +1,612 @@
// This is a flavor file. Duplicate it and edit it to create your own flavor. Read instructions carefully.
// Single-line comments, starting with '//' will not be included in your final CSS file. Multiline comments,
// structured like the flavor description below, will be included in your final CSS file.
/*
Flavor name: Default (mini-default)
Author: Angelos Chalaris (chalarangelo@gmail.com)
mini.css version: v2.0.2 (Fermion)
*/
// Basic rules for body and typography
$fore-color: #212121; // Text and general foreground color
$back-color: #f5f5f5; // Body background color
$base-font-family: // Default font stack for all elements:
'-apple-system, BlinkMacSystemFont,\"Segoe UI\",\"Roboto\", \"Droid Sans\",\"Helvetica Neue\", Helvetica, Arial, sans-serif';
// OS X and iOS system fonts (San Francisco) -> Windows system fonts -> Android system fonts (newer and older) -> Fallback fonts
$base-root-font-size: 16px; // Root font sizing for all elements [1]
$base-font-size: 1em; // Default font sizing for all elements [2]
$base-line-height: 1.5; // Default line height for all elements.
$body-margin: 0; // Margin for the body
$apply-defaults-to-all: true; // Should default values be applied to all
// elements? (`true` or `false`) [3]
$h1-font-size: 2em; // Font size of h1
$h2-font-size: 1.5em; // Font size for h2
$h3-font-size: 1.25em; // Font size for h3
$h4-font-size: 1.1em; // Font size for h4
$h5-font-size: 1em; // Font size for h5
$h6-font-size: 0.85em; // Font size for h6
$heading-line-height: 1.2em; // Line height for all headings
$heading-margin: 12px 8px; // Margin for all headings
$heading-font-weight: 500; // Font weight for all headings
$heading-smalltext-fore-color: #424242; // <small> color in headings
$make-heading-smalltext-block: true; // Should <small> elements in headings
// be displayed as blocks (`true`/`false`) [4]
$heading-smalltext-b-font-size: 75%; // Font size of block <small> elements in headings
$heading-smalltext-b-top-margin:-4px; // Top margin of block <small> elements in headings
$paragraph-margin: 1px 8px; // Margin for <p> elements
$list-margin: 1px 8px 10px; // Margin for <ol> and <ul> elements
$list-left-padding: 28px; // Left padding for <ol> and <ul> elements
$bold-font-weight: 700; // Font weight for <b> and <strong>
$horizontal-rule-line-height: 1.25em; // <hr> line height
$horizontal-rule-margin: 8px; // <hr> margin
$horizontal-rule-border-style: 1px solid #757575; // Border style for horizontal rules (used
// in the <hr> element's border-top)
$horizontal-rule-fancy-style: true; // Should a fancy styling be applied for the
// <hr> element (`true`/`false`) [5]
$horizontal-rule-fancy-gradient:"to right, #bdbdbd, #616161, #bdbdbd"; // Gradient style for fancy horizontal rule
$blockquote-back-color: #eeeeee; // Background color for <blockquote>
$blockquote-fore-color: $fore-color; // Text color for <blockquote>
$blockquote-margin: 8px 10px; // Margin for <blockquote>
$blockquote-padding: 6px 10px 24px; // Padding for <blockquote>
$blockquote-sidebar-style: 3px solid #616161; // Style for the sidebar of <blockquote>
$blockquote-cite-font-size: 0.85em; // Font size for citation of <blockquote>
$blockquote-cite-fore-color: #616161; // Text color for citation of <blockquote>
$blockquote-cite-left-position: 10px; // Left padding for citation of <blockquote>
$blockquote-cite-bottom-position: // Bottom padding for citation of <blockquote>
0;
$blockquote-border-style: 0; // Border style for <blockquote>
$blockquote-border-radius: 0 2px 2px 0; // Border radius for <blockquote>
$blockquote-box-shadow: // Box shadow for <blockquote>
0 1px 3px rgba(0,0,0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.15);
$use-default-code-fonts: true; // Should default font choice (monospace) be
// used for code elements? (`true`/`false`) [6]
//$code-font-family: monospace, monospace; // Fonts for code elements if not default
$code-element-padding: 2px 4px; // Padding for <code>
$code-element-fore-color: $fore-color; // Text color for <code>
$code-element-back-color: #e0e0e0; // Background color for <code>
$code-element-border-style: 0; // Border style for <code>
$code-element-border-radius: 2px; // Border radius for <code>
$code-element-box-shadow: // Box shadow for <code>
0 1px 2px rgba(0,0,0, 0.1), 0 1px 1px rgba(0, 0, 0, 0.15);
$pre-element-padding: 12px; // Padding for <pre>
$pre-element-fore-color: $code-element-fore-color; // Text color for <pre>
$pre-element-back-color: $code-element-back-color; // Background color for <pre>
$pre-element-border-style: 0; // Border style for <pre>
$pre-element-border-radius: 0 2px 2px 0; // Border radius for <pre>
$pre-element-margin: 8px 10px; // Margin for <pre>
$pre-element-box-shadow: // Box shadow for <pre>
0 1px 3px rgba(0,0,0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.15);
$add-pre-element-sidebar: true; // Should a fancy sidebar be added to the
// left side of <pre> (`true`/`false`) [7]
$pre-element-sidebar-style: 3px solid #1565c0; // Style of the sidebar of <pre>
$kbd-element-padding: 2px 4px; // Padding for <kbd>
$kbd-element-fore-color: #fafafa; // Text color for <kbd>
$kbd-element-back-color: $fore-color; // Background color for <kbd>
$kbd-element-border-style: 0; // Border style for <kbd>
$kbd-element-border-radius: 2px; // Border radius for <kbd>
$kbd-element-box-shadow: // Box shadow for <kbd>
0 1px 2px rgba(0,0,0, 0.1), 0 1px 1px rgba(0, 0, 0, 0.15);
$style-samp-element: false; // Should styles for <samp> be included?
// (`true`/`false`) [8]
//$samp-element-padding: 2px 4px; // Padding for <samp>
//$samp-element-fore-color: $fore-color; // Text color for <samp>
//$samp-element-back-color: #2196f3; // Background color for <samp>
//$samp-element-border-style: 0; // Border style for <samp>
//$samp-element-border-radius: 2px; // Border radius for <samp>
$include-dfn-fix: true; // Should the fix for Android 4.3 concerning <dfn>
// be included (`true`/`false`) [9]
$small-font-size: 75%; // Font size for <small> elements
$sup-font-size: 75%; // Font size for <sup> elements
$sub-font-size: 75%; // Font size for <sub> elements
$sup-top: -8px; // <sup> top
$sub-bottom: -4px; // <sub> bottom
$link-fore-color: #0277bd; // Text color for <a>
$link-visited-fore-color: #01579b; // Text color for visited <a>
$link-font-weight: 500; // Font weight for <a>
$apply-link-underline: true; // Should an underline be applied to all <a>
// elements? (`true`/`false`) [10]
$apply-link-hover-fade: true; // Should the :hover and :focus state of <a>
// elements use fade-out instead of a different
// color (`true`/`false`) [11]
//$link-hover-fore-color: #0288d1; // Text color for <a> when hovered or focused
// Notes:
// [1] - The value $base-root-font-size should be in `px` only! This rule is very important, as it will determine the root
// element's font sizing.
// [2] - The value of $base-font-size will only be used if the value of $apply-defaults-to-all is set to `true` (see [3]).
// This is due to the fact that applying the value of it on the root element again will overwrite the value of
// $base-root-font-size (see [1]). The value of this variable should be set in either `em` or `rem`.
// [3] - It is recommended to set the value of $apply-defaults-to-all to `true`, unless you want to apply extra styling
// to elements manually.
// [4] - If the value of $make-heading-smalltext-block is `true` the <small> elements in headings will be displayed below
// the main heading and the 2 values specified below will apply.
// [5] - If $horizontal-rule-fancy-style is set to `true` the value of $horizontal-rule-border-style will not be used and
// a gradient with the style specified in $horizontal-rule-fancy-gradient will be applied instead.
// [6] - If the value of $use-default-code-fonts is set to `false` the value of $code-font-family will be used. `true`
// will apply the proper fix to use monospace font without any problems on all browsers.
// [7] - if the value of $add-pre-element-sidebar is set to true, the style specified in $pre-element-sidebar-style will
// be applied as a left border for the <pre> elements.
// [8] - If the value of $style-samp-element is set to `false`, no styling will be included in the final CSS file for
// `samp` elements. Otherwise, the styling defined in the $samp-... variables will be applied.
// [9] - If the value of $include-dfn-fix is set to `true` a styling fix will be applied, so that the <dfn> elements are
// displayed properly on older versions of Android (4.3-) in italics. Otherwise, said fix will not be included.
// [10] - If the value of $apply-link-underline is set to `true`, an underline will be applied to the link in its normal
// color, as defined in $link-fore-color.
// [11] - If `$apply-link-hover-fade` is set to `true`, a fading transition will be used for the link when hovered over or
// focused. Otherwise, the color specified in $link-hover-fore-color will be used.
// Variables for grid elements
$use-four-step-grid: false; // Should the old 4-step grid system be used
// instead of the new (`true`/`false`) [1]
$grid-container-name: 'container'; // Class name for the grid container
$grid-container-side-padding: 10px; // Padding for the grid container (left and right only)
$grid-row-name: 'row'; // Class name for the grid's rows
$grid-column-prefix: 'col'; // Class name prefix for the grid's columns
$grid-column-offset-suffix: 'offset'; // Class name suffix for the grid's offsets
$grid-order-normal-suffix: 'normal'; // Class name suffix for grid columns with normal priority
$grid-order-first-suffix: 'first'; // Class name suffix for grid columns with highest priority
$grid-order-last-suffix: 'last'; // Class name suffix for grid columns with lowest priorty
$grid-column-count: 12; // Number of columns in the grid (integer value only)
$grid-column-padding: 0 4px; // Padding for the columns of the grid
//$grid-extra-small-prefix: 'xs'; // Extra small screen class prefix for grid
//$grid-small-breakpoint: 480px; // Small screen breakpoint for grid
$grid-small-prefix: 'sm'; // Small screen class prefix for grid
$grid-medium-breakpoint: 768px; // Medium screen breakpoint for grid
$grid-medium-prefix: 'md'; // Medium screen class prefix for grid
$grid-large-breakpoint: 1280px; // Large screen breakpoint for grid
$grid-large-prefix: 'lg'; // Large screen class prefix for grid
// Notes:
// [1] - If the value of $use-four-step-grid is `true`, the grid system will contain 4 breakpoints instead of 3, along with
// the needed styles. In this case, values should be specified for $grid-extra-small-prefix and $grid-small-breakpoint.
// Variables for navigational elements
$header-height: 44px; // Height for <header>
$header-back-color: #263238; // Background color for <header>
$header-fore-color: #fafafa; // Text color for <header>
$header-border-style: 0; // Border style for <header>
$header-margin: 0; // Margin for <header>
$header-padding: 2px 8px; // Padding for <header>
$header-box-shadow: // Box shadow for <header>
0 2px 4px rgba(0,0,0, 0.18), 0 2px 3px rgba(0, 0, 0, 0.26);
$header-logo-name: 'logo'; // Class name for <header>'s logo
$header-logo-font-size: 1.75em; // Font size for <header>'s logo
$header-logo-line-height: 1.2; // Line height for <header>'s logo
$header-logo-margin: 1px 6px 1px 1px; // Margin for <header>'s logo
$header-logo-padding: 3px 0 0; // Padding for <header>'s logo
$header-link-hover-color: #37474f; // Hover color for <header>'s links
$header-link-margin: 2px 0 0; // Margin for <header>'s links
$nav-back-color: #eceff1; // Background for <nav>
$nav-fore-color: $fore-color; // Text color for <nav>
$nav-border-style: 1px solid #bdbdbd; // Border style for <nav>
$nav-border-radius: 0; // Border radius for <nav>
$nav-padding: 8px 8px 16px 20px; // Padding for <nav>
$nav-margin: 2px; // Margin for <nav>
$nav-box-shadow: // Box shadow for <nav>
0 2px 4px rgba(0,0,0, 0.1), 0 2px 3px rgba(0, 0, 0, 0.15);
$nav-link-fore-color: #1565c0; // Text color for links in <nav>
$nav-sublink-prefix: 'sublink'; // Prefix for the subcategory links in <nav>
$nav-sublink-depth: 2; // Amount of subcategory classes to add
$nav-sublink-padding-left: 12px; // Left padding to add to subcategories
$footer-back-color: #263238; // Background color for <footer>
$footer-fore-color: #fafafa; // Text color for <footer>
$footer-border-style: 0; // Border stye for <footer>
$footer-font-size: 85%; // Font size for <footer>
$footer-margin: 18px 0 0; // Margin for <footer>
$footer-padding: 22px 10px 12px; // Padding for <footer>
$footer-link-fore-color: #039be5; // Text color for links in <footer>
// Variables for forms and inputs
$form-back-color: #eeeeee; // Background color for forms
$form-fore-color: $fore-color; // Text color for forms
$form-border-style: 1px solid #bdbdbd; // Border style for forms
$form-border-radius: 0; // Border radius for forms
$form-margin: 8px; // Margin for forms
$form-padding: 12px 10px 18px; // Padding for forms
$form-box-shadow: // Box shadow for forms
0 2px 4px rgba(0,0,0, 0.1), 0 2px 3px rgba(0, 0, 0, 0.15);
$fieldset-back-color: $form-back-color; // Background color for fieldset
$fieldset-border-style: 1px solid #bdbdbd; // Border style for fieldset
$fieldset-border-radius: 2px; // Border radius for fieldset
$fieldset-margin: 2px; // Margin for fieldset
$fieldset-padding: 6px 8px 8px; // Padding for fieldset
$legend-font-weight: $bold-font-weight; // Font weight for legend
$legend-font-size: 0.925em; // Font size for legend
$legend-fore-color: $form-fore-color; // Text color for legend
$legend-padding: 2px 4px; // Padding for legend
$input-group-name: 'input-group'; // Class for input groups
$input-back-color: #fafafa; // Background for input
$input-fore-color: $fore-color; // Text color for input
$input-border-style: 1px solid #bdbdbd; // Border style for input
$input-border-radius: 1px; // Border radius for input
$input-margin: 2px; // Margin for input
$input-padding: 8px 12px; // padding for input
$input-focus-border-color: #0288d1; // Border color for focused input
$input-invalid-border-color: #d32f2f; // Border color for invalid input
$input-disabled-opacity: 0.75; // Opacity for disabled input
$input-readonly-back-color: #e0e0e0; // Background color for readonly input
$input-readonly-border-color: #bdbdbd; // Border color for readonly input
$input-placeholder-fore-color: #616161; // Text color for input placeholder
$button-back-color: #bdbdbd; // Back color for button elements
$button-back-opacity: 0.65; // Background opacity for button elements
$button-hover-back-opacity: 0.8; // Background opacity for button elements
// on hover or focus
$button-fore-color: $fore-color; // Text color for button elements
$button-border-style: 0; // Border style for button elements
$button-border-radius: 2px; // Border radius for button elements
$button-padding: 8px 12px; // Padding for button elements
$button-margin: 8px; // Margin for button elements
$button-box-shadow: // Box shadow for buttons
0 1px 3px rgba(0,0,0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.15);
$button-disabled-opacity: 0.65; // Disabled button elements opacity
$button-class-name: 'button'; // Class for custom button elements
$button-group-name: 'button-group'; // Class for button groups
$button-group-border-style: 1px solid #9e9e9e; // Border style for button groups
$button-group-margin: $button-margin; // Margin for button groups
$button-group-box-shadow: // Box shadow for button groups
0 2px 4px rgba(0,0,0, 0.1), 0 2px 3px rgba(0, 0, 0, 0.15);
$button-group-mobile-breakpoint:767px; // Breakpoint for button group mobile view
$hide-file-inputs: true; // Should a style be added that makes all
// <input>s of type `file` hidden?
// (`true`/`false`) [1]
$button-variant1-name: 'primary'; // Class name for button variant 1
$button-variant1-back-color: #0277bd; // Background color for button variant 1
$button-variant1-back-opacity: 0.9; // Background opacity for button variant 1
$button-variant1-hover-back-opacity: // Background opacity for button variant 1
1; // on hover or focus
$button-variant1-fore-color: #fafafa; // Text color for button variant 1
$button-variant2-name: 'secondary'; // Class name for button variant 2
$button-variant2-back-color: #c62828; // Background color for button variant 2
$button-variant2-back-opacity: 0.85; // Background opacity for button variant 2
$button-variant2-hover-back-opacity: // Background opacity for button variant 2
1; // on hover or focus
$button-variant2-fore-color: #fafafa; // Text color for button variant 2
$button-variant3-name: 'tertiary'; // Class name for button variant 3
$button-variant3-back-color: #689f38; // Background color for button variant 3
$button-variant3-back-opacity: 0.85; // Background opacity for button variant 3
$button-variant3-hover-back-opacity: // Background opacity for button variant 3
1; // on hover or focus
$button-variant3-fore-color: #fafafa; // Text color for button variant 3
$button-variant4-name: 'inverse'; // Class name for button variant 4
$button-variant4-back-color: $fore-color; // Background color for button variant 4
$button-variant4-back-opacity: 1; // Background opacity for button variant 4
$button-variant4-hover-back-opacity: // Background opacity for button variant 4
0.9; // on hover or focus
$button-variant4-fore-color: #fafafa; // Text color for button variant 4
$button-style1-name: 'small'; // Class name for button style 1
$button-style1-border-style: 0; // Border style for button style 1
$button-style1-border-radius: 1px; // Border radius for button style 1
$button-style1-padding: 4px 6px; // Padding for button style 1
$button-style1-margin: 6px 8px; // Margin for button style 1
$button-style2-name: 'large'; // Class name for button style 2
$button-style2-border-style: 0; // Border style for button style 2
$button-style2-border-radius: 4px; // Border radius for button style 2
$button-style2-padding: 12px 18px; // Padding for button style 2
$button-style2-margin: 10px 8px; // Margin for button style 2
$checkbox-size: 16px; // Size for checkbox/radio [2]
$checkbox-back-color: $input-back-color; // Background clor for checkbox/radio
$checkbox-fore-color: $input-fore-color; // Text/mark color for checkbox/radio
$checkbox-border-thickness: 1px; // Border thickness for checkbox/radio
$checkbox-border-color: #bdbdbd; // Border color for checkbox/radio
$checkbox-border-radius: $input-border-radius; // Border radius for checkbox/radio
$checkbox-focus-border-color: $input-focus-border-color; // Border color for checkbox/radio on focus
$checkbox-bottom-spacing: 3px; // Bottom spacing for checkbox/radio
$checkbox-disabled-opacity: $input-disabled-opacity; // Opacity for disabled checkbox/radio
// Notes:
// [1] - If the value of $hide-file-inputs is `true`, all <input type="file"> elements will be hidden and the only way
// to access them is via the use of <label> elements that are linked to them. This option is enabled by default to
// allow for universal button styles, even for file input buttons, but can be disabled if the base style is desired.
// If the value is `false`, some fixes will be applied to the <input type="file"> element.
// [2] - The value of $checkbox-size will determine a few variables like some `margin` values, `height`, `width` etc.
// Variables for responsive tables
$table-border-style: 1px solid #bdbdbd; // Border style for <table> and children
$table-border-radius: 0; // Border radius for <table> and children
$table-margin: 0 auto; // Margin for <table>
$table-box-shadow: // Box shadow for <table>
0 2px 4px rgba(0,0,0, 0.1), 0 2px 3px rgba(0, 0, 0, 0.15);
$table-caption-font-size: 1.5em; // Font size for <caption>
$table-caption-margin: 6px 8px 12px; // Margin for <caption>
$table-row-padding: 8px; // Padding for <tr> - both views
$table-column-padding: 10px; // Padding for <td> and <th> - desktop view
$table-head-back-color: #e0e0e0; // Background color for <th>
$table-head-fore-color: $fore-color; // Tex color for <th>
$table-body-back-color: #fafafa; // Background color for <td>
$table-body-fore-color: $fore-color; // Text color for <td>
$table-mobile-breakpoint: 767px; // Breakpoint for <table> mobile view
$table-mobile-card-spacing: 10px; // Space between <tr> cards - mobile view
$table-mobile-card-label: 'data-label'; // Attribute used to replace column headers
// in mobile view [1]
$table-mobile-label-font-weight:$bold-font-weight; // Font weight for mobile headers
$table-horizontal-breakpoint: 768px; // Breakpoint for <table> horizontal view
$table-horizontal-name: 'horizontal'; // Class name for <table> horizontal view
$table-not-responsive-name: 'preset'; // Class name for <table> non-responsive view
$table-striped-name: 'striped'; // Class name for striped <table>
$table-striped-alt-body-back-color: // Alternate background color for <td> in
#eeeeee; // striped <table>
// Notes:
// [1] - The attribute specified in $table-mobile-card-label must be added manually to each and every element in the table
// in order for their mobile headers to display properly.
// Variables for cards [1]
$card-name: 'card'; // Class name for cards
$card-back-color: #fafafa; // Background color for cards
$card-fore-color: $fore-color; // Text color for cards
$card-border-style: 1px solid #9e9e9e; // Border style for cards
$card-border-radius: 0; // Border radius for cards
$card-margin: 2px 10px 20px; // Margin for cards
$card-box-shadow: // Box shadow for cards
0 2px 4px rgba(0,0,0, 0.18), 0 2px 3px rgba(0, 0, 0, 0.26);
$card-section-name: 'section'; // Class name for card sections
$card-section-border-style: 1px solid #bdbdbd; // Border style for card sections
$card-section-padding: 6px 8px 6px; // Padding for card sections
$card-section-media-name: 'media'; // Class name for card media sections
$card-section-media-height: 200px; // Height for card media setions
$card-normal-width: 320px; // Width for normal cards
$card-size1-name: 'large'; // Class name for large cards
$card-size1-width: 480px; // Width for large cards
$card-size2-name: 'small'; // Class name for small cards
$card-size2-width: 240px; // Width for small cards
$card-size3-name: 'fluid'; // Class name for fluid cards
$card-size3-width: 100%; // Width for fluid cards
$card-style1-name: 'inverse'; // Class name for card style 1
$card-style1-back-color: $fore-color; // Background color for card style 1
$card-style1-fore-color: #fafafa; // Text color for card style 1
$card-style1-border-style: 1px solid #424242; // Border style for card style 1
$card-style1-border-radius: 0; // Border radius for card style 1
$card-style1-section-border-style: // Border style for card style 1 sections
1px solid #616161;
$card-section-style1-name: 'dark'; // Class name for card section style 1
$card-section-style1-back-color:#e0e0e0; // Background color for card section style 1
$card-section-style1-fore-color:$fore-color; // Text color for card section style 1
$card-section-style2-name: 'darker'; // Class name for card section style 2
$card-section-style2-back-color:#bdbdbd; // Background color for card section style 2
$card-section-style2-fore-color:$fore-color; // Text color for card section style 2
$card-section-padding1-name: 'double-padded'; // Class name for card section padding style 1
$card-section-padding1-padding: 10px 12px 10px; // Padding for card section padding style 1
// Notes:
// [1] - The cards module depends heavily on the grid system module.
// Variables for tabs
$tab-container-name: 'tabs'; // Class name for the tabs' container
$tab-container-box-shadow: // Box shadow for the tabs' container
0 2px 4px rgba(0,0,0, 0.18), 0 2px 3px rgba(0, 0, 0, 0.26);
$tab-label-back-color: #e0e0e0; // Background color for tabs' labels
$tab-label-fore-color: $fore-color; // Text color for tabs' labels
$tab-label-selected-back-color: #eeeeee; // Background color for open tab's label
$tab-label-selected-fore-color: $fore-color; // Text color for open tab's label
$tab-label-hover-opacity: 0.8; // Opacity of the tab's label on hover
$tab-label-padding: 8px 12px; // Padding for tabs' labels
$tab-label-height: 26px; // Height for tabs' labels
$tab-border-style: 1px solid #9e9e9e; // Border style for tabs
$tab-border-radius: 0; // Border radius for tabs
$tab-panel-back-color: #fafafa; // Background color for tabs' panels
$tab-panel-fore-color: $fore-color; // Text color for tabs' panels
$tab-panel-padding: 8px; // Padding for tabs' panels
$tab-panel-height: 400px; // Height for tabs' panels
$tab-stacked-breakpoint: 767px; // Breakpoint for tabs layout (stacked/horizontal)
$tab-stacked-name: 'stacked'; // Class name for stacked tabs
// Variables for contextual background elements and alerts
$mark-back-color: #0277bd; // Background color for <mark>
$mark-fore-color: #fafafa; // Text color for <mark>
$mark-font-size: 95%; // Font size for <mark>
$mark-line-height: 1; // Line height for <mark>
$mark-border-style: 0; // Border style for <mark>
$mark-border-radius: 2px; // Border radius for <mark>
$mark-padding: 2px 4px; // Padding for <mark>
$mark-margin: 0; // Margin for <mark>
$mark-box-shadow: // Box shadow for <mark>
0 1px 2px rgba(0,0,0, 0.1), 0 1px 1px rgba(0, 0, 0, 0.15);
$mark-inline-block-name: 'inline-block'; // Class name for <mark> inline block styling
$mark-variant1-name: 'secondary'; // Class name for <mark> variant 1
$mark-variant1-back-color: #e53935; // Background color for <mark> variant 1
$mark-variant2-name: 'tertiary'; // Class name for <mark> variant 2
$mark-variant2-back-color: #689f38; // Background color for <mark> variant 2
$mark-style1-name: 'tag'; // Class name for <mark> style 1
$mark-style1-border-style: 0; // Border style for <mark> style 1
$mark-style1-border-radius: 200px; // Border radius for <mark> style 1
$mark-style1-padding: 4px 8px; // Padding for <mark> style 1
$mark-style2-name: 'inline-block'; // Class name for <mark> style 2
$mark-style2-border-style: 0; // Border style for <mark> style 2
$mark-style2-border-radius: 2px; // Border radius for <mark> style 2
$mark-style2-padding: 5px; // Padding for <mark> style 2
$mark-style2-font-size: 100%; // Font size for <mark> style 2
$mark-style2-line-height: 1.35; // Line height for <mark> style 2
$alert-name: 'alert'; // Class name for alerts
$alert-back-color: #eeeeee; // Background color for alerts
$alert-fore-color: $fore-color; // Text color for alerts
$alert-border-style: 1px solid #bdbdbd; // Border style for alerts
$alert-border-radius: 0; // Border radius for alerts
$alert-padding: 12px 16px; // Padding for alerts
$alert-margin: 1px 10px; // Margin for alerts
$alert-box-shadow: // Box shadow for alerts
0 1px 3px rgba(0,0,0, 0.18), 0 1px 2px rgba(0, 0, 0, 0.26);
$alert-include-animated: true; // Should animated alerts be included?
// (`true`/`false`) [1]
$alert-animated-class: 'animated'; // Class name for animated alerts
$alert-variant1-name: 'urgent'; // Class name for alert variant 1
$alert-variant1-back-color: #ffca28; // Background color for alert variant 1
$alert-variant2-name: 'critical'; // Class name for alert variant 2
$alert-variant2-back-color: #b71c1c; // Background color for alert variant 2
$alert-variant2-fore-color: #fafafa; // Text color for alert variant 2
$alert-style1-name: 'urgent'; // Class name for alert style 1
$alert-style1-border-style: 1px solid #ff8f00; // Border style for alert style 1
$alert-style1-border-radius: $alert-border-radius; // Border radius for alert style 1
$alert-style2-name: 'critical'; // Class name for alert style 2
$alert-style2-border-style: 1px solid #d50000; // Border style for alert style 2
$alert-style2-border-radius: $alert-border-radius; // Border radius for alert style 2
// Notes:
// [1] - If the value of $alert-include-animated is `true`, an animation will be created and the value of $alert-animated-class
// will be used to determine the class that will be used for animated alerts.
// Variables for progress elements and spinners
$progress-back-color: #eeeeee; // Background color for <progress>
$progress-fore-color: #01579b; // Progress bar color for <progress>
$progress-height: 14px; // Height of <progress>
$progress-max-value: 1000; // Arithmetic max value of <progress>
$progress-border-style: 0; // Border style for <progress>
$progress-border-radius: 1px; // Border radius for the <progress> container
$progress-top-bottom-margin: 2px; // Top and bottom margin for <progress>
$progress-left-right-margin: 8px; // Left and right margin for <progress>
$progress-box-shadow: // Box shadow for <progress>
0 0.5px 1px rgba(0,0,0, 0.1), 0 0.5px 0.5px rgba(0, 0, 0, 0.15);
$progress-inline-name: 'inline'; // Class name for inline <progress>
$progress-inline-width: 60%; // Width for inline <progress>
$progress-variant1-name: 'secondary'; // Class name for <progress> variant 1
$progress-variant1-fore-color: #e53935; // Progress bar color for <progress> variant 1
$progress-variant2-name: 'tertiary'; // Class name for <progress> variant 2
$progress-variant2-fore-color: #689f38; // Progress bar color for <progress> variant 2
$progress-style1-name: 'nano'; // Class name for <progress> style 1
$progress-style1-height: 2px; // Height for <progress> style 1
$progress-style1-top-bottom-margin: // Top and bottom margin for <progress> style 1
0;
$progress-style1-left-right-margin: // Left and right margin for <progress> style 1
0;
$progress-style1-border-style: 0; // Border style for <progress> style 1
$progress-style1-border-radius: 0; // Border radius for <progress> style 1
$spinner-donut-name: 'spinner-donut'; // Class name for donut spinner
$spinner-donut-border-thickness:4px; // Border thickness for donut spinner
$spinner-donut-back-color: #e3f2fd; // Background color for donut spinner
$spinner-donut-fore-color: #1565c0; // Foreground color for donut spinner
$spinner-donut-size: 20px; // Size for donut spinner
$spinner-donut-variant1-name: 'secondary'; // Class name for donut spinner variant 1
$spinner-donut-variant1-back-color: // Background color for donut spinner variant 1
#ffebee;
$spinner-donut-variant1-fore-color: // Foreground color for donut spinner variant 1
#c62828;
$spinner-donut-variant2-name: 'tertiary'; // Class name for donut spinner variant 2
$spinner-donut-variant2-back-color: // Background color for donut spinner variant 2
#e8f5e9;
$spinner-donut-variant2-fore-color: // Foreground color for donut spinner variant 2
#2e7d32;
$spinner-donut-style1-name: 'large'; // Class name for donut spinner style 1
$spinner-donut-style1-size: 32px; // Size for donut spinner style 1
$spinner-donut-style1-border-thickness: // Border thickness for donut spinner style 1
6px;
// Variables for utilities and helper classes
$hidden-name: 'hidden'; // Class name for hidden elements
$visually-hidden-name: 'visually-hidden'; // Class name for visually hidden elements
$breadcrumbs-name: 'breadcrumbs'; // Class name for breadcrumbs
$breadcrumbs-back-color: #e0e0e0; // Background color for breadcrumbs
$breadcrumbs-margin: 10px 8px; // Margin for breadcrumbs
$breadcrumbs-height: 32px; // Height of the breadcrumbs
$breadcrumbs-separator-width: 2px; // Width of the breadcrumbs' separator
$breadcrumbs-border-style: 0; // Border style for breadcrumbs
$breadcrumbs-border-radius: 4px; // Border radius for breadcrumbs
$breadcrumbs-box-shadow: // Box shadow for breadcrumbs
0 1px 3px rgba(0,0,0,0.1),0 1px 2px rgba(0,0,0,0.15);
$close-icon-name: 'close'; // Class name for close icon
$close-icon-size: 32px; // Size of the close icon
$close-icon-back-color: #e0e0e0; // Background color for the close icon
$close-icon-fore-color: #212121; // Foreground color for the close icon
$border-generic-name: 'bordered'; // Class name for generic border style
$border-radial-style1-name: 'rounded'; // Class name for radial border style 1
$border-radial-style1-radius: 2px; // Border radius for radial border style 1
$border-radial-style2-name: 'circular'; // Class name for radial border style 2
$border-radial-style2-radius: 50%; // Border radius for radial border style 2
$box-shadow-style1-name: 'shadow-none'; // Class name for generic box-shadow style 1
$box-shadow-style1-value: none; // Box shadow value for generic box-shadow style 1
$box-shadow-style2-name: 'shadow-small'; // Class name for generic box-shadow style 2
$box-shadow-style2-value: // Box shadow value for generic box-shadow style 2
0 1px 2px rgba(0,0,0, 0.1), 0 1px 1px rgba(0, 0, 0, 0.15);
$box-shadow-style3-name: 'shadow-medium'; // Class name for generic box-shadow style 3
$box-shadow-style3-value: // Box shadow value for generic box-shadow style 3
0 1px 3px rgba(0,0,0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.15);
$box-shadow-style4-name: 'shadow-large'; // Class name for generic box-shadow style 4
$box-shadow-style4-value: // Box shadow value for generic box-shadow style 4
0 2px 4px rgba(0,0,0, 0.1), 0 2px 3px rgba(0, 0, 0, 0.15);
$responsive-margin-name: 'responsive-margin'; // Class name for responsive margin
$responsive-margin-medium-breakpoint: // Medium screen breakpoint for responsive margin
$grid-medium-breakpoint;
$responsive-margin-large-breakpoint: // Large screen breakpoint for responsive margin
$grid-large-breakpoint;
$responsive-margin-small-value: 4px; // Margin value for responsive margin on small screens
$responsive-margin-medium-value:6px; // Margin value for responsive margin on medium screens
$responsive-margin-large-value: 8px; // Margin value for responsive margin on large screens
$responsive-padding-name: 'responsive-padding'; // Class name for responsive padding
$responsive-padding-medium-breakpoint: // Medium screen breakpoint for responsive padding
$grid-medium-breakpoint;
$responsive-padding-large-breakpoint: // Large screen breakpoint for responsive padding
$grid-large-breakpoint;
$responsive-padding-small-value:2px 4px; // Padding value for responsive padding on small screens
$responsive-padding-medium-value: // Padding value for responsive padding on medium screens
4px 6px;
$responsive-padding-large-value:6px 8px; // Padding value for responsive padding on large screens
$float-prefix: 'float'; // Prefix for float classes
$clearfix-name: 'clearfix'; // Class name for clearfix
$center-block-name: 'center-block'; // Class name for center block
// Load modules. If you do not want to use a module, comment out its `@import` statement, along with any mixin `@include`s that are part of
// that module and marked as such below it.
@import '../mini/core';
@import '../mini/grid';
@import '../mini/navigation';
@import '../mini/input_control';
/*
Custom elements for forms and input elements.
*/
@include make-button-alt-color ($button-variant1-name, $button-variant1-back-color,
$button-variant1-back-opacity, $button-variant1-hover-back-opacity, $button-variant1-fore-color);
@include make-button-alt-color ($button-variant2-name, $button-variant2-back-color,
$button-variant2-back-opacity, $button-variant2-hover-back-opacity, $button-variant2-fore-color);
@include make-button-alt-color ($button-variant3-name, $button-variant3-back-color,
$button-variant3-back-opacity, $button-variant3-hover-back-opacity, $button-variant3-fore-color);
@include make-button-alt-color ($button-variant4-name, $button-variant4-back-color,
$button-variant4-back-opacity, $button-variant4-hover-back-opacity, $button-variant4-fore-color);
@include make-button-alt-style ($button-style1-name, $button-style1-border-style,
$button-style1-border-radius, $button-style1-padding, $button-style1-margin);
@include make-button-alt-style ($button-style2-name, $button-style2-border-style,
$button-style2-border-radius, $button-style2-padding, $button-style2-margin);
@import '../mini/table';
@import '../mini/card';
/*
Custom elements for cards and containers.
*/
@include make-card-alt-size ($card-size1-name, $card-size1-width);
@include make-card-alt-size ($card-size2-name, $card-size2-width);
@include make-card-alt-size ($card-size3-name, $card-size3-width);
@include make-card-alt-color ($card-style1-name, $card-style1-back-color, $card-style1-fore-color,
$card-style1-border-style, $card-style1-border-radius, $card-style1-section-border-style);
@include make-card-section-alt-color ($card-section-style1-name, $card-section-style1-back-color,
$card-section-style1-fore-color);
@include make-card-section-alt-color ($card-section-style2-name, $card-section-style2-back-color,
$card-section-style2-fore-color);
@include make-card-section-alt-style ($card-section-padding1-name, $card-section-padding1-padding);
@import '../mini/tab';
@import '../mini/contextual';
/*
Custom contextual background elements and alerts.
*/
@include make-mark-alt-color ($mark-variant1-name, $mark-variant1-back-color);
@include make-mark-alt-color ($mark-variant2-name, $mark-variant2-back-color);
@include make-mark-alt-style ($mark-style1-name, $mark-style1-border-style,
$mark-style1-border-radius, $mark-style1-padding);
@include make-mark-alt-style ($mark-style2-name, $mark-style2-border-style,
$mark-style2-border-radius, $mark-style2-padding, $mark-style2-font-size, $mark-style2-line-height);
@include make-alert-alt-color ($alert-variant1-name, $alert-variant1-back-color);
@include make-alert-alt-color ($alert-variant2-name, $alert-variant2-back-color, $alert-variant2-fore-color);
@include make-alert-alt-style ($alert-style1-name, $alert-style1-border-style, $alert-style1-border-radius);
@include make-alert-alt-style ($alert-style2-name, $alert-style2-border-style, $alert-style2-border-radius);
@import '../mini/progress';
/*
Custom elements for progress elements and spinners.
*/
@include make-progress-inline ($progress-inline-name, $progress-inline-width);
@include make-progress-alt-color ($progress-variant1-name, $progress-variant1-fore-color);
@include make-progress-alt-color ($progress-variant2-name, $progress-variant2-fore-color);
@include make-progress-alt-style ($progress-style1-name, $progress-style1-height,
$progress-style1-top-bottom-margin, $progress-style1-left-right-margin,
$progress-style1-border-style, $progress-style1-border-radius);
@include make-spinner-donut-alt-color ($spinner-donut-variant1-name, $spinner-donut-variant1-back-color,
$spinner-donut-variant1-fore-color);
@include make-spinner-donut-alt-color ($spinner-donut-variant2-name, $spinner-donut-variant2-back-color,
$spinner-donut-variant2-fore-color);
@include make-spinner-donut-alt-style ($spinner-donut-style1-name, $spinner-donut-style1-size,
$spinner-donut-style1-border-thickness);
@import '../mini/utility';
/*
Custom elements for utilities and helper classes.
*/
@include make-border-generic ($border-generic-name);
@include make-border-radial-style ($border-radial-style1-name, $border-radial-style1-radius);
@include make-border-radial-style ($border-radial-style2-name, $border-radial-style2-radius);
@include make-margin-responsive ($responsive-margin-name, $responsive-margin-medium-breakpoint,
$responsive-margin-large-breakpoint, $responsive-margin-small-value, $responsive-margin-medium-value,
$responsive-margin-large-value);
@include make-padding-responsive ($responsive-padding-name, $responsive-padding-medium-breakpoint,
$responsive-padding-large-breakpoint, $responsive-padding-small-value, $responsive-padding-medium-value,
$responsive-padding-large-value);
@include make-box-shadow-generic ($box-shadow-style1-name, $box-shadow-style1-value);
@include make-box-shadow-generic ($box-shadow-style2-name, $box-shadow-style2-value);
@include make-box-shadow-generic ($box-shadow-style3-name, $box-shadow-style3-value);
@include make-box-shadow-generic ($box-shadow-style4-name, $box-shadow-style4-value);
@include make-floats ($float-prefix);

View File

@@ -0,0 +1,614 @@
// This is a flavor file. Duplicate it and edit it to create your own flavor. Read instructions carefully.
// Single-line comments, starting with '//' will not be included in your final CSS file. Multiline comments,
// structured like the flavor description below, will be included in your final CSS file.
/*
Flavor name: Sucroa (mini-sucroa)
Author: Angeliki Daskalakis
mini.css version: v2.0.2 (Fermion)
*/
// Google Fonts imports and usage
@import url('https://fonts.googleapis.com/css?family=Cousine:400,400i,700|Libre+Baskerville:400,400i,700&subset=latin-ext');
// font-family: 'Libre Baskerville', serif;
// font-family: 'Cousine', monospace;
// Basic rules for body and typography
$fore-color: #211423; // Text and general foreground color
$back-color: #fffcc9; // Body background color
$base-font-family: 'Libre Baskerville', serif; // Default font stack for all elements:
$base-root-font-size: 16px; // Root font sizing for all elements [1]
$base-font-size: 1em; // Default font sizing for all elements [2]
$base-line-height: 1.7; // Default line height for all elements.
$body-margin: 0; // Margin for the body
$apply-defaults-to-all: true; // Should default values be applied to all
// elements? (`true` or `false`) [3]
$h1-font-size: 2.2em; // Font size of h1
$h2-font-size: 1.7em; // Font size for h2
$h3-font-size: 1.4em; // Font size for h3
$h4-font-size: 1.2em; // Font size for h4
$h5-font-size: 1em; // Font size for h5
$h6-font-size: 0.9em; // Font size for h6
$heading-line-height: 1.2em; // Line height for all headings
$heading-margin: 12px 10px; // Margin for all headings
$heading-font-weight: 500; // Font weight for all headings
$heading-smalltext-fore-color: #424242; // <small> color in headings
$make-heading-smalltext-block: true; // Should <small> elements in headings
// be displayed as blocks (`true`/`false`) [4]
$heading-smalltext-b-font-size: 75%; // Font size of block <small> elements in headings
$heading-smalltext-b-top-margin:-2px; // Top margin of block <small> elements in headings
$paragraph-margin: 4px 10px; // Margin for <p> elements
$list-margin: 4px 10px 10px; // Margin for <ol> and <ul> elements
$list-left-padding: 32px; // Left padding for <ol> and <ul> elements
$bold-font-weight: 700; // Font weight for <b> and <strong>
$horizontal-rule-line-height: 1.3em; // <hr> line height
$horizontal-rule-margin: 10px; // <hr> margin
$horizontal-rule-border-style: 1px solid #757575; // Border style for horizontal rules (used
// in the <hr> element's border-top)
$horizontal-rule-fancy-style: true; // Should a fancy styling be applied for the
// <hr> element (`true`/`false`) [5]
$horizontal-rule-fancy-gradient:"to right, #5d545f, #1e1320, #5d545f"; // Gradient style for fancy horizontal rule
$blockquote-back-color: #eae1ff; // Background color for <blockquote>
$blockquote-fore-color: $fore-color; // Text color for <blockquote>
$blockquote-margin: 10px; // Margin for <blockquote>
$blockquote-padding: 8px 12px 28px; // Padding for <blockquote>
$blockquote-sidebar-style: 3px solid #331e36; // Style for the sidebar of <blockquote>
$blockquote-cite-font-size: 0.85em; // Font size for citation of <blockquote>
$blockquote-cite-fore-color: #5d545f; // Text color for citation of <blockquote>
$blockquote-cite-left-position: 10px; // Left padding for citation of <blockquote>
$blockquote-cite-bottom-position: // Bottom padding for citation of <blockquote>
4px;
$blockquote-border-style: 0; // Border style for <blockquote>
$blockquote-border-radius: 2px; // Border radius for <blockquote>
$blockquote-box-shadow: // Box shadow for <blockquote>
0 1px 3px rgba(0,0,0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.15);
$use-default-code-fonts: false; // Should default font choice (monospace) be
// used for code elements? (`true`/`false`) [6]
$code-font-family: 'Cousine', monospace, monospace; // Fonts for code elements if not default
$code-element-padding: 3px 4px; // Padding for <code>
$code-element-fore-color: $fore-color; // Text color for <code>
$code-element-back-color: #e8deff; // Background color for <code>
$code-element-border-style: 0; // Border style for <code>
$code-element-border-radius: 2px; // Border radius for <code>
$code-element-box-shadow: // Box shadow for <code>
0 1px 2px rgba(0,0,0, 0.1), 0 1px 1px rgba(0, 0, 0, 0.15);
$pre-element-padding: 8px 12px 8px; // Padding for <pre>
$pre-element-fore-color: $code-element-fore-color; // Text color for <pre>
$pre-element-back-color: $code-element-back-color; // Background color for <pre>
$pre-element-border-style: 0; // Border style for <pre>
$pre-element-border-radius: 2px; // Border radius for <pre>
$pre-element-margin: 10px; // Margin for <pre>
$pre-element-box-shadow: // Box shadow for <pre>
0 1px 3px rgba(0,0,0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.15);
$add-pre-element-sidebar: true; // Should a fancy sidebar be added to the
// left side of <pre> (`true`/`false`) [7]
$pre-element-sidebar-style: 3px solid #6979c6; // Style of the sidebar of <pre>
$kbd-element-padding: 3px 4px; // Padding for <kbd>
$kbd-element-fore-color: #fffddc; // Text color for <kbd>
$kbd-element-back-color: #331e36; // Background color for <kbd>
$kbd-element-border-style: 0; // Border style for <kbd>
$kbd-element-border-radius: 2px; // Border radius for <kbd>
$kbd-element-box-shadow: // Box shadow for <kbd>
0 1px 2px rgba(0,0,0, 0.1), 0 1px 1px rgba(0, 0, 0, 0.15);
$style-samp-element: false; // Should styles for <samp> be included?
// (`true`/`false`) [8]
//$samp-element-padding: 2px 4px; // Padding for <samp>
//$samp-element-fore-color: $fore-color; // Text color for <samp>
//$samp-element-back-color: #2196f3; // Background color for <samp>
//$samp-element-border-style: 0; // Border style for <samp>
//$samp-element-border-radius: 2px; // Border radius for <samp>
$include-dfn-fix: true; // Should the fix for Android 4.3 concerning <dfn>
// be included (`true`/`false`) [9]
$small-font-size: 80%; // Font size for <small> elements
$sup-font-size: 80%; // Font size for <sup> elements
$sub-font-size: 80%; // Font size for <sub> elements
$sup-top: -6px; // <sup> top
$sub-bottom: -6px; // <sub> bottom
$link-fore-color: #5664a3; // Text color for <a>
$link-visited-fore-color: #434e7f; // Text color for visited <a>
$link-font-weight: 500; // Font weight for <a>
$apply-link-underline: true; // Should an underline be applied to all <a>
// elements? (`true`/`false`) [10]
$apply-link-hover-fade: true; // Should the :hover and :focus state of <a>
// elements use fade-out instead of a different
// color (`true`/`false`) [11]
//$link-hover-fore-color: #0288d1; // Text color for <a> when hovered or focused
// Notes:
// [1] - The value $base-root-font-size should be in `px` only! This rule is very important, as it will determine the root
// element's font sizing.
// [2] - The value of $base-font-size will only be used if the value of $apply-defaults-to-all is set to `true` (see [3]).
// This is due to the fact that applying the value of it on the root element again will overwrite the value of
// $base-root-font-size (see [1]). The value of this variable should be set in either `em` or `rem`.
// [3] - It is recommended to set the value of $apply-defaults-to-all to `true`, unless you want to apply extra styling
// to elements manually.
// [4] - If the value of $make-heading-smalltext-block is `true` the <small> elements in headings will be displayed below
// the main heading and the 2 values specified below will apply.
// [5] - If $horizontal-rule-fancy-style is set to `true` the value of $horizontal-rule-border-style will not be used and
// a gradient with the style specified in $horizontal-rule-fancy-gradient will be applied instead.
// [6] - If the value of $use-default-code-fonts is set to `false` the value of $code-font-family will be used. `true`
// will apply the proper fix to use monospace font without any problems on all browsers.
// [7] - if the value of $add-pre-element-sidebar is set to true, the style specified in $pre-element-sidebar-style will
// be applied as a left border for the <pre> elements.
// [8] - If the value of $style-samp-element is set to `false`, no styling will be included in the final CSS file for
// `samp` elements. Otherwise, the styling defined in the $samp-... variables will be applied.
// [9] - If the value of $include-dfn-fix is set to `true` a styling fix will be applied, so that the <dfn> elements are
// displayed properly on older versions of Android (4.3-) in italics. Otherwise, said fix will not be included.
// [10] - If the value of $apply-link-underline is set to `true`, an underline will be applied to the link in its normal
// color, as defined in $link-fore-color.
// [11] - If `$apply-link-hover-fade` is set to `true`, a fading transition will be used for the link when hovered over or
// focused. Otherwise, the color specified in $link-hover-fore-color will be used.
// Variables for grid elements
$use-four-step-grid: false; // Should the old 4-step grid system be used
// instead of the new (`true`/`false`) [1]
$grid-container-name: 'container'; // Class name for the grid container
$grid-container-side-padding: 10px; // Padding for the grid container (left and right only)
$grid-row-name: 'row'; // Class name for the grid's rows
$grid-column-prefix: 'col'; // Class name prefix for the grid's columns
$grid-column-offset-suffix: 'offset'; // Class name suffix for the grid's offsets
$grid-order-normal-suffix: 'normal'; // Class name suffix for grid columns with normal priority
$grid-order-first-suffix: 'first'; // Class name suffix for grid columns with highest priority
$grid-order-last-suffix: 'last'; // Class name suffix for grid columns with lowest priorty
$grid-column-count: 12; // Number of columns in the grid (integer value only)
$grid-column-padding: 0 4px; // Padding for the columns of the grid
//$grid-extra-small-prefix: 'xs'; // Extra small screen class prefix for grid
//$grid-small-breakpoint: 480px; // Small screen breakpoint for grid
$grid-small-prefix: 'sm'; // Small screen class prefix for grid
$grid-medium-breakpoint: 768px; // Medium screen breakpoint for grid
$grid-medium-prefix: 'md'; // Medium screen class prefix for grid
$grid-large-breakpoint: 1280px; // Large screen breakpoint for grid
$grid-large-prefix: 'lg'; // Large screen class prefix for grid
// Notes:
// [1] - If the value of $use-four-step-grid is `true`, the grid system will contain 4 breakpoints instead of 3, along with
// the needed styles. In this case, values should be specified for $grid-extra-small-prefix and $grid-small-breakpoint.
// Variables for navigational elements
$header-height: 48px; // Height for <header>
$header-back-color: #211423; // Background color for <header>
$header-fore-color: #fffddc; // Text color for <header>
$header-border-style: 0; // Border style for <header>
$header-margin: 0; // Margin for <header>
$header-padding: 3px 10px; // Padding for <header>
$header-box-shadow: // Box shadow for <header>
0 2px 4px rgba(0,0,0, 0.18), 0 2px 3px rgba(0, 0, 0, 0.26);
$header-logo-name: 'logo'; // Class name for <header>'s logo
$header-logo-font-size: 1.75em; // Font size for <header>'s logo
$header-logo-line-height: 1.5; // Line height for <header>'s logo
$header-logo-margin: 6px 6px 1px 1px; // Margin for <header>'s logo
$header-logo-padding: 6px 0 0; // Padding for <header>'s logo
$header-link-hover-color: #493e4b; // Hover color for <header>'s links
$header-link-margin: 3px 0 0; // Margin for <header>'s links
$nav-back-color: #e8deff; // Background for <nav>
$nav-fore-color: $fore-color; // Text color for <nav>
$nav-border-style: 1px solid #a9a2ba; // Border style for <nav>
$nav-border-radius: 2px; // Border radius for <nav>
$nav-padding: 12px 10px 18px 22px; // Padding for <nav>
$nav-margin: 2px; // Margin for <nav>
$nav-box-shadow: // Box shadow for <nav>
0 2px 4px rgba(0,0,0, 0.1), 0 2px 3px rgba(0, 0, 0, 0.15);
$nav-link-fore-color: #6979c6; // Text color for links in <nav>
$nav-sublink-prefix: 'sublink'; // Prefix for the subcategory links in <nav>
$nav-sublink-depth: 2; // Amount of subcategory classes to add
$nav-sublink-padding-left: 14px; // Left padding to add to subcategories
$footer-back-color: #211423; // Background color for <footer>
$footer-fore-color: #fffddc; // Text color for <footer>
$footer-border-style: 0; // Border stye for <footer>
$footer-font-size: 90%; // Font size for <footer>
$footer-margin: 22px 0 0; // Margin for <footer>
$footer-padding: 24px 10px 14px; // Padding for <footer>
$footer-link-fore-color: #7480b3; // Text color for links in <footer>
// Variables for forms and inputs
$form-back-color: #e8deff; // Background color for forms
$form-fore-color: $fore-color; // Text color for forms
$form-border-style: 1px solid #a9a2ba; // Border style for forms
$form-border-radius: 2px; // Border radius for forms
$form-margin: 10px; // Margin for forms
$form-padding: 14px 10px 20px; // Padding for forms
$form-box-shadow: // Box shadow for forms
0 2px 4px rgba(0,0,0, 0.1), 0 2px 3px rgba(0, 0, 0, 0.15);
$fieldset-back-color: $form-back-color; // Background color for fieldset
$fieldset-border-style: 1px solid #a9a2ba; // Border style for fieldset
$fieldset-border-radius: 2px; // Border radius for fieldset
$fieldset-margin: 2px; // Margin for fieldset
$fieldset-padding: 6px 8px 8px; // Padding for fieldset
$legend-font-weight: $bold-font-weight; // Font weight for legend
$legend-font-size: 0.925em; // Font size for legend
$legend-fore-color: $form-fore-color; // Text color for legend
$legend-padding: 2px 4px; // Padding for legend
$input-group-name: 'input-group'; // Class for input groups
$input-back-color: #f2edff; // Background for input
$input-fore-color: $fore-color; // Text color for input
$input-border-style: 1px solid #a9a2ba; // Border style for input
$input-border-radius: 2px; // Border radius for input
$input-margin: 2px; // Margin for input
$input-padding: 8px 12px; // padding for input
$input-focus-border-color: #6979c6; // Border color for focused input
$input-invalid-border-color: #d2405f; // Border color for invalid input
$input-disabled-opacity: 0.8; // Opacity for disabled input
$input-readonly-back-color: #eae1ff; // Background color for readonly input
$input-readonly-border-color: #a9a2ba; // Border color for readonly input
$input-placeholder-fore-color: #493e4b; // Text color for input placeholder
$button-back-color: #d3cae8; // Back color for button elements
$button-back-opacity: 1; // Background opacity for button elements
$button-hover-back-opacity: 0.75; // Background opacity for button elements
// on hover or focus
$button-fore-color: $fore-color; // Text color for button elements
$button-border-style: 1px solid #a9a2ba; // Border style for button elements
$button-border-radius: 3px; // Border radius for button elements
$button-padding: 8px 12px; // Padding for button elements
$button-margin: 10px; // Margin for button elements
$button-box-shadow: // Box shadow for buttons
0 1px 3px rgba(0,0,0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.15);
$button-disabled-opacity: 0.75; // Disabled button elements opacity
$button-class-name: 'button'; // Class for custom button elements
$button-group-name: 'button-group'; // Class for button groups
$button-group-border-style: 1px solid #a9a2ba; // Border style for button groups
$button-group-margin: $button-margin; // Margin for button groups
$button-group-box-shadow: // Box shadow for button groups
0 2px 4px rgba(0,0,0, 0.1), 0 2px 3px rgba(0, 0, 0, 0.15);
$button-group-mobile-breakpoint:767px; // Breakpoint for button group mobile view
$hide-file-inputs: true; // Should a style be added that makes all
// <input>s of type `file` hidden?
// (`true`/`false`) [1]
$button-variant1-name: 'primary'; // Class name for button variant 1
$button-variant1-back-color: #6979c6; // Background color for button variant 1
$button-variant1-back-opacity: 1; // Background opacity for button variant 1
$button-variant1-hover-back-opacity: // Background opacity for button variant 1
0.75; // on hover or focus
$button-variant1-fore-color: #fffddc; // Text color for button variant 1
$button-variant2-name: 'secondary'; // Class name for button variant 2
$button-variant2-back-color: #d2405f; // Background color for button variant 2
$button-variant2-back-opacity: 1; // Background opacity for button variant 2
$button-variant2-hover-back-opacity: // Background opacity for button variant 2
0.75; // on hover or focus
$button-variant2-fore-color: #fffddc; // Text color for button variant 2
$button-variant3-name: 'tertiary'; // Class name for button variant 3
$button-variant3-back-color: #2b866d; // Background color for button variant 3
$button-variant3-back-opacity: 1; // Background opacity for button variant 3
$button-variant3-hover-back-opacity: // Background opacity for button variant 3
0.75; // on hover or focus
$button-variant3-fore-color: #fffddc; // Text color for button variant 3
$button-variant4-name: 'inverse'; // Class name for button variant 4
$button-variant4-back-color: #331e36; // Background color for button variant 4
$button-variant4-back-opacity: 1; // Background opacity for button variant 4
$button-variant4-hover-back-opacity: // Background opacity for button variant 4
0.75; // on hover or focus
$button-variant4-fore-color: #fffddc; // Text color for button variant 4
$button-style1-name: 'small'; // Class name for button style 1
$button-style1-border-style: 0; // Border style for button style 1
$button-style1-border-radius: 2px; // Border radius for button style 1
$button-style1-padding: 4px 6px; // Padding for button style 1
$button-style1-margin: 6px 8px; // Margin for button style 1
$button-style2-name: 'large'; // Class name for button style 2
$button-style2-border-style: 0; // Border style for button style 2
$button-style2-border-radius: 4px; // Border radius for button style 2
$button-style2-padding: 12px 18px; // Padding for button style 2
$button-style2-margin: 10px 8px; // Margin for button style 2
$checkbox-size: 16px; // Size for checkbox/radio [2]
$checkbox-back-color: $input-back-color; // Background clor for checkbox/radio
$checkbox-fore-color: $input-fore-color; // Text/mark color for checkbox/radio
$checkbox-border-thickness: 1px; // Border thickness for checkbox/radio
$checkbox-border-color: #a9a2ba; // Border color for checkbox/radio
$checkbox-border-radius: $input-border-radius; // Border radius for checkbox/radio
$checkbox-focus-border-color: $input-focus-border-color; // Border color for checkbox/radio on focus
$checkbox-bottom-spacing: 3px; // Bottom spacing for checkbox/radio
$checkbox-disabled-opacity: $input-disabled-opacity; // Opacity for disabled checkbox/radio
// Notes:
// [1] - If the value of $hide-file-inputs is `true`, all <input type="file"> elements will be hidden and the only way
// to access them is via the use of <label> elements that are linked to them. This option is enabled by default to
// allow for universal button styles, even for file input buttons, but can be disabled if the base style is desired.
// If the value is `false`, some fixes will be applied to the <input type="file"> element.
// [2] - The value of $checkbox-size will determine a few variables like some `margin` values, `height`, `width` etc.
// Variables for responsive tables
$table-border-style: 1px solid #a9a2ba; // Border style for <table> and children
$table-border-radius: 2px; // Border radius for <table> and children
$table-margin: 0 auto; // Margin for <table>
$table-box-shadow: // Box shadow for <table>
0 2px 4px rgba(0,0,0, 0.1), 0 2px 3px rgba(0, 0, 0, 0.15);
$table-caption-font-size: 1.5em; // Font size for <caption>
$table-caption-margin: 6px 10px 12px; // Margin for <caption>
$table-row-padding: 10x; // Padding for <tr> - both views
$table-column-padding: 10px; // Padding for <td> and <th> - desktop view
$table-head-back-color: #d3cae8; // Background color for <th>
$table-head-fore-color: $fore-color; // Tex color for <th>
$table-body-back-color: #f2edff; // Background color for <td>
$table-body-fore-color: $fore-color; // Text color for <td>
$table-mobile-breakpoint: 767px; // Breakpoint for <table> mobile view
$table-mobile-card-spacing: 12px; // Space between <tr> cards - mobile view
$table-mobile-card-label: 'data-label'; // Attribute used to replace column headers
// in mobile view [1]
$table-mobile-label-font-weight:$bold-font-weight; // Font weight for mobile headers
$table-horizontal-breakpoint: 768px; // Breakpoint for <table> horizontal view
$table-horizontal-name: 'horizontal'; // Class name for <table> horizontal view
$table-not-responsive-name: 'preset'; // Class name for <table> non-responsive view
$table-striped-name: 'striped'; // Class name for striped <table>
$table-striped-alt-body-back-color: // Alternate background color for <td> in
#ece4ff; // striped <table>
// Notes:
// [1] - The attribute specified in $table-mobile-card-label must be added manually to each and every element in the table
// in order for their mobile headers to display properly.
// Variables for cards [1]
$card-name: 'card'; // Class name for cards
$card-back-color: #f2d7d8; // Background color for cards
$card-fore-color: $fore-color; // Text color for cards
$card-border-style: 1px solid #9b898a; // Border style for cards
$card-border-radius: 2px; // Border radius for cards
$card-margin: 4px 10px 22px; // Margin for cards
$card-box-shadow: // Box shadow for cards
0 2px 4px rgba(0,0,0, 0.18), 0 2px 3px rgba(0, 0, 0, 0.26);
$card-section-name: 'section'; // Class name for card sections
$card-section-border-style: 1px solid #c7b0b1; // Border style for card sections
$card-section-padding: 8px 10px; // Padding for card sections
$card-section-media-name: 'media'; // Class name for card media sections
$card-section-media-height: 200px; // Height for card media setions
$card-normal-width: 320px; // Width for normal cards
$card-size1-name: 'large'; // Class name for large cards
$card-size1-width: 480px; // Width for large cards
$card-size2-name: 'small'; // Class name for small cards
$card-size2-width: 240px; // Width for small cards
$card-size3-name: 'fluid'; // Class name for fluid cards
$card-size3-width: 100%; // Width for fluid cards
$card-style1-name: 'inverse'; // Class name for card style 1
$card-style1-back-color: $fore-color; // Background color for card style 1
$card-style1-fore-color: #fffddc; // Text color for card style 1
$card-style1-border-style: 1px solid #190f1a; // Border style for card style 1
$card-style1-border-radius: 2px; // Border radius for card style 1
$card-style1-section-border-style: // Border style for card style 1 sections
1px solid #493e4b;
$card-section-style1-name: 'light'; // Class name for card section style 1
$card-section-style1-back-color:#f6e5e6; // Background color for card section style 1
$card-section-style1-fore-color:$fore-color; // Text color for card section style 1
$card-section-style2-name: 'lighter'; // Class name for card section style 2
$card-section-style2-back-color:#fbf4f4; // Background color for card section style 2
$card-section-style2-fore-color:$fore-color; // Text color for card section style 2
$card-section-padding1-name: 'double-padded'; // Class name for card section padding style 1
$card-section-padding1-padding: 12px 14px; // Padding for card section padding style 1
// Notes:
// [1] - The cards module depends heavily on the grid system module.
// Variables for tabs
$tab-container-name: 'tabs'; // Class name for the tabs' container
$tab-container-box-shadow: // Box shadow for the tabs' container
0 2px 4px rgba(0,0,0, 0.18), 0 2px 3px rgba(0, 0, 0, 0.26);
$tab-label-back-color: #d3cae8; // Background color for tabs' labels
$tab-label-fore-color: $fore-color; // Text color for tabs' labels
$tab-label-selected-back-color: #e8deff; // Background color for open tab's label
$tab-label-selected-fore-color: $fore-color; // Text color for open tab's label
$tab-label-hover-opacity: 0.8; // Opacity of the tab's label on hover
$tab-label-padding: 10px 12px; // Padding for tabs' labels
$tab-label-height: 28px; // Height for tabs' labels
$tab-border-style: 1px solid #a9a2ba; // Border style for tabs
$tab-border-radius: 2px; // Border radius for tabs
$tab-panel-back-color: #eee7ff; // Background color for tabs' panels
$tab-panel-fore-color: $fore-color; // Text color for tabs' panels
$tab-panel-padding: 10px; // Padding for tabs' panels
$tab-panel-height: 400px; // Height for tabs' panels
$tab-stacked-breakpoint: 767px; // Breakpoint for tabs layout (stacked/horizontal)
$tab-stacked-name: 'stacked'; // Class name for stacked tabs
// Variables for contextual background elements and alerts
$mark-back-color: #6979c6; // Background color for <mark>
$mark-fore-color: #fffddc; // Text color for <mark>
$mark-font-size: 95%; // Font size for <mark>
$mark-line-height: 1; // Line height for <mark>
$mark-border-style: 0; // Border style for <mark>
$mark-border-radius: 2px; // Border radius for <mark>
$mark-padding: 3px 5px; // Padding for <mark>
$mark-margin: 0; // Margin for <mark>
$mark-box-shadow: // Box shadow for <mark>
0 1px 2px rgba(0,0,0, 0.1), 0 1px 1px rgba(0, 0, 0, 0.15);
$mark-inline-block-name: 'inline-block'; // Class name for <mark> inline block styling
$mark-variant1-name: 'secondary'; // Class name for <mark> variant 1
$mark-variant1-back-color: #d2405f; // Background color for <mark> variant 1
$mark-variant2-name: 'tertiary'; // Class name for <mark> variant 2
$mark-variant2-back-color: #2b866d; // Background color for <mark> variant 2
$mark-style1-name: 'tag'; // Class name for <mark> style 1
$mark-style1-border-style: 0; // Border style for <mark> style 1
$mark-style1-border-radius: 200px; // Border radius for <mark> style 1
$mark-style1-padding: 4px 8px; // Padding for <mark> style 1
$mark-style2-name: 'inline-block'; // Class name for <mark> style 2
$mark-style2-border-style: 0; // Border style for <mark> style 2
$mark-style2-border-radius: 2px; // Border radius for <mark> style 2
$mark-style2-padding: 5px; // Padding for <mark> style 2
$mark-style2-font-size: 100%; // Font size for <mark> style 2
$mark-style2-line-height: 1.35; // Line height for <mark> style 2
$alert-name: 'alert'; // Class name for alerts
$alert-back-color: #e8deff; // Background color for alerts
$alert-fore-color: $fore-color; // Text color for alerts
$alert-border-style: 1px solid #a9a2ba; // Border style for alerts
$alert-border-radius: 2px; // Border radius for alerts
$alert-padding: 12px 16px; // Padding for alerts
$alert-margin: 4px 10px; // Margin for alerts
$alert-box-shadow: // Box shadow for alerts
0 1px 3px rgba(0,0,0, 0.18), 0 1px 2px rgba(0, 0, 0, 0.26);
$alert-include-animated: false; // Should animated alerts be included?
// (`true`/`false`) [1]
$alert-animated-class: 'animated'; // Class name for animated alerts
$alert-variant1-name: 'urgent'; // Class name for alert variant 1
$alert-variant1-back-color: #fe9992; // Background color for alert variant 1
$alert-variant2-name: 'critical'; // Class name for alert variant 2
$alert-variant2-back-color: #ac354e; // Background color for alert variant 2
$alert-variant2-fore-color: #fffddc; // Text color for alert variant 2
$alert-style1-name: 'urgent'; // Class name for alert style 1
$alert-style1-border-style: 1px solid #fe6d64; // Border style for alert style 1
$alert-style1-border-radius: $alert-border-radius; // Border radius for alert style 1
$alert-style2-name: 'critical'; // Class name for alert style 2
$alert-style2-border-style: 1px solid #86293d; // Border style for alert style 2
$alert-style2-border-radius: $alert-border-radius; // Border radius for alert style 2
// Notes:
// [1] - If the value of $alert-include-animated is `true`, an animation will be created and the value of $alert-animated-class
// will be used to determine the class that will be used for animated alerts.
// Variables for progress elements and spinners
$progress-back-color: #e8deff; // Background color for <progress>
$progress-fore-color: #6979c6; // Progress bar color for <progress>
$progress-height: 16px; // Height of <progress>
$progress-max-value: 1000; // Arithmetic max value of <progress>
$progress-border-style: 0; // Border style for <progress>
$progress-border-radius: 2px; // Border radius for the <progress> container
$progress-top-bottom-margin: 2px; // Top and bottom margin for <progress>
$progress-left-right-margin: 10px; // Left and right margin for <progress>
$progress-box-shadow: // Box shadow for <progress>
0 0.5px 1px rgba(0,0,0, 0.1), 0 0.5px 0.5px rgba(0, 0, 0, 0.15);
$progress-inline-name: 'inline'; // Class name for inline <progress>
$progress-inline-width: 60%; // Width for inline <progress>
$progress-variant1-name: 'secondary'; // Class name for <progress> variant 1
$progress-variant1-fore-color: #d2405f; // Progress bar color for <progress> variant 1
$progress-variant2-name: 'tertiary'; // Class name for <progress> variant 2
$progress-variant2-fore-color: #2b866d; // Progress bar color for <progress> variant 2
$progress-style1-name: 'nano'; // Class name for <progress> style 1
$progress-style1-height: 2px; // Height for <progress> style 1
$progress-style1-top-bottom-margin: // Top and bottom margin for <progress> style 1
0;
$progress-style1-left-right-margin: // Left and right margin for <progress> style 1
0;
$progress-style1-border-style: 0; // Border style for <progress> style 1
$progress-style1-border-radius: 0; // Border radius for <progress> style 1
$spinner-donut-name: 'spinner-donut'; // Class name for donut spinner
$spinner-donut-border-thickness:4px; // Border thickness for donut spinner
$spinner-donut-back-color: #d6daef; // Background color for donut spinner
$spinner-donut-fore-color: #6979c6; // Foreground color for donut spinner
$spinner-donut-size: 20px; // Size for donut spinner
$spinner-donut-variant1-name: 'secondary'; // Class name for donut spinner variant 1
$spinner-donut-variant1-back-color: // Background color for donut spinner variant 1
#f2cad3;
$spinner-donut-variant1-fore-color: // Foreground color for donut spinner variant 1
#d2405f;
$spinner-donut-variant2-name: 'tertiary'; // Class name for donut spinner variant 2
$spinner-donut-variant2-back-color: // Background color for donut spinner variant 2
#c5ded7;
$spinner-donut-variant2-fore-color: // Foreground color for donut spinner variant 2
#2b866d;
$spinner-donut-style1-name: 'large'; // Class name for donut spinner style 1
$spinner-donut-style1-size: 32px; // Size for donut spinner style 1
$spinner-donut-style1-border-thickness: // Border thickness for donut spinner style 1
6px;
// Variables for utilities and helper classes
$hidden-name: 'hidden'; // Class name for hidden elements
$visually-hidden-name: 'visually-hidden'; // Class name for visually hidden elements
$breadcrumbs-name: 'breadcrumbs'; // Class name for breadcrumbs
$breadcrumbs-back-color: #e8deff; // Background color for breadcrumbs
$breadcrumbs-margin: 12px 10px; // Margin for breadcrumbs
$breadcrumbs-height: 32px; // Height of the breadcrumbs
$breadcrumbs-separator-width: 3px; // Width of the breadcrumbs' separator
$breadcrumbs-border-style: 1px solid #a9a2ba; // Border style for breadcrumbs
$breadcrumbs-border-radius: 4px; // Border radius for breadcrumbs
$breadcrumbs-box-shadow: // Box shadow for breadcrumbs
0 1px 3px rgba(0,0,0,0.1),0 1px 2px rgba(0,0,0,0.15);
$close-icon-name: 'close'; // Class name for close icon
$close-icon-size: 32px; // Size of the close icon
$close-icon-back-color: #e8deff; // Background color for the close icon
$close-icon-fore-color: #211423; // Foreground color for the close icon
$border-generic-name: 'bordered'; // Class name for generic border style
$border-radial-style1-name: 'rounded'; // Class name for radial border style 1
$border-radial-style1-radius: 4px; // Border radius for radial border style 1
$border-radial-style2-name: 'circular'; // Class name for radial border style 2
$border-radial-style2-radius: 50%; // Border radius for radial border style 2
$box-shadow-style1-name: 'shadow-none'; // Class name for generic box-shadow style 1
$box-shadow-style1-value: none; // Box shadow value for generic box-shadow style 1
$box-shadow-style2-name: 'shadow-small'; // Class name for generic box-shadow style 2
$box-shadow-style2-value: // Box shadow value for generic box-shadow style 2
0 1px 2px rgba(0,0,0, 0.1), 0 1px 1px rgba(0, 0, 0, 0.15);
$box-shadow-style3-name: 'shadow-medium'; // Class name for generic box-shadow style 3
$box-shadow-style3-value: // Box shadow value for generic box-shadow style 3
0 1px 3px rgba(0,0,0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.15);
$box-shadow-style4-name: 'shadow-large'; // Class name for generic box-shadow style 4
$box-shadow-style4-value: // Box shadow value for generic box-shadow style 4
0 2px 4px rgba(0,0,0, 0.1), 0 2px 3px rgba(0, 0, 0, 0.15);
$responsive-margin-name: 'responsive-margin'; // Class name for responsive margin
$responsive-margin-medium-breakpoint: // Medium screen breakpoint for responsive margin
$grid-medium-breakpoint;
$responsive-margin-large-breakpoint: // Large screen breakpoint for responsive margin
$grid-large-breakpoint;
$responsive-margin-small-value: 3px; // Margin value for responsive margin on small screens
$responsive-margin-medium-value:6px; // Margin value for responsive margin on medium screens
$responsive-margin-large-value: 10px; // Margin value for responsive margin on large screens
$responsive-padding-name: 'responsive-padding'; // Class name for responsive padding
$responsive-padding-medium-breakpoint: // Medium screen breakpoint for responsive padding
$grid-medium-breakpoint;
$responsive-padding-large-breakpoint: // Large screen breakpoint for responsive padding
$grid-large-breakpoint;
$responsive-padding-small-value:2px 3px; // Padding value for responsive padding on small screens
$responsive-padding-medium-value: // Padding value for responsive padding on medium screens
4px 6px;
$responsive-padding-large-value:8px 10px; // Padding value for responsive padding on large screens
$float-prefix: 'float'; // Prefix for float classes
$clearfix-name: 'clearfix'; // Class name for clearfix
$center-block-name: 'center-block'; // Class name for center block
// Load modules. If you do not want to use a module, comment out its `@import` statement, along with any mixin `@include`s that are part of
// that module and marked as such below it.
@import '../mini/core';
@import '../mini/grid';
@import '../mini/navigation';
@import '../mini/input_control';
/*
Custom elements for forms and input elements.
*/
@include make-button-alt-color ($button-variant1-name, $button-variant1-back-color,
$button-variant1-back-opacity, $button-variant1-hover-back-opacity, $button-variant1-fore-color);
@include make-button-alt-color ($button-variant2-name, $button-variant2-back-color,
$button-variant2-back-opacity, $button-variant2-hover-back-opacity, $button-variant2-fore-color);
@include make-button-alt-color ($button-variant3-name, $button-variant3-back-color,
$button-variant3-back-opacity, $button-variant3-hover-back-opacity, $button-variant3-fore-color);
@include make-button-alt-color ($button-variant4-name, $button-variant4-back-color,
$button-variant4-back-opacity, $button-variant4-hover-back-opacity, $button-variant4-fore-color);
@include make-button-alt-style ($button-style1-name, $button-style1-border-style,
$button-style1-border-radius, $button-style1-padding, $button-style1-margin);
@include make-button-alt-style ($button-style2-name, $button-style2-border-style,
$button-style2-border-radius, $button-style2-padding, $button-style2-margin);
@import '../mini/table';
@import '../mini/card';
/*
Custom elements for cards and containers.
*/
@include make-card-alt-size ($card-size1-name, $card-size1-width);
@include make-card-alt-size ($card-size2-name, $card-size2-width);
@include make-card-alt-size ($card-size3-name, $card-size3-width);
@include make-card-alt-color ($card-style1-name, $card-style1-back-color, $card-style1-fore-color,
$card-style1-border-style, $card-style1-border-radius, $card-style1-section-border-style);
@include make-card-section-alt-color ($card-section-style1-name, $card-section-style1-back-color,
$card-section-style1-fore-color);
@include make-card-section-alt-color ($card-section-style2-name, $card-section-style2-back-color,
$card-section-style2-fore-color);
@include make-card-section-alt-style ($card-section-padding1-name, $card-section-padding1-padding);
@import '../mini/tab';
@import '../mini/contextual';
/*
Custom contextual background elements and alerts.
*/
@include make-mark-alt-color ($mark-variant1-name, $mark-variant1-back-color);
@include make-mark-alt-color ($mark-variant2-name, $mark-variant2-back-color);
@include make-mark-alt-style ($mark-style1-name, $mark-style1-border-style,
$mark-style1-border-radius, $mark-style1-padding);
@include make-mark-alt-style ($mark-style2-name, $mark-style2-border-style,
$mark-style2-border-radius, $mark-style2-padding, $mark-style2-font-size, $mark-style2-line-height);
@include make-alert-alt-color ($alert-variant1-name, $alert-variant1-back-color);
@include make-alert-alt-color ($alert-variant2-name, $alert-variant2-back-color, $alert-variant2-fore-color);
@include make-alert-alt-style ($alert-style1-name, $alert-style1-border-style, $alert-style1-border-radius);
@include make-alert-alt-style ($alert-style2-name, $alert-style2-border-style, $alert-style2-border-radius);
@import '../mini/progress';
/*
Custom elements for progress elements and spinners.
*/
@include make-progress-inline ($progress-inline-name, $progress-inline-width);
@include make-progress-alt-color ($progress-variant1-name, $progress-variant1-fore-color);
@include make-progress-alt-color ($progress-variant2-name, $progress-variant2-fore-color);
@include make-progress-alt-style ($progress-style1-name, $progress-style1-height,
$progress-style1-top-bottom-margin, $progress-style1-left-right-margin,
$progress-style1-border-style, $progress-style1-border-radius);
@include make-spinner-donut-alt-color ($spinner-donut-variant1-name, $spinner-donut-variant1-back-color,
$spinner-donut-variant1-fore-color);
@include make-spinner-donut-alt-color ($spinner-donut-variant2-name, $spinner-donut-variant2-back-color,
$spinner-donut-variant2-fore-color);
@include make-spinner-donut-alt-style ($spinner-donut-style1-name, $spinner-donut-style1-size,
$spinner-donut-style1-border-thickness);
@import '../mini/utility';
/*
Custom elements for utilities and helper classes.
*/
@include make-border-generic ($border-generic-name);
@include make-border-radial-style ($border-radial-style1-name, $border-radial-style1-radius);
@include make-border-radial-style ($border-radial-style2-name, $border-radial-style2-radius);
@include make-margin-responsive ($responsive-margin-name, $responsive-margin-medium-breakpoint,
$responsive-margin-large-breakpoint, $responsive-margin-small-value, $responsive-margin-medium-value,
$responsive-margin-large-value);
@include make-padding-responsive ($responsive-padding-name, $responsive-padding-medium-breakpoint,
$responsive-padding-large-breakpoint, $responsive-padding-small-value, $responsive-padding-medium-value,
$responsive-padding-large-value);
@include make-box-shadow-generic ($box-shadow-style1-name, $box-shadow-style1-value);
@include make-box-shadow-generic ($box-shadow-style2-name, $box-shadow-style2-value);
@include make-box-shadow-generic ($box-shadow-style3-name, $box-shadow-style3-value);
@include make-box-shadow-generic ($box-shadow-style4-name, $box-shadow-style4-value);
@include make-floats ($float-prefix);

164
src/mini/_card.scss Normal file
View File

@@ -0,0 +1,164 @@
/*
Definitions for cards and containers.
*/
// Dependency: This module depends heavily on the grid system module.
// Card styling
$card-name: 'card' !default; // Class name for the cards
$card-section-name: 'section' !default; // Class name for the cards' sections
$card-section-media-name: 'media' !default; // Class name for the cards' sections (media cotent)
$card-normal-width: 320px !default; // Width for normal cards
.#{$card-name} {
// Old syntax
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-pack: justify;
-webkit-box-align: center;
// New syntax
display: -webkit-flex;
display: flex;
-webkit-flex-direction: column;
flex-direction: column;
-webkit-justify-content: space-between;
justify-content: space-between;
-webkit-align-self: center;
align-self: center;
position: relative;
width: 100%;
// Actual styling for the cards
@if $card-back-color != $back-color {
background: $card-back-color;
}
@if $card-fore-color != $fore-color {
color: $card-fore-color;
}
@if $card-border-style != 0 {
border: $card-border-style;
}
@if $card-border-radius != 0 {
border-radius: $card-border-radius;
}
@if $card-margin != 0 {
margin: $card-margin;
}
// Tasteful shadow
@if $card-box-shadow != none {
box-shadow: $card-box-shadow;
}
// Card sections
& > .#{$card-section-name} {
box-sizing: border-box;
margin: 0;
border-bottom: $card-section-border-style;
padding: $card-section-padding;
width: 100%;
// Card media sections
&.#{$card-section-media-name} {
height: $card-section-media-height;
padding: 0;
-o-object-fit: cover;
object-fit: cover;
}
}
// Card input and button sections
& > button, .#{$button-class-name}, input {
&.#{$card-section-name} {
border-radius: 0; // Clean button and input gaps from border-radius
}
}
// Card sections - last
& > .#{$card-section-name}:last-child {
border-bottom: 0; // Clean the extra border for last section
}
}
// Responsiveness (if the screen is larger than card, set max-width)
@media (min-width: #{$card-normal-width}) {
.#{$card-name} {
max-width: $card-normal-width;
}
}
// Mixin for alternate card sizes.
// Variables:
// - $card-alt-size-name : The name of the class used for the alternate size card.
// - $card-alt-size-width : The width of the alternate size card.
@mixin make-card-alt-size ($card-alt-size-name, $card-alt-size-width) {
@if type-of($card-alt-size-width) == 'number' and unit($card-alt-size-width) == '%' {
.#{$card-name}.#{$card-alt-size-name} {
max-width: $card-alt-size-width;
width: auto;
}
}
@else {
@media (min-width: #{$card-alt-size-width}) {
.#{$card-name}.#{$card-alt-size-name} {
max-width: $card-alt-size-width;
}
}
}
}
// Mixin for alternate cards (card color variants).
// Variables:
// - $card-alt-name : The name of the class used for the alternate card.
// - $card-alt-back-color : The background color of the alternate card.
// - $card-alt-fore-color : The text color of the alternate card.
// - $card-alt-border-style : (Optional) The border style of the alternate card. Defaults to the value
// of $card-border-style.
// - $card-alt-border-radius : (Optional) The border radius of the alternate card. Defaults to the value
// of $card-border-radius.
// - $card-alt-section-border-style : (Optional) The border style of the alternate card's sections. Defaults to
// the value of $card-section-border-style.
@mixin make-card-alt-color ($card-alt-name, $card-alt-back-color, $card-alt-fore-color,
$card-alt-border-style : $card-border-style, $card-alt-border-radius : $card-border-radius,
$card-alt-section-border-style : $card-section-border-style) {
.#{$card-name}.#{$card-alt-name} {
@if $card-alt-back-color != $card-back-color {
background: $card-alt-back-color;
}
@if $card-alt-fore-color != $card-fore-color {
color: $card-alt-fore-color;
}
@if $card-alt-border-style != $card-border-style {
border: $card-alt-border-style;
}
@if $card-alt-border-radius != $card-border-radius {
border-radius: $card-alt-border-radius;
}
@if $card-alt-section-border-style != $card-section-border-style{
& > .#{$card-section-name} {
border-bottom: $card-alt-section-border-style;
}
& > .#{$card-section-name}:last-child {
border-bottom: 0; // Clean the extra border for last section
}
}
}
}
// Mixin for alternate card sections (card section color variants).
// Variables:
// - $card-section-alt-name : The name of the class used for the alternate card section.
// - $card-section-alt-back-color : The background color of the alternate card section.
// - $card-section-alt-fore-color : The text color of the alternate card section.
// - $card-section-alt-border-style : (Optional) The border style of the alternate card section. Defaults to
// the value of $card-section-border-style.
@mixin make-card-section-alt-color ($card-section-alt-name, $card-section-alt-back-color,
$card-section-alt-fore-color, $card-section-alt-border-style : $card-section-border-style) {
.#{$card-name} > .#{$card-section-name}.#{$card-section-alt-name} {
@if $card-section-alt-back-color != $card-back-color {
background: $card-section-alt-back-color;
}
@if $card-section-alt-fore-color != $card-fore-color {
color: $card-section-alt-fore-color;
}
@if $card-section-alt-border-style != $card-section-border-style {
border: $card-section-alt-border-style;
}
}
}
// Mixin for alternate card sections (card section padding variants).
// Variables:
// - $card-section-alt-name : The name of the class used for the alternate card section.
// - $card-section-alt-padding : The padding of the alternate card section.
@mixin make-card-section-alt-style ($card-section-alt-name, $card-section-alt-padding) {
.#{$card-name} > .#{$card-section-name}.#{$card-section-alt-name} {
padding: $card-section-alt-padding;
}
}

188
src/mini/_contextual.scss Normal file
View File

@@ -0,0 +1,188 @@
/*
Definitions for contextual background elements and alerts.
*/
// Contextual background elements use the mark element as their base.
// Default styling for mark. Use mixins for alternate styles.
$mark-inline-block-name: 'inline-block' !default; // Class name for <mark> inline block styling
mark {
@if $mark-back-color != $back-color {
background: $mark-back-color;
}
@if $mark-fore-color != $fore-color {
color: $mark-fore-color;
}
@if $mark-font-size != 100% {
font-size: $mark-font-size;
}
@if $mark-line-height != $base-line-height {
line-height: $mark-line-height;
}
@if $mark-border-style != 0 {
border: $mark-border-style;
}
@if $mark-border-radius != 0 {
border-radius: $mark-border-radius;
}
@if $mark-padding != 0 {
padding: $mark-padding;
}
@if $mark-margin != 0 {
margin: $mark-margin;
}
@if $mark-box-shadow != none {
box-shadow: $mark-box-shadow;
}
&.#{$mark-inline-block-name}{
display: inline-block; // Can be used to deal with some problems.
}
}
// Mixin for alternate mark (contextual color variants).
// Variables:
// - $mark-alt-name : The name of the class used for the alternate mark.
// - $mark-alt-back-color : The background color of the alternate mark.
// - $mark-alt-fore-color : (Optional) The text color of the alternate mark. Defaults to the text color of the mark.
@mixin make-mark-alt-color ($mark-alt-name, $mark-alt-back-color, $mark-alt-fore-color: $mark-fore-color) {
mark.#{$mark-alt-name} {
@if $mark-alt-back-color != $mark-back-color {
background: $mark-alt-back-color;
}
@if $mark-alt-fore-color != $mark-fore-color {
color: $mark-alt-fore-color;
}
}
}
// Mixin for alternative mark styles (contextual tags).
// Variables:
// - $mark-alt-name : The name of the class used for the alternate mark style.
// - $mark-alt-border-style : The border-style of the alternate mark style.
// - $mark-alt-border-radius : The border-radius of the alternate mark style.
// - $mark-alt-padding : (Optional) The padding of the alternate mark style. Defaults to the padding of the mark.
// - $mark-alt-font-size : (Optional) The font-size of the alternate mark style. Defaults to the font-size of the mark.
// - $mark-alt-line-height : (Optional) The line height of the alternate mark style. Defaults to the line height of the mark.
// - $mark-alt-box-shadow : (Optional) The box shadow of the alternate mark style. Defaults to the box shadow of the mark.
@mixin make-mark-alt-style ($mark-alt-name, $mark-alt-border-style, $mark-alt-border-radius,
$mark-alt-padding : $mark-padding, $mark-alt-font-size : $mark-font-size, $mark-alt-line-height : $mark-line-height,
$mark-alt-box-shadow : $mark-box-shadow ) {
mark.#{$mark-alt-name} {
@if $mark-alt-font-size != $mark-font-size {
font-size: $mark-alt-font-size;
}
@if $mark-alt-line-height != $mark-line-height {
line-height: $mark-alt-line-height;
}
@if $mark-alt-border-style != $mark-border-style {
border: $mark-alt-border-style;
}
@if $mark-alt-border-radius != $mark-border-radius {
border-radius: $mark-alt-border-radius;
}
@if $mark-alt-padding != $mark-padding {
padding: $mark-alt-padding;
}
@if $mark-alt-box-shadow != $mark-box-shadow {
box-shadow: $mark-alt-box-shadow;
}
}
}
// Alert variables
$alert-name: 'alert' !default; // Class name for the alerts
$alert-include-animated: true !default; // Should animated alerts be included?
$alert-animated-name: 'animated' !default; // Class name for animated alerts
// Animation definition for animated alerts (included if wanted)
@if $alert-include-animated {
@-webkit-keyframes alert-anim {
0% { -webkit-transform: scale(1); }
45% { -webkit-transform: scale(1); }
50% { -webkit-transform: scale(1.005);}
55% { -webkit-transform: scale(1); }
100% { -webkit-transform: scale(1); }
}
@keyframes alert-anim {
0% { transform: scale(1); }
45% { transform: scale(1); }
50% { transform: scale(1.005);}
55% { transform: scale(1); }
100% { transform: scale(1); }
}
}
// Default styling for alerts. Use mixins for alternate styles
.#{$alert-name} {
display: block;
@if $alert-back-color != $back-color {
background: $alert-back-color;
}
@if $alert-fore-color != $fore-color {
color: $alert-fore-color;
}
@if $alert-border-style != 0 {
border: $alert-border-style;
}
@if $alert-border-radius != 0 {
border-radius: $alert-border-radius;
}
@if $alert-margin != 0 {
margin: $alert-margin;
}
@if $alert-padding != 0 {
padding: $alert-padding;
}
@if $alert-box-shadow != none {
box-shadow: $alert-box-shadow;
}
@if $alert-include-animated {
&.#{$alert-animated-name} {
// Try to make the animated alert not blurry
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
-webkit-transform: translateZ(0);
transform: translateZ(0);
// Apply the animation
-webkit-animation: alert-anim 6s linear infinite;
animation: alert-anim 6s linear infinite;
}
}
}
// Mixin for alternate alert (alert color variants).
// Variables:
// - $alert-alt-name : The name of the class used for the alternate alert.
// - $alert-alt-back-color : The background color of the alternate alert.
// - $alert-alt-fore-color : (Optional) The text color of the alternate mark. Defaults to the text color of the alert.
@mixin make-alert-alt-color ($alert-alt-name, $alert-alt-back-color, $alert-alt-fore-color: $alert-fore-color) {
.#{$alert-name}.#{$alert-alt-name} {
@if $alert-alt-back-color != $alert-back-color {
background: $alert-alt-back-color;
}
@if $alert-alt-fore-color != $alert-fore-color {
color: $alert-alt-fore-color;
}
}
}
// Mixin for alternate alert styles (alert style variants).
// Variables:
// - $alert-alt-name : The name of the class used for the alternate alert style.
// - $alert-alt-border-style : The border style of the alternate alert style.
// - $alert-alt-border-radius : Border radius of the alternate alert style.
// - $alert-alt-padding : (Optional) Padding of the alternate alert style. Defaults to the alert's padding.
// - $alert-alt-margin : (Optional) Margin of the alternate alert style. Defaults to the alert's margin.
// - $alert-alt-box-shadow : (Optional) Box shadow of the alretnate alert style. Defaults to the alert's box shadow.
@mixin make-alert-alt-style ($alert-alt-name, $alert-alt-border-style, $alert-alt-border-radius,
$alert-alt-padding : $alert-padding, $alert-alt-margin : $alert-margin,
$alert-alt-box-shadow : $alert-box-shadow) {
.#{$alert-name}.#{$alert-alt-name} {
@if $alert-alt-border-style != $alert-border-style {
border: $alert-alt-border-style;
}
@if $alert-alt-border-radius != $alert-border-radius {
border-radius: $alert-alt-border-radius;
}
@if $alert-alt-padding != $alert-padding {
padding: $alert-alt-padding;
}
@if $alert-alt-margin != $alert-margin {
margin: $alert-alt-margin;
}
@if $alert-alt-box-shadow != $alert-box-shadow {
box-shadow: $alert-alt-box-shadowbox-shadow;
}
}
}

409
src/mini/_core.scss Normal file
View File

@@ -0,0 +1,409 @@
/*
Browsers resets and base typography.
*/
$apply-defaults-to-all: true !default; // Should default values be applied to all elements? (`true` or `false`).
$base-root-font-size: 16px !default; // Root font sizing for all elements - In `px` only!
html {
font-size: $base-root-font-size; // Set root's font sizing.
}
@if $apply-defaults-to-all {
html, * {
font-family: #{$base-font-family};
line-height: $base-line-height;
// Prevent adjustments of font size after orientation changes in mobile.
-webkit-text-size-adjust: 100%;
}
* {
font-size: $base-font-size;
}
}
@else {
html {
font-family: #{$base-font-family};
line-height: $base-line-height;
// Prevent adjustments of font size after orientation changes in mobile.
-webkit-text-size-adjust: 100%;
}
}
body {
margin: $body-margin;
color: $fore-color;
background: $back-color;
}
// Correct display for older versions of IE. Fix display of some elements in other browsers as well.
article, aside, section, figcaption, figure, main, details, menu {
display: block;
}
// Correct display in all browsers.
summary {
display: list-item;
}
abbr[title] {
border-bottom: none; // Remove bottom border in Firefox 39-.
text-decoration: underline; // Opinionated style-fix for all browsers.
}
// Correct display for older versions of IE.
audio, video {
display: inline-block;
}
// Hide overflow in IE.
svg:not(:root) {
overflow: hidden;
}
// Show overflow in IE.
input {
overflow: visible;
}
// Make images responsive by default.
img {
max-width: 100%;
height: auto;
}
// Fix display in older versions of Android.
$include-dfn-fix: true !default;
@if $include-dfn-fix {
dfn {
font-style: italic;
}
}
h1, h2, h3, h4, h5, h6 {
line-height: $heading-line-height;
margin: $heading-margin;
font-weight: $heading-font-weight;
small {
color: $heading-smalltext-fore-color;
$make-heading-smalltext-block: false !default;
@if $make-heading-smalltext-block {
display: block;
@if $heading-smalltext-b-top-margin != 0 {
margin-top: $heading-smalltext-b-top-margin;
}
@if $heading-smalltext-b-font-size != $small-font-size {
font-size: $heading-smalltext-b-font-size;
}
}
}
}
h1 {
font-size: $h1-font-size;
}
h2 {
font-size: $h2-font-size;
}
h3 {
font-size: $h3-font-size;
}
h4 {
font-size: $h4-font-size;
}
h5 {
font-size: $h5-font-size;
}
h6 {
font-size: $h6-font-size;
}
p {
margin: $paragraph-margin;
}
ol, ul {
margin: $list-margin;
padding-left: $list-left-padding;
}
b, strong {
font-weight: $bold-font-weight;
}
hr {
// Fixes and defaults for styling
box-sizing: content-box;
border: 0;
overflow: visible;
// Actual styling using variables
line-height: $horizontal-rule-line-height;
margin: $horizontal-rule-margin;
$horizontal-rule-fancy-style: false !default;
@if $horizontal-rule-fancy-style {
height: 1px;
background: -webkit-linear-gradient(#{$horizontal-rule-fancy-gradient});
background: linear-gradient(#{$horizontal-rule-fancy-gradient});
}
@else {
height: 0;
border-top: $horizontal-rule-border-style;
}
}
blockquote {
display: block;
position: relative;
font-style: italic;
@if $blockquote-back-color != $back-color {
background: $blockquote-back-color;
}
@if $blockquote-fore-color != $fore-color {
color: $blockquote-fore-color;
}
// Overwrite defaults
margin: $blockquote-margin;
padding: $blockquote-padding;
@if $blockquote-sidebar-style != 0 {
border-left: $blockquote-sidebar-style;
}
@if $blockquote-border-style != 0 {
border: $blockquote-border-style;
}
@if $blockquote-border-radius != 0 {
border-radius: $blockquote-border-radius;
}
@if $blockquote-box-shadow != none {
box-shadow: $blockquote-box-shadow;
}
&:after {
position: absolute;
font-style: normal;
font-size: $blockquote-cite-font-size;
@if $blockquote-cite-fore-color != $blockquote-fore-color {
color: $blockquote-cite-fore-color;
}
left: $blockquote-cite-left-position;
bottom: $blockquote-cite-bottom-position;
content: '\2014 \2009'attr(cite);
}
}
$use-default-code-fonts: true !default;
@if $use-default-code-fonts {
code, kbd, pre, samp{
font-family: monospace, monospace; // Applies display fix for all code elements
}
}
@else {
code, kbd, pre, samp{
font-family: $code-font-family; // Display fix should be applied manually!
}
}
code {
@if $code-element-border-style != 0{
border: $code-element-border-style;
}
@if $code-element-border-radius != 0 {
border-radius: $code-element-border-radius;
}
@if $code-element-back-color != $back-color {
background: $code-element-back-color;
}
@if $code-element-fore-color != $fore-color {
color: $code-element-fore-color;
}
@if $code-element-padding != 0 {
padding: $code-element-padding;
}
@if $code-element-box-shadow != none {
box-shadow: $code-element-box-shadow;
}
}
pre {
overflow: auto; // Responsiveness
@if $pre-element-border-style != 0 {
border: $pre-element-border-style;
}
@if $pre-element-border-radius != 0 {
border-radius: $pre-element-border-radius;
}
@if $pre-element-back-color != $back-color {
background: $pre-element-back-color;
}
@if $pre-element-fore-color != $fore-color {
color: $pre-element-fore-color;
}
@if $pre-element-padding != 0 {
padding: $pre-element-padding;
}
@if pre-element-margin != 0 {
margin: $pre-element-margin;
}
$add-pre-element-sidebar: false !default;
@if $add-pre-element-sidebar {
border-left: $pre-element-sidebar-style;
}
@if $pre-element-box-shadow != none {
box-shadow: $pre-element-box-shadow;
}
}
kbd {
@if $kbd-element-border-style != 0 {
border: $kbd-element-border-style;
}
@if $kbd-element-border-radius != 0 {
border-radius: $kbd-element-border-radius;
}
@if $kbd-element-back-color != $back-color {
background: $kbd-element-back-color;
}
@if $kbd-element-fore-color != $fore-color {
color: $kbd-element-fore-color;
}
@if $kbd-element-padding != 0 {
padding: $kbd-element-padding;
}
@if $kbd-element-box-shadow != none {
box-shadow: $kbd-element-box-shadow;
}
}
$style-samp-element: false !default;
@if $style-samp-element {
samp{
@if $samp-element-border-style != 0 {
border: $samp-element-border-style;
}
@if $samp-element-border-radius != 0 {
border-radius: $samp-element-border-radius;
}
@if $samp-element-back-color != $back-color {
background: $samp-element-back-color;
}
@if $samp-element-fore-color != $fore-color {
color: $samp-element-fore-color;
}
@if $samp-element-padding != 0 {
padding: $samp-element-padding;
}
}
}
@if $small-font-size == $sub-font-size and $small-font-size == $sup-font-size {
small, sup, sub {
font-size: $small-font-size;
}
sup {
top: $sup-top;
}
sub{
bottom: $sub-bottom;
}
sup, sub {
line-height: 0;
position: relative;
vertical-align: baseline;
}
}
@else if $small-font-size == $sub-font-size {
small, sub {
font-size: $small-font-size;
}
sup {
font-size: $sup-font-size;
top: $sup-top;
}
sub {
bottom: $sub-bottom;
}
sup, sub {
line-height: 0;
position: relative;
vertical-align: baseline;
}
}
@else if $small-font-size == $sup-font-size {
small, sup {
font-size: $small-font-size;
}
sup {
top: $sup-top;
}
sub {
font-size: $sub-font-size;
bottom: $sub-bottom;
}
sup, sub {
line-height: 0;
position: relative;
vertical-align: baseline;
}
}
@else if $sup-font-size == $sub-font-size {
small {
font-size: $small-font-size;
}
sup, sub {
font-size: $sup-font-size;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sup {
top: $sup-top;
}
sub{
bottom: $sub-bottom;
}
}
@else {
small {
font-size: $small-font-size;
}
sup {
font-size: $sup-font-size;
top: $sup-top;
}
sub{
font-size: $sub-font-size;
bottom: $sub-bottom;
}
sup, sub {
line-height: 0;
position: relative;
vertical-align: baseline;
}
}
$apply-link-underline: true !default;
$apply-link-hover-fade: true !default;
a{
color: $link-fore-color;
@if $apply-link-underline {
text-decoration: underline;
}
@else {
text-decoration: none;
}
@if $link-font-weight != 500 {
font-weight: $link-font-weight;
}
@if $apply-link-hover-fade {
opacity: 1;
-webkit-transition: all 0.3 ease 0s;
transition: all 0.3s ease 0s;
}
&:visited {
color: $link-visited-fore-color;
}
@if $apply-link-hover-fade {
&:hover, &:focus, &:active {
opacity: 0.75;
}
}
@else {
&:hover, &:focus, &:active {
color: $link-hover-fore-color;
}
}
}

342
src/mini/_grid.scss Normal file
View File

@@ -0,0 +1,342 @@
/*
Definitions for the grid system.
*/
// The grid system uses the flexbox module, meaning it might be incompatible with certain browsers.
$use-four-step-grid: false !default; // Flag for the grid system choice
$grid-container-name: 'container' !default; // Class name for the grid system container
$grid-container-side-padding: 20px !default; // Padding for the grid container (left and right only)
// Fluid grid system container definition.
.#{$grid-container-name} {
margin: 0 auto;
padding: 0 $grid-container-side-padding;
}
// Grid row definition.
$grid-row-name: 'row' !default; // Class name for the grid system rows
.#{$grid-row-name} {
box-sizing: border-box;
// Old syntax
display: -webkit-box;
-webkit-box-flex: 0;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
// New syntax
display: -webkit-flex;
display: flex;
-webkit-flex: 0 1 auto;
flex: 0 1 auto;
-webkit-flex-flow: row wrap;
flex-flow: row wrap;
}
$grid-column-prefix: 'col' !default; // Class name prefix for the grid's columns
$grid-column-offset-suffix: 'offset' !default; // Class name suffix for the grid's offsets
$grid-column-count: 12 !default; // Number of columns in the grid (integer value only)
$grid-column-padding: 0 4px !default; // Padding for the columns of the grid
$grid-order-normal-suffix: 'normal' !default; // Class name suffix for grid columns with normal priority
$grid-order-first-suffix: 'first' !default; // Class name suffix for grid columns with highest priority
$grid-order-last-suffix: 'last' !default; // Class name suffix for grid columns with lowest priorty
$grid-extra-small-prefix: 'xs' !default; // Extra small screen class prefix for grid
// Legacy grid system definitions.
@if $use-four-step-grid {
// Grid column generic definitions for extra small screens.
.#{$grid-column-prefix}-#{$grid-extra-small-prefix},
[class^='#{$grid-column-prefix}-#{$grid-extra-small-prefix}-'],
[class^='#{$grid-column-prefix}-#{$grid-extra-small-prefix}-#{$grid-column-offset-suffix}-'] {
box-sizing: border-box;
// Old syntax
-webkit-box-flex: 0;
// New syntax
-webkit-flex: 0 0 auto;
flex: 0 0 auto;
padding: $grid-column-padding;
}
// Grid column specific definition for flexible column.
.#{$grid-column-prefix}-#{$grid-extra-small-prefix} {
// Old syntax
-webkit-box-flex: 1;
max-width: 100%;
// New syntax
-webkit-flex-grow: 1;
flex-grow: 1;
-webkit-flex-basis: 0;
flex-basis: 0;
}
// Grid column specific definitions for predefined columns.
@for $i from 1 through $grid-column-count {
.#{$grid-column-prefix}-#{$grid-extra-small-prefix}-#{$i} {
// Old syntax
max-width: #{($i * 100% / $grid-column-count)};
// New syntax
-webkit-flex-basis: #{($i * 100% / $grid-column-count)};
flex-basis: #{($i * 100% / $grid-column-count)};
}
}
// Grid column specific definitions for offset columns.
@for $i from 0 through ($grid-column-count - 1) {
.#{$grid-column-prefix}-#{$grid-extra-small-prefix}-#{$grid-column-offset-suffix}-#{$i} {
@if $i == 0 {
margin-left: 0;
}
@else {
margin-left: #{($i * 100% / $grid-column-count)};
}
}
}
.#{$grid-column-prefix}-#{$grid-extra-small-prefix}-#{$grid-order-normal-suffix} {
-webkit-order: initial;
order: initial;
}
.#{$grid-column-prefix}-#{$grid-extra-small-prefix}-#{$grid-order-first-suffix} {
-webkit-order: -999;
order: -999;
}
.#{$grid-column-prefix}-#{$grid-extra-small-prefix}-#{$grid-order-lst-suffix} {
-webkit-order: 999;
order: 999;
}
}
$grid-small-breakpoint: 768px !default; // Small screen breakpoint for grid
$grid-small-prefix: 'sm' !default; // Small screen class prefix for grid
// Legacy grid system definitions.
@if $use-four-step-grid {
// Small screen breakpoint.
@media (min-width: #{$grid-small-breakpoint}){
// Grid column generic definitions for small screens.
.#{$grid-column-prefix}-#{$grid-small-prefix},
[class^='#{$grid-column-prefix}-#{$grid-small-prefix}-'],
[class^='#{$grid-column-prefix}-#{$grid-small-prefix}-#{$grid-column-offset-suffix}-'] {
box-sizing: border-box;
// Old syntax
-webkit-box-flex: 0;
// New syntax
-webkit-flex: 0 0 auto;
flex: 0 0 auto;
padding: $grid-column-padding;
}
// Grid column specific definition for flexible column.
.#{$grid-column-prefix}-#{$grid-small-prefix} {
// Old syntax
-webkit-box-flex: 1;
max-width: 100%;
// New syntax
-webkit-flex-grow: 1;
flex-grow: 1;
-webkit-flex-basis: 0;
flex-basis: 0;
}
// Grid column specific definitions for predefined columns.
@for $i from 1 through $grid-column-count {
.#{$grid-column-prefix}-#{$grid-small-prefix}-#{$i} {
// Old syntax
max-width: #{($i * 100% / $grid-column-count)};
// New syntax
-webkit-flex-basis: #{($i * 100% / $grid-column-count)};
flex-basis: #{($i * 100% / $grid-column-count)};
}
}
// Grid column specific definitions for offset columns.
@for $i from 0 through ($grid-column-count - 1) {
.#{$grid-column-prefix}-#{$grid-small-prefix}-#{$grid-column-offset-suffix}-#{$i} {
@if $i == 0 {
margin-left: 0;
}
@else {
margin-left: #{($i * 100% / $grid-column-count)};
}
}
}
.#{$grid-column-prefix}-#{$grid-small-prefix}-#{$grid-order-normal-suffix} {
-webkit-order: initial;
order: initial;
}
.#{$grid-column-prefix}-#{$grid-small-prefix}-#{$grid-order-first-suffix} {
-webkit-order: -999;
order: -999;
}
.#{$grid-column-prefix}-#{$grid-small-prefix}-#{$grid-order-last-suffix} {
-webkit-order: 999;
order: 999;
}
}
}
// Non-legacy grid system definitions.
@else {
// Grid column generic definitions for small screens.
.#{$grid-column-prefix}-#{$grid-small-prefix},
[class^='#{$grid-column-prefix}-#{$grid-small-prefix}-'],
[class^='#{$grid-column-prefix}-#{$grid-small-prefix}-#{$grid-column-offset-suffix}-'] {
box-sizing: border-box;
// Old syntax
-webkit-box-flex: 0;
// New syntax
-webkit-flex: 0 0 auto;
flex: 0 0 auto;
padding: $grid-column-padding;
}
// Grid column specific definition for flexible column.
.#{$grid-column-prefix}-#{$grid-small-prefix} {
// Old syntax
-webkit-box-flex: 1;
max-width: 100%;
// New syntax
-webkit-flex-grow: 1;
flex-grow: 1;
-webkit-flex-basis: 0;
flex-basis: 0;
}
// Grid column specific definitions for predefined columns.
@for $i from 1 through $grid-column-count {
.#{$grid-column-prefix}-#{$grid-small-prefix}-#{$i} {
// Old syntax
max-width: #{($i * 100% / $grid-column-count)};
// New syntax
-webkit-flex-basis: #{($i * 100% / $grid-column-count)};
flex-basis: #{($i * 100% / $grid-column-count)};
}
}
// Grid column specific definitions for offset columns.
@for $i from 0 through ($grid-column-count - 1) {
.#{$grid-column-prefix}-#{$grid-small-prefix}-#{$grid-column-offset-suffix}-#{$i} {
@if $i == 0 {
margin-left: 0;
}
@else {
margin-left: #{($i * 100% / $grid-column-count)};
}
}
}
.#{$grid-column-prefix}-#{$grid-small-prefix}-#{$grid-order-normal-suffix} {
-webkit-order: initial;
order: initial;
}
.#{$grid-column-prefix}-#{$grid-small-prefix}-#{$grid-order-first-suffix} {
-webkit-order: -999;
order: -999;
}
.#{$grid-column-prefix}-#{$grid-small-prefix}-#{$grid-order-last-suffix} {
-webkit-order: 999;
order: 999;
}
}
// The rest is mixed definitions.
$grid-medium-breakpoint: 1024px !default; // Medium screen breakpoint for grid
$grid-medium-prefix: 'md' !default; // Medium screen class prefix for grid
// Medium screen breakpoint.
@media (min-width: #{$grid-medium-breakpoint}){
// Grid column generic definitions for medium screens.
.#{$grid-column-prefix}-#{$grid-medium-prefix},
[class^='#{$grid-column-prefix}-#{$grid-medium-prefix}-'],
[class^='#{$grid-column-prefix}-#{$grid-medium-prefix}-#{$grid-column-offset-suffix}-'] {
box-sizing: border-box;
// Old syntax
-webkit-box-flex: 0;
// New syntax
-webkit-flex: 0 0 auto;
flex: 0 0 auto;
padding: $grid-column-padding;
}
// Grid column specific definition for flexible column.
.#{$grid-column-prefix}-#{$grid-medium-prefix} {
// Old syntax
-webkit-box-flex: 1;
max-width: 100%;
// New syntax
-webkit-flex-grow: 1;
flex-grow: 1;
-webkit-flex-basis: 0;
flex-basis: 0;
}
// Grid column specific definitions for predefined columns.
@for $i from 1 through $grid-column-count {
.#{$grid-column-prefix}-#{$grid-medium-prefix}-#{$i} {
// Old syntax
max-width: #{($i * 100% / $grid-column-count)};
// New syntax
-webkit-flex-basis: #{($i * 100% / $grid-column-count)};
flex-basis: #{($i * 100% / $grid-column-count)};
}
}
// Grid column specific definitions for offset columns.
@for $i from 0 through ($grid-column-count - 1) {
.#{$grid-column-prefix}-#{$grid-medium-prefix}-#{$grid-column-offset-suffix}-#{$i} {
@if $i == 0 {
margin-left: 0;
}
@else {
margin-left: #{($i * 100% / $grid-column-count)};
}
}
}
.#{$grid-column-prefix}-#{$grid-medium-prefix}-#{$grid-order-normal-suffix} {
-webkit-order: initial;
order: initial;
}
.#{$grid-column-prefix}-#{$grid-medium-prefix}-#{$grid-order-first-suffix} {
-webkit-order: -999;
order: -999;
}
.#{$grid-column-prefix}-#{$grid-medium-prefix}-#{$grid-order-last-suffix} {
-webkit-order: 999;
order: 999;
}
}
$grid-large-breakpoint: 1280px !default; // Large screen breakpoint for grid
$grid-large-prefix: 'lg' !default; // Large screen class prefix for grid
// Large screen breakpoint.
@media (min-width: #{$grid-large-breakpoint}){
// Grid column generic definitions for large screens.
.#{$grid-column-prefix}-#{$grid-large-prefix},
[class^='#{$grid-column-prefix}-#{$grid-large-prefix}-'],
[class^='#{$grid-column-prefix}-#{$grid-large-prefix}-#{$grid-column-offset-suffix}-'] {
box-sizing: border-box;
// Old syntax
-webkit-box-flex: 0;
// New syntax
-webkit-flex: 0 0 auto;
flex: 0 0 auto;
padding: $grid-column-padding;
}
// Grid column specific definition for flexible column.
.#{$grid-column-prefix}-#{$grid-large-prefix} {
// Old syntax
-webkit-box-flex: 1;
max-width: 100%;
// New syntax
-webkit-flex-grow: 1;
flex-grow: 1;
-webkit-flex-basis: 0;
flex-basis: 0;
}
// Grid column specific definitions for predefined columns.
@for $i from 1 through $grid-column-count {
.#{$grid-column-prefix}-#{$grid-large-prefix}-#{$i} {
// Old syntax
max-width: #{($i * 100% / $grid-column-count)};
// New syntax
-webkit-flex-basis: #{($i * 100% / $grid-column-count)};
flex-basis: #{($i * 100% / $grid-column-count)};
}
}
// Grid column specific definitions for offset columns.
@for $i from 0 through ($grid-column-count - 1) {
.#{$grid-column-prefix}-#{$grid-large-prefix}-#{$grid-column-offset-suffix}-#{$i} {
@if $i == 0 {
margin-left: 0;
}
@else {
margin-left: #{($i * 100% / $grid-column-count)};
}
}
}
.#{$grid-column-prefix}-#{$grid-large-prefix}-#{$grid-order-normal-suffix} {
-webkit-order: initial;
order: initial;
}
.#{$grid-column-prefix}-#{$grid-large-prefix}-#{$grid-order-first-suffix} {
-webkit-order: -999;
order: -999;
}
.#{$grid-column-prefix}-#{$grid-large-prefix}-#{$grid-order-last-suffix} {
-webkit-order: 999;
order: 999;
}
}

View File

@@ -0,0 +1,385 @@
/*
Definitions for forms and input elements.
*/
// Different elements are styled based on the same set of rules.
// Base form styling.
form {
@if $form-back-color != $back-color {
background: $form-back-color;
}
@if $form-fore-color != $fore-color {
color: $form-fore-color;
}
@if $form-border-style != 0 {
border: $form-border-style;
}
@if $form-border-radius != 0 {
border-radius: $form-border-radius;
}
@if $form-margin != 0 {
margin: $form-margin;
}
@if $form-padding != 0 {
padding: $form-padding;
}
@if $form-box-shadow != none {
box-shadow: $form-box-shadow;
}
}
// Fieldset styling.
fieldset {
@if $fieldset-back-color != $form-back-color {
background: $fieldset-back-color;
}
// Apply always to overwrite defaults for all of the below.
border: $fieldset-border-style;
border-radius: $fieldset-border-radius;
margin: $fieldset-margin;
padding: $fieldset-padding;
}
// Legend styling.
legend {
// IE and Edge fixes.
box-sizing: border-box;
display: table;
max-width: 100%;
white-space: normal;
// Actual styling.
font-weight: $legend-font-weight;
font-size: $legend-font-size;
@if $legend-fore-color != $fore-color {
color: $legend-fore-color;
}
@if $legend-padding != 0 {
padding: $legend-padding;
}
}
// Input group base naming.
.#{$input-group-name} {
display: inline-block;
}
// Correct the cursor style of increment and decrement buttons in Chrome.
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
height: auto;
}
// Remove the default vertical scrollbar in IE.
textarea {
overflow: auto;
}
// Correct style in Chrome and Safari.
[type="search"] {
-webkit-appearance: textfield;
outline-offset: -2px;
}
// Correct style in Chrome and Safari.
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
// Common textual input styling.
input:not([type]), [type="text"], [type="email"], [type="number"], [type="search"],
[type="password"], [type="url"], [type="tel"], textarea, select {
box-sizing: border-box;
// Background, color and border should not be unassigned, as the browser defaults will apply.
background: $input-back-color;
color: $input-fore-color;
border: $input-border-style;
@if $input-border-radius != 0 {
border-radius: $input-border-radius;
}
@if $input-margin != 0 {
margin: $input-margin;
}
@if $input-padding != 0 {
padding: $input-padding;
}
&:focus {
border-color: $input-focus-border-color;
box-shadow: none;
}
&[disabled] {
cursor: not-allowed;
opacity: $input-disabled-opacity;
}
&:invalid, &:focus:invalid, &:focus:invalid:focus{
border-color: $input-invalid-border-color;
box-shadow: none;
}
&[readonly]{
background: $input-readonly-back-color;
border-color: $input-readonly-border-color;
}
}
// Placeholder styling.
::-webkit-input-placeholder {
opacity: 1;
color: $input-placeholder-fore-color;
}
::-moz-placeholder {
opacity: 1;
color: $input-placeholder-fore-color;
}
::-ms-placeholder {
opacity: 1;
color: $input-placeholder-fore-color;
}
// Definitions for the button and button-like elements.
// Different elements are styled based on the same set of rules.
// Reset for Firefox focusing on button elements.
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
border-style: none;
padding: 0;
}
// Fixes for Android 4, iOS and Safari.
button, html [type="button"], [type="reset"], [type="submit"] {
-webkit-appearance: button;
}
// Other fixes.
button {
overflow: visible; // Show the overflow in IE.
text-transform: none; // Remove inheritance of text-transform in Edge, Firefox, and IE.
}
// Default styling
button, [type="button"], [type="submit"], [type="reset"], a.#{$button-class-name}, label.#{$button-class-name}, .#{$button-class-name} {
display: inline-block;
background: rgba($button-back-color, $button-back-opacity);
color: $button-fore-color;
border: $button-border-style;
@if $button-border-radius != 0 {
border-radius: $button-border-radius;
}
@if $button-padding != 0 {
padding: $button-padding;
}
@if $button-margin != 0 {
margin: $button-margin;
}
@if $button-box-shadow != none {
box-shadow: $button-box-shadow;
}
@if $apply-link-underline { // Override for links if underline is enabled.
text-decoration: none;
}
-webkit-transition: all 0.3s ease 0s;
transition: all 0.3s ease 0s;
cursor: pointer;
&:hover, &:active, &:focus {
background: rgba($button-back-color, $button-hover-back-opacity);
@if $apply-link-hover-fade { // Override for links if hover-fade is enabled.
opacity: 1;
}
}
&:disabled, &[disabled] {
cursor: not-allowed;
opacity: $button-disabled-opacity;
}
}
// Styling for file inputs
$hide-file-inputs: true !default;
@if $hide-file-inputs {
input[type="file"] { // Hide, use labels instead. Hidden inputs like this are still accessible.
border: 0;
height: 1px;
width: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
clip: rect(0 0 0 0);
-webkit-clip-path: inset(100%);
clip-path: inset(100%);
}
}
@else {
::-webkit-file-upload-button {
-webkit-appearance: button; // Correct inability to style in iOS and Safari.
font: inherit; // Change font propery to `inherit` in Safari.
}
}
// Button group definition
.#{$button-group-name} {
// Old syntax
display: -webkit-box;
// New syntax
display: -webkit-flex;
display: flex;
border: $button-group-border-style;
@if $button-border-radius != 0 {
border-radius: $button-border-radius;
}
@if $button-group-margin != 0 {
margin: $button-group-margin;
}
@if $button-group-box-shadow != none {
box-shadow: $button-group-box-shadow;
}
button, [type="button"], [type="submit"], [type="reset"], a.#{$button-class-name}, label.#{$button-class-name}, .#{$button-class-name} {
margin: 0;
// Old syntax
-webkit-box-flex: 1;
max-width: 100%;
// New syntax
-webkit-flex-grow: 1;
flex-grow: 1;
-webkit-flex-basis: 0;
flex-basis: 0;
text-align: center;
border: 0;
@if $button-border-radius != 0 {
border-radius: 0;
}
@if $button-group-border-style != 0 {
+ button, + [type="button"], + [type="submit"], + [type="reset"], + a.#{$button-class-name}, + label.#{$button-class-name}, + .#{$button-class-name} {
border-left: $button-group-border-style;
}
}
@if $button-box-shadow != none {
box-shadow: none;
}
}
}
// Responsiveness for button groups
@media (max-width: #{$button-group-mobile-breakpoint}) {
.#{$button-group-name} {
// Old syntax
-webkit-box-orient: vertical;
// New syntax
-webkit-flex-direction: column;
flex-direction: column;
@if $button-group-border-style !=0 {
button, [type="button"], [type="submit"], [type="reset"], a.#{$button-class-name}, label.#{$button-class-name}, .#{$button-class-name} {
+ button, + [type="button"], + [type="submit"], + [type="reset"], + a.#{$button-class-name}, + label.#{$button-class-name}, + .#{$button-class-name} {
border: 0;
border-top: $button-group-border-style;
}
}
}
}
}
// Mixin for alternate buttons (button color variants).
// Variables:
// - $button-alt-name : The name of the class used for the alternate button.
// - $button-alt-back-color : The background color of the alternate button.
// - $button-alt-back-opacity : Opacity of the background color of the alternate button.
// - $button-alt-hover-back-opacity : Opacity of the background color of the alternate button on hover.
// - $button-alt-fore-color : (Optional) The text color of the alternate button. Defaults to the text color of the button.
// Notes:
// Due to something like `.button.secondary` being a higher specificity than `a.button` or `a`, no extra rules are
// required for such elements. However rules for the normal button elements are applied in order to not require the
// base class for the button styles.
@mixin make-button-alt-color ($button-alt-name, $button-alt-back-color, $button-alt-back-opacity,
$button-alt-hover-back-opacity, $button-alt-fore-color: $button-fore-color) {
button.#{$button-alt-name}, [type="button"].#{$button-alt-name}, [type="submit"].#{$button-alt-name},
[type="reset"].#{$button-alt-name}, .#{$button-class-name}.#{$button-alt-name} {
background: rgba($button-alt-back-color, $button-alt-back-opacity);
@if $button-alt-fore-color != $button-fore-color {
color: $button-alt-fore-color;
}
&:hover, &:active, &:focus {
background: rgba($button-alt-back-color, $button-alt-hover-back-opacity);
}
}
}
// Mixin for alternate button styles (button style variants).
// Variables:
// - $button-alt-name : The name of the class used for the alternate button style.
// - $button-alt-border-style : The border style of the alternate button style.
// - $button-alt-border-radius : Border radius of the alternate button style.
// - $button-alt-padding : Padding of the alternate button style.
// - $button-alt-margin : Margin of the alternate button style.
// Notes:
// Due to something like `.button.small` being a higher specificity than `a.small` or `a`, no extra rules are
// required for such elements. However rules for the normal button elements are applied in order to not require the
// base class for the button styles.
@mixin make-button-alt-style ($button-alt-name, $button-alt-border-style, $button-alt-border-radius,
$button-alt-padding, $button-alt-margin) {
button.#{$button-alt-name}, [type="button"].#{$button-alt-name}, [type="submit"].#{$button-alt-name},
[type="reset"].#{$button-alt-name}, .#{$button-class-name}.#{$button-alt-name} {
@if $button-alt-border-style != $button-border-style {
border: $button-alt-border-style;
}
@if $button-alt-border-radius != $button-border-radius {
border-radius: $button-alt-border-radius;
}
@if $button-alt-padding != $button-padding {
padding: $button-alt-padding;
}
@if $button-alt-margin != $button-margin {
margin: $button-alt-margin;
}
}
}
// Definitions for checkboxes and radio button elements.
// Note: both elements are hidden by default and use labels to show their input state.
// Hide both input types - accessible (element is not visible, but screen readers read it normally).
[type="checkbox"], [type="radio"] {
height: 1px;
width: 1px;
margin: -1px;
overflow: hidden;
position: absolute;
clip: rect(0 0 0 0);
-webkit-clip-path: inset(100%);
clip-path: inset(100%);
}
// Use input-group to setup the style for labels.
.#{$input-group-name} {
// Label styling based on the specifics of the checkbox/radio variables.
[type="checkbox"] + label, [type="radio"] + label {
position: relative;
margin-left: floor($checkbox-size + floor($checkbox-size * 0.25));
// Styling for checkbox/radio box part.
&:before {
//box-sizing: border-box;
display: inline-block;
position: absolute;
bottom: $checkbox-bottom-spacing;
left: 0;
width: $checkbox-size;
height: $checkbox-size;
content: '';
border: $checkbox-border-thickness solid $checkbox-border-color;
@if $checkbox-border-radius != 0 {
border-radius: $checkbox-border-radius;
}
background: $checkbox-back-color;
color: $checkbox-fore-color;
margin-left: -($checkbox-size + ($checkbox-size * 0.25));
}
// Hover, focus, active styling.
&:hover, &:active, &:focus {
&:before {
border-color: $checkbox-focus-border-color;
}
}
}
[type="checkbox"]:focus + label:before, [type="radio"]:focus + label:before {
border-color: $checkbox-focus-border-color;
}
// Make radio button box and fill circular.
[type="radio"] + label {
&:before, &:after {
border-radius: 50%;
}
}
// Disabled and readonly styles.
[type="checkbox"][disabled] + label, [type="radio"][disabled] + label {
cursor: not-allowed;
&:before, &:after {
opacity: $checkbox-disabled-opacity;
}
}
// Fill for checked checkbox/radio elements.
[type="checkbox"]:checked + label, [type="radio"]:checked + label{
&:after {
margin-left: - floor($checkbox-size + floor($checkbox-size * 0.25));
position: absolute;
bottom: floor($checkbox-size * 0.25) + $checkbox-bottom-spacing;
left: floor($checkbox-size * 0.25);
width: floor($checkbox-size * 0.5) + floor($checkbox-border-thickness * 2);
height: floor($checkbox-size * 0.5) + floor($checkbox-border-thickness * 2);
background: $checkbox-fore-color;
content: '';
}
}
}

133
src/mini/_navigation.scss Normal file
View File

@@ -0,0 +1,133 @@
/*
Definitions for navigation elements.
*/
// Different elements are styled based on the same set of rules.
// Header styling.
$button-class-name: 'button' !default; // Class name for the button-like elements
$header-logo-name: 'logo' !default; // Class name for <header>'s logo
header {
display: block; // Correct display for older versions of IE.
height: $header-height;
@if $header-back-color != $back-color {
background: $header-back-color;
}
@if $header-fore-color != $fore-color {
color: $header-fore-color;
}
@if $header-border-style != 0 {
border: $header-border-style;
}
@if $header-margin != 0 {
margin: $header-margin;
}
@if $header-padding != 0 {
padding: $header-padding;
}
@if $header-box-shadow != none {
box-shadow: $header-box-shadow;
}
// Resposniveness for smaller displays, scrolls horizontally.
white-space: nowrap;
overflow-x: auto;
overflow-y: hidden;
// Header logo styling.
.#{$header-logo-name} {
color: $header-fore-color; // Keep this in case people use SVGs? Is it necessary?
@if $header-logo-font-size != $base-font-size {
font-size: $header-logo-font-size;
}
@if $header-logo-line-height != $base-line-height {
line-height: $header-logo-line-height;
}
@if $header-logo-margin != 0 {
margin: $header-logo-margin;
}
@if $header-logo-padding != 0 {
padding: $header-logo-padding;
}
}
// Link styling.
button, [type="button"], a.#{$button-class-name}, label.#{$button-class-name}, .#{$button-class-name} {
background: $header-back-color; // Apply color regardless to override styling from other things.
color: $header-fore-color;
vertical-align: top; // Alignemt, really important to make this work well.
@if $header-link-margin != 0 {
margin: $header-link-margin;
}
&:hover, &:active, &:focus {
background: $header-link-hover-color;
}
@if $button-box-shadow != none { // Override for buttons when shadow is enabled.
box-shadow: none;
}
@if $button-border-style != 0 { // Override for buttons when border-style is enabled.
border: 0;
}
}
@if $apply-link-underline { // Override for links if underline is enabled.
.#{$header-logo-name}, a.#{$button-class-name} {
text-decoration: none;
}
}
}
// Navigation sidebar styling.
nav {
display: block; // Correct display for older versions of IE.
@if $nav-back-color != $back-color {
background: $nav-back-color;
}
@if $nav-fore-color != $fore-color {
color: $nav-fore-color;
}
@if $nav-border-style != 0 {
border: $nav-border-style;
}
@if $nav-border-radius != 0 {
border-radius: $nav-border-radius;
}
@if $nav-margin != 0 {
margin: $nav-margin;
}
@if $nav-padding != 0 {
padding: $nav-padding;
}
@if $nav-box-shadow != none {
box-shadow: $nav-box-shadow;
}
a, a:visited {
display: block;
color: $nav-link-fore-color; // Apply regardless to de-stylize visited links.
}
// Subcategories in navigation.
$nav-sublink-prefix: 'sublink' !default; // Prefix for the subcategory tabs in nav
$nav-sublink-depth: 2 !default; // Amount of subcategory classes to add
$nav-sublink-padding-left: 12px !default; // Left padding to add to subcategories
@for $i from 1 through $nav-sublink-depth {
.#{$nav-sublink-prefix}-#{$i} {
padding-left: $i * $nav-sublink-padding-left;
}
}
}
// Footer styling.
footer {
display: block; // Correct display for older versions of IE.
@if $footer-back-color != $back-color {
background: $footer-back-color;
}
@if $footer-fore-color != $fore-color {
color: $footer-fore-color;
}
@if $footer-border-style != 0 {
border: $footer-border-style;
}
@if $footer-margin != 0 {
margin: $footer-margin;
}
@if $footer-padding != 0 {
padding: $footer-padding;
}
font-size: $footer-font-size;
a, a:visited {
color: $footer-link-fore-color;
}
}

205
src/mini/_progress.scss Normal file
View File

@@ -0,0 +1,205 @@
/*
Definitions for progress elements and spinners.
*/
// Progress elements use the progress element as their base.
// Default styling for progress. Use mixins for alternate styles.
$progress-max-value: 100 !default; // Arithmetic max value of <progress>
progress {
display: block;
vertical-align: baseline; // Correct vertical alignment in certain browsers.
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
height: $progress-height;
width: 100%;
border: $progress-border-style;
@if $progress-border-radius != 0 {
border-radius: $progress-border-radius;
}
@if $progress-top-bottom-margin != 0 {
margin: $progress-top-bottom-margin auto;
// Check somewhere below for the feature query that allows left and right margins to display properly on newer browsers.
}
@if $progress-box-shadow != none {
box-shadow: $progress-box-shadow;
}
background: $progress-back-color; // Background color of the element (IE 10+ and Firefox).
color: $progress-fore-color; // Foreground of the element (IE 10+).
&::-webkit-progress-value { // Foreground of the element (webkit browsers).
background: $progress-fore-color;
@if $progress-border-radius != 0 {
border-top-left-radius: $progress-border-radius;
border-bottom-left-radius: $progress-border-radius;
}
}
&::-webkit-progress-bar { // Background of the element (webkit browsers).
background: $progress-back-color;
}
&::-moz-progress-bar { // Foreground of the element (Firefox).
background: $progress-fore-color;
@if $progress-border-radius != 0 {
border-top-left-radius: $progress-border-radius;
border-bottom-left-radius: $progress-border-radius;
}
}
&[value="#{$progress-max-value}"] {
&::-webkit-progress-value {
@if $progress-border-radius != 0 {
border-radius: $progress-border-radius;
}
}
&::-moz-progress-bar {
@if $progress-border-radius != 0 {
border-radius: $progress-border-radius;
}
}
}
}
// Feature query that checks if the left and right margins can be applied properly.
@if $progress-left-right-margin != 0 and $progress-left-right-margin != auto {
@supports (width: calc(100% - 2*#{$progress-left-right-margin})) or (width: -webkit-calc(100% - 2*#{$progress-left-right-margin})) {
progress {
width: -webkit-calc(100% - 2*#{$progress-left-right-margin});
width: calc(100% - 2*#{$progress-left-right-margin});
margin: $progress-top-bottom-margin $progress-left-right-margin;
}
}
}
// Mixin for inline progress.
// Variables:
// - $progress-inline-name : The name of the class used for the inline progress.
// - $progress-inline-width : The width of the inline progress.
@mixin make-progress-inline ($progress-inline-name, $progress-inline-width) {
progress.#{$progress-inline-name} {
display: inline-block;
vertical-align: middle; // Align progress bar vertically to look better with text next to it.
@if $progress-inline-width != 100% {
width: $progress-inline-width;
}
}
}
// Mixin for alternate progress (progress color variants).
// Variables:
// - $progress-alt-name : The name of the class used for the alternate progress.
// - $progress-alt-fore-color : The progress bar color of the alternate progress.
// - $progress-alt-back-color : (Optional) The background color of the alternate progress. Defaults to the background color of the progress.
@mixin make-progress-alt-color ($progress-alt-name, $progress-alt-fore-color, $progress-alt-back-color: $progress-back-color) {
progress.#{$progress-alt-name} {
@if $progress-alt-back-color != $progress-back-color {
background: $progress-alt-back-color; // Background color of the element (IE 10+ and Firefox).
&::-webkit-progress-bar { // Background of the element (webkit browsers).
background: $progress-alt-back-color;
}
}
@if $progress-alt-fore-color != $progress-fore-color {
color: $progress-alt-fore-color; // Foreground of the element (IE 10+).
&::-webkit-progress-value { // Foreground of the element (webkit browsers).
background: $progress-alt-fore-color;
}
&::-moz-progress-bar { // Foreground of the element (Firefox).
background: $progress-alt-fore-color;
}
}
}
}
// Mixin for alternate progress styles.
// Variables:
// - $progress-alt-name : The name of the class used for the alternate progress style.
// - $progress-alt-height : The height of the alternate progress style.
// - $progress-alt-top-bottom-margin : (Optional) The top and bottom margin of the alternate progress style. Defaults to the margin of the progress.
// - $progress-alt-left-right-margin : (Optional) The left and right margin of the alternate progress style. Defaults to the margin of the progress.
// - $progress-alt-border-style : (Optional) The border style of the alternate progress style. Defaults to the border style of the progress.
// - $progress-alt-border-radius : (Optional) The border radius of the alternate progress style. Defaults to the border radius of the progress.
// - $progress-alt-box-shadow : (Optional) The box shadow of the alternate progress style. Defaults to the box shadow of the progress.
@mixin make-progress-alt-style ($progress-alt-name, $progress-alt-height,
$progress-alt-top-bottom-margin : $progress-top-bottom-margin, $progress-alt-left-right-margin : $progress-left-right-margin,
$progress-alt-border-style : $progress-border-style, $progress-alt-border-radius : $progress-border-radius,
$progress-alt-box-shadow : $progress-box-shadow) {
progress.#{$progress-alt-name} {
@if $progress-alt-height != $progress-height {
height: $progress-alt-height;
}
width: 100%;
@if $progress-alt-top-bottom-margin != $progress-top-bottom-margin {
margin: $progress-alt-top-bottom-margin auto;
}
@if $progress-alt-border-style != $progress-border-style {
border: $progress-alt-border-style;
}
@if progress-alt-border-radius != $progress-border-radius {
border-radius: $progress-alt-border-radius;
&::-webkit-progress-value {
border-top-left-radius: $progress-alt-border-radius;
border-bottom-left-radius: $progress-alt-border-radius;
}
&::-moz-progress-bar {
border-top-left-radius: $progress-alt-border-radius;
border-bottom-left-radius: $progress-alt-border-radius;
}
&[value="#{$progress-max-value}"] {
&::-webkit-progress-value {
border-radius: $progress-alt-border-radius;
}
&::-moz-progress-bar {
border-radius: $progress-alt-border-radius;
}
}
}
@if $progress-alt-box-shadow != $progress-box-shadow {
box-shadow: $progress-alt-box-shadow;
}
}
// Feature query that checks if the left and right margins can be applied properly.
@if $progress-alt-left-right-margin != $progress-left-right-margin and $progress-alt-left-right-margin != auto {
@supports (width: calc(100% - 2*#{$progress-alt-left-right-margin})) or (width: -webkit-calc(100% - 2*#{$progress-alt-left-right-margin})) {
progress.#{$progress-alt-name} {
width: -webkit-calc(100% - 2*#{$progress-alt-left-right-margin});
width: calc(100% - 2*#{$progress-alt-left-right-margin});
margin: $progress-alt-top-bottom-margin $progress-alt-left-right-margin;
}
}
}
}
// Animation definition for donut spinner
@-webkit-keyframes spinner-donut-anim { 0% { -webkit-transform: rotate(0deg);} 100% { -webkit-transform: rotate(360deg);} }
@keyframes spinner-donut-anim { 0% { transform: rotate(0deg);} 100% { transform: rotate(360deg);} }
// Style for donut spinner
.#{$spinner-donut-name} {
display: inline-block;
border: $spinner-donut-border-thickness solid $spinner-donut-back-color;
border-left: $spinner-donut-border-thickness solid $spinner-donut-fore-color;
border-radius: 50%;
width: $spinner-donut-size;
height: $spinner-donut-size;
-webkit-animation: spinner-donut-anim 1.2s linear infinite;
animation: spinner-donut-anim 1.2s linear infinite;
}
// Mixin for alternate donut spinner colors (spinner donut color variants).
// Variables:
// - $spinner-donut-alt-name : The name of the class used for the alternate donut spinner.
// - $spinner-donut-alt-back-color : The background color of the alternate donut spinner.
// - $spinner-donut-alt-fore-color : The foreground color of the alternate donut spinner.
@mixin make-spinner-donut-alt-color ($spinner-donut-alt-name, $spinner-donut-alt-back-color, $spinner-donut-alt-fore-color) {
.#{$spinner-donut-name}.#{$spinner-donut-alt-name} {
border: $spinner-donut-border-thickness solid $spinner-donut-alt-back-color;
border-left: $spinner-donut-border-thickness solid $spinner-donut-alt-fore-color;
}
}
// Mixin for alternate donut spinner styles (spinner donut styles variants).
// Variables:
// - $spinner-donut-alt-name : The name of the class used for the alternate donut spinner style.
// - $spinner-donut-alt-size : The size of the alternate donut spinner style.
// - $spinner-donut-alt-border-thickness : (Optional) The border thickness of the alternate donut spinner style.
// Defaults to the value of $spinner-donut-alt-border-thickness.
@mixin make-spinner-donut-alt-style ($spinner-donut-alt-name, $spinner-donut-alt-size,
$spinner-donut-alt-border-thickness : $spinner-donut-border-thickness) {
.#{$spinner-donut-name}.#{$spinner-donut-alt-name} {
@if $spinner-donut-alt-border-thickness != $spinner-donut-border-thickness {
border-width: $spinner-donut-alt-border-thickness;
}
@if $spinner-donut-alt-size != $spinner-donut-size {
width: $spinner-donut-alt-size;
height: $spinner-donut-alt-size;
}
}
}

255
src/mini/_tab.scss Normal file
View File

@@ -0,0 +1,255 @@
/*
Definitions for tabs/horizontal accordions.
*/
// Dependency: This module is somewhat dependent on the grid system.
// Tab styling
$tab-container-name: 'tabs' !default; // Class name for the tabs container
$tab-stacked-name: 'stacked' !default; // Class name for stacked tabs container
.#{$tab-container-name} {
width: 100%;
opacity: 1;
// Old syntax
display: -webkit-box;
-webkit-box-pack: justify;
// New syntax
display: -webkit-flex;
display: flex;
-webkit-justify-content: space-between;
justify-content: space-between;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
@if $tab-container-box-shadow != none {
box-shadow: $tab-container-box-shadow;
}
// Tab label styling
& > label {
// Old syntax
-webkit-box-flex: 1;
// New syntax
-webkit-flex-grow: 1;
flex-grow: 1;
// Make tab labels stay at the top on large displays
-webkit-order: 1;
order: 1;
// Actual styling
display: inline-block;
height: $tab-label-height;
cursor: pointer;
-webkit-transition: background 0.3s ease 0s;
transition: background 0.3s ease 0s;
@if $tab-label-back-color != $back-color {
background: $tab-label-back-color;
}
@if $tab-label-fore-color != $fore-color {
color: $tab-label-fore-color;
}
@if $tab-border-style != 0 {
border: $tab-border-style;
}
@if $tab-label-padding != 0 {
padding: $tab-label-padding;
}
@if $tab-border-radius != 0 { // Style first and last tabs' labels' top corners as needed
&:first-of-type {
border-top-left-radius: $tab-border-radius;
}
&:last-of-type {
border-top-right-radius: $tab-border-radius;
}
}
// Hover styling for tabs' labels
&:hover, &:active, &:focus {
background: rgba($tab-label-back-color, $tab-label-hover-opacity);
}
}
// Tab radio styling
& > [type="radio"], &.#{$tab-stacked-name} > [type="checkbox"] {
display: none;
visibility: hidden;
}
// Tab content styling
& > [type="radio"] + label + div, &.#{$tab-stacked-name} > [type="checkbox"] + label + div {
// New syntax
-webkit-flex-basis: auto;
flex-basis: auto;
// Make tab panels display after all the labels on larger displays
-webkit-order: 2;
order: 2;
// Hide content, while allowing accessibility
height: 1px;
width: 1px;
margin: -1px;
overflow: hidden;
position: absolute;
clip: rect(0 0 0 0);
-webkit-clip-path: inset(100%);
clip-path: inset(100%);
// Presentation
-webkit-transform: scaleY(0);
transform: scaleY(0);
-webkit-transform-origin: top;
transform-origin: top;
-webkit-transition: -webkit-transform 0.3s ease 0s,
transform 0.3s ease 0s;
transition: -webkit-transform 0.3s ease 0s,
transform 0.3s ease 0s;
// Style for tab labels except the first
@if $tab-border-style != 0 {
& + [type="radio"] + label {
border-left: 0;
}
}
@if $tab-border-radius != 0 {
border-bottom-left-radius: $tab-border-radius;
border-bottom-right-radius: $tab-border-radius;
}
}
@if $tab-border-style != 0 {
&.stacked > [type="checkbox"] + label + div + [type="checkbox"] + label {
border-left: 0;
}
}
// Tab label styling for open tab
& > [type="radio"]:checked + label, &.#{$tab-stacked-name} > [type="checkbox"]:checked + label {
@if $tab-label-selected-back-color != $tab-label-back-color {
background: $tab-label-selected-back-color;
&:hover, &:active, &:focus {
background: rgba($tab-label-selected-back-color, $tab-label-hover-opacity);
}
}
@if $tab-label-selected-fore-color != $tab-label-fore-color {
color: $tab-label-selected-fore-color;
}
}
// Tab content styling (open tab)
& > [type="radio"]:checked + label + div, &.#{$tab-stacked-name} > [type="checkbox"]:checked + label + div {
box-sizing: border-box;
position: relative;
height: $tab-panel-height;
width: 100%;
overflow: auto;
margin: 0;
-webkit-transform: scaleY(1);
transform: scaleY(1);
@if $tab-panel-back-color != $back-color {
background: $tab-panel-back-color;
}
@if $tab-panel-fore-color != $fore-color {
color: $tab-panel-fore-color;
}
@if $tab-border-style != 0 {
border: $tab-border-style;
border-top: 0;
}
@if $tab-panel-padding != 0 {
padding: $tab-panel-padding;
}
// Fix display for some browsers
clip: auto;
-webkit-clip-path: inset(0%);
clip-path: inset(0%);
}
}
// Stacked tabs
.#{$tab-container-name}.#{$tab-stacked-name} {
// Old syntax
-webkit-box-orient: vertical;
// New syntax
-webkit-flex-direction: column;
flex-direction: column;
& > label {
-webkit-order: initial; // Reset order to show stacked tabs properly
order: initial;
@if $tab-border-radius != 0 { // Style first and last tabs' labels' corners as needed
&:last-of-type {
border-top-right-radius: 0;
border-bottom-left-radius: $tab-border-radius;
border-bottom-right-radius: $tab-border-radius;
}
// Keep :first-of-type below :last-of-type to make sure that single collapses get proper radiuses
&:first-of-type {
border-top-right-radius: $tab-border-radius;
}
}
}
@if $tab-border-radius != 0 { // Style the last tabs' label corners when it's open as needed
& > [type="radio"]:checked + label, & > [type="checkbox"]:checked + label {
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
}
}
& > [type="radio"] + label + div, & > [type="checkbox"] + label + div {
-webkit-order: initial; // Reset order to show stacked tabs properly
order: initial;
// Presentation
-webkit-transform-origin: top;
transform-origin: top;
@if $tab-border-radius != 0 {
border-radius: 0;
}
& + [type="radio"] + label, & + [type="checkbox"] + label {
@if $tab-border-style != 0 {
border: $tab-border-style;
border-top: 0;
}
}
}
& > [type="radio"]:checked + label + div, & > [type="checkbox"]:checked + label + div {
height: auto;
}
@if $tab-border-radius != 0 {
& > [type="radio"] + label + div:last-of-type, & > [type="checkbox"] + label + div:last-of-type {
border-bottom-left-radius: $tab-border-radius;
border-bottom-right-radius: $tab-border-radius;
}
}
}
// Responsiveness
@media (max-width: #{$tab-stacked-breakpoint}) {
.#{$tab-container-name} {
// Old syntax
-webkit-box-orient: vertical;
// New syntax
-webkit-flex-direction: column;
flex-direction: column;
& > label {
-webkit-order: initial; // Reset order to show stacked tabs properly
order: initial;
@if $tab-border-radius != 0 { // Style first and last tabs' labels' corners as needed
&:first-of-type {
border-top-right-radius: $tab-border-radius;
}
&:last-of-type {
border-top-right-radius: 0;
border-bottom-left-radius: $tab-border-radius;
border-bottom-right-radius: $tab-border-radius;
}
}
}
@if $tab-border-radius != 0 { // Style the last tabs' label corners when it's open as needed
& > [type="radio"]:checked + label {
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
}
}
& > [type="radio"] + label + div {
-webkit-order: initial; // Reset order to show stacked tabs properly
order: initial;
@if $tab-border-radius != 0 {
border-radius: 0;
}
& + [type="radio"] + label {
@if $tab-border-style != 0 {
border: $tab-border-style;
border-top: 0;
}
}
}
@if $tab-border-radius != 0 {
& > [type="radio"] + label + div:last-of-type {
border-bottom-left-radius: $tab-border-radius;
border-bottom-right-radius: $tab-border-radius;
}
}
}
}

298
src/mini/_table.scss Normal file
View File

@@ -0,0 +1,298 @@
/*
Definitions for the responsive table component.
*/
// The tables use the common table elements and syntax.
// Desktop view.
table {
border-collapse: separate;
border-spacing: 0;
// Apply border style by default always. Otherwise, browser default will be applied.
border: $table-border-style;
@if $table-border-radius != 0 {
border-radius: $table-border-radius;
}
@if $table-margin != 0 {
margin: $table-margin;
}
@if $table-box-shadow != none {
box-shadow: $table-box-shadow;
}
caption {
font-size: $table-caption-font-size;
margin: $table-caption-margin;
}
tr {
padding: $table-row-padding; // Apply always to overwrite default.
}
th, td {
padding: $table-column-padding; // Apply always to overwrite default.
border-left: $table-border-style;
border-top: $table-border-style;
}
td {
@if $table-body-back-color != $back-color {
background: $table-body-back-color;
}
@if $table-body-fore-color != $fore-color {
color: $table-body-fore-color;
}
}
thead th {
border-top: 0;
}
th {
@if $table-head-back-color != $back-color {
background: $table-head-back-color;
}
@if $table-head-fore-color != $fore-color {
color: $table-head-fore-color;
}
}
th:first-child, td:first-child {
border-left: 0;
}
}
// Mobile view for responsive tables.
$table-mobile-breakpoint: 767px !default; // Breakpoint for table mobile view
$table-not-responsive-name: 'preset' !default; // Class name for table non-responsive view
@media (max-width: #{$table-mobile-breakpoint}) {
table:not(.#{$table-not-responsive-name}) {
border-collapse: collapse;
border: 0;
width: 100%;
@if $table-box-shadow != none {
box-shadow: none;
}
// Accessibility (element is not visible, but screen readers read it normally)
thead, th {
border: 0;
height: 1px;
width: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
clip: rect(0 0 0 0);
-webkit-clip-path: inset(100%);
clip-path: inset(100%);
}
tr {
display: block;
border: $table-border-style;
@if $table-border-radius != 0 {
border-radius: $table-border-radius;
}
@if $table-box-shadow != none {
box-shadow: $table-box-shadow;
}
@if $table-body-back-color != $back-color {
background: $table-body-back-color;
}
margin-bottom: $table-mobile-card-spacing;
}
td {
display: block;
border: 0;
@if $table-border-style != 0 {
border-bottom: $table-border-style;
}
text-align: right;
}
td:before {
content: attr(#{$table-mobile-card-label});
float: left;
font-weight: $table-mobile-label-font-weight;
}
td:last-child {
@if $table-border-style != 0 {
border-bottom: 0;
}
}
}
}
// Horizontal table view.
$table-horizontal-name: 'horizontal' !default; // Class name for table horizontal view
@media (min-width: #{$table-horizontal-breakpoint}) {
table.#{$table-horizontal-name} {
// Old syntax
display: -webkit-box;
-webkit-box-flex: 0;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
// New syntax
display: -webkit-flex;
display: flex;
-webkit-flex: 0 1 auto;
flex: 0 1 auto;
-webkit-flex-flow: row wrap;
flex-flow: row wrap;
padding: $table-row-padding;
caption {
// Old syntax
-webkit-box-flex: 1;
max-width: 100%;
// New syntax
-webkit-flex: 0 0 100%;
flex: 0 0 100%;
}
thead, tbody {
// Old syntax
display: -webkit-box;
-webkit-box-flex: 0;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
// New syntax
display: -webkit-flex;
display: flex;
-webkit-flex-flow: row nowrap;
flex-flow: row nowrap;
}
thead {
z-index: 999; // Fixes the visibility of the element.
}
tbody {
overflow: auto; // Allows content scrolling.
// Old syntax
-webkit-box-pack: justify;
// New syntax
-webkit-justify-content: space-between;
justify-content: space-between;
-webkit-flex: 1 0 0;
flex: 1 0 0;
}
tr {
// Old syntax
display: -webkit-box;
-webkit-box-flex: 1;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
// New syntax
display: -webkit-flex;
display: flex;
-webkit-flex-direction: column;
flex-direction: column;
-webkit-flex: 1 0 auto;
flex: 1 0 auto;
}
th, td {
width: 100%;
border: $table-border-style; // Apply to overwrite.
@if $table-border-style != 0 {
& + th, & + td {
border-top: 0;
}
}
}
th {
text-align: right;
}
thead {
tr:first-child {
padding-left: 0;
}
}
tbody {
tr:first-child > td {
padding-left: 2 * $table-column-padding; // Fixes padding for the first column of data.
}
}
}
}
// Horizontal table view for non-responsive tables. - Apply over breakpoint when non-responsive.
@media (max-width: #{$table-mobile-breakpoint}) {
table.#{$table-horizontal-name}.#{$table-not-responsive-name} {
// Old syntax
display: -webkit-box;
-webkit-box-flex: 0;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
// New syntax
display: -webkit-flex;
display: flex;
-webkit-flex: 0 1 auto;
flex: 0 1 auto;
-webkit-flex-flow: row wrap;
flex-flow: row wrap;
caption {
// Old syntax
-webkit-box-flex: 1;
max-width: 100%;
// New syntax
-webkit-flex: 0 0 100%;
flex: 0 0 100%;
}
thead, tbody {
// Old syntax
display: -webkit-box;
-webkit-box-flex: 0;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
// New syntax
display: -webkit-flex;
display: flex;
-webkit-flex-flow: row nowrap;
flex-flow: row nowrap;
}
thead {
z-index: 999; // Fixes the visibility of the element.
}
tbody {
overflow: auto;
// Old syntax
-webkit-box-pack: justify;
// New syntax
-webkit-justify-content: space-between;
justify-content: space-between;
-webkit-flex: 1 0 0;
flex: 1 0 0;
}
tr {
// Old syntax
display: -webkit-box;
-webkit-box-flex: 1;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
// New syntax
display: -webkit-flex;
display: flex;
-webkit-flex-direction: column;
flex-direction: column;
-webkit-flex: 1 0 auto;
flex: 1 0 auto;
}
th, td {
width: 100%;
border: $table-border-style; // Apply to overwrite.
@if $table-border-style != 0 {
& + th, & + td {
border-top: 0;
}
}
}
th {
text-align: right;
}
tbody {
tr:first-child > td {
padding-left: 2 * $table-column-padding; // Fixes padding for the first column of data.
}
}
}
}
// Striped tables.
$table-striped-name: 'striped' !default; // Class name for striped table
table.#{$table-striped-name} {
tr:nth-of-type(2n) > td {
background: $table-striped-alt-body-back-color;
}
}
// Responsiveness for striped tables.
@media (max-width: #{$table-mobile-breakpoint}) {
table.#{$table-striped-name}:not(.#{$table-not-responsive-name}) {
tr:nth-of-type(2n) {
background: $table-striped-alt-body-back-color;
}
}
}

230
src/mini/_utility.scss Normal file
View File

@@ -0,0 +1,230 @@
/*
Definitions for utilities and helper classes.
*/
// Hidden elements class. ATTENTION: Uses !important.
.#{$hidden-name}{
display: none !important;
}
// Visually hidden elements class. ATTENTION: Uses !important.
.#{$visually-hidden-name} {
position: absolute !important;
width: 1px !important;
height: 1px !important;
margin: -1px !important;
border: 0 !important;
padding: 0 !important;
clip-path: inset(100%);
clip: rect(0 0 0 0);
overflow: hidden !important;
}
// Breadcrumbs
ul.#{$breadcrumbs-name} {
// Old syntax
display: -webkit-box;
// New syntax
display: -webkit-flex;
display: flex;
list-style: none;
// Apply margin from styling
@if $breadcrumbs-margin != 0 {
margin: $breadcrumbs-margin;
}
@else { // Reset margins from list styling
margin-left: 0;
margin-right: 0;
}
padding: 0; // Remove unnecessary left and right empty space
@if $breadcrumbs-border-style !=0 {
border: $breadcrumbs-border-style;
}
@if $breadcrumbs-border-radius != 0 {
border-radius: $breadcrumbs-border-radius;
}
@if $breadcrumbs-box-shadow != none {
box-shadow: $breadcrumbs-box-shadow;
}
li {
// Old syntax
-webkit-box-flex: 1;
max-width: 100%;
// New syntax
-webkit-flex-grow: 1;
flex-grow: 1;
-webkit-flex-basis: 0;
flex-basis: 0;
position: relative;
text-align: center;
background: $breadcrumbs-back-color;
height: $breadcrumbs-height;
line-height: $breadcrumbs-height;
margin-right: ($breadcrumbs-height/2) + $breadcrumbs-separator-width;
&:before, &:after {
content: "";
position: absolute;
top: 0;
width: 0;
height: 0;
border: 0 solid $breadcrumbs-back-color;
border-width: ($breadcrumbs-height/2) ($breadcrumbs-height/4);
}
&:before {
left: -($breadcrumbs-height/2);
border-left-color: transparent;
}
&:after {
left: 100%;
border-color: transparent;
border-left-color: $breadcrumbs-back-color;
}
&:first-child {
&:before {
border: 0;
}
}
&:last-child {
margin-right: 0;
&:after {
border: 0;
}
}
}
}
// Close icon
.#{$close-icon-name}{
display: inline-block;
width: 0.75em;
height: 0.75em;
position: relative;
border-radius: 1em;
font-size: $close-icon-size;
text-overflow: clip;
background: rgba($close-icon-back-color,0);
vertical-align: top;
cursor: pointer;
-webkit-transition: all 0.3s ease 0s;
transition: all 0.3s ease 0s;
&:hover, &:active, &:focus {
background: rgba($close-icon-back-color,1);
}
&:before, &:after {
display: inline-block;
width: 0.45em;
height: 0.1em;
position: absolute;
content: "";
top: 0.33em;
left: 0.155em;
text-overflow: clip;
background: $close-icon-fore-color;
}
&:before {
-webkit-transform: rotateZ(45deg);
transform: rotateZ(45deg);
}
&:after {
-webkit-transform: rotateZ(-45deg);
transform: rotateZ(-45deg);
}
}
// Clearfix. ATTENTION: Uses !important.
.#{$clearfix-name} {
&:before, &:after {
content: ' ' !important;
display: table !important;
clear: both !important;
}
}
// Center block. ATTENTION: Uses !important.
.#{$center-block-name} {
display: block !important;
margin-left: auto !important;
margin-right: auto !important;
}
// Generic border mixin. ATTENTION: Uses !important.
// Variables:
// - $border-generic-name : The name of the class used for the generic border.
@mixin make-border-generic ($border-generic-name) {
.#{$border-generic-name} {
border: 1px solid rgba(0,0,0, 0.25) !important;
}
}
// Generic radial border mixin. ATTENTION: Uses !important.
// Variables:
// - $border-radial-name : The name of the class used for the radial border.
// - $border-radial-radius : The border radius used for the radial border.
@mixin make-border-radial-style ($border-radial-name, $border-radial-radius) {
.#{$border-radial-name} {
border-radius: $border-radial-radius !important;
}
}
// Generic box shadow mixin. ATTENTION: Uses !important.
// Variables:
// - $box-shadow-name : The name of the class used for the generic box shadow.
// - $box-shadow-value : The box shadow value of the generic box shadow.
@mixin make-box-shadow-generic ($box-shadow-name, $box-shadow-value) {
.#{$box-shadow-name} {
box-shadow: $box-shadow-value !important;
}
}
// Responsive margin mixin. ATTENTION: Uses !important.
// Variables:
// - $margin-name : The name of the class used for the responsive margin.
// - $margin-medium-breakpoint : Medium screen breakpoint for the responsive margin.
// - $margin-large-breakpoint : Large screen breakpoint for the responsive margin.
// - $margin-small-value : Responsive margin value for smaller screens.
// - $margin-medium-value : Responsive margin value for medium screens.
// - $margin-large-value : Responsive margin value for large screens.
@mixin make-margin-responsive ($margin-name, $margin-medium-breakpoint,
$margin-large-breakpoint, $margin-small-value, $margin-medium-value,
$margin-large-value) {
.#{$margin-name} {
margin: $margin-small-value !important;
}
@media (min-width: #{$margin-medium-breakpoint}) {
.#{$margin-name} {
margin: $margin-medium-value !important;
}
}
@media (min-width: #{$margin-large-breakpoint}) {
.#{$margin-name} {
margin: $margin-large-value !important;
}
}
}
// Responsive padding mixin. ATTENTION: Uses !important.
// Variables:
// - $padding-name : The name of the class used for the responsive padding.
// - $padding-medium-breakpoint : Medium screen breakpoint for the responsive padding.
// - $padding-large-breakpoint : Large screen breakpoint for the responsive padding.
// - $padding-small-value : Responsive padding value for smaller screens.
// - $padding-medium-value : Responsive padding value for medium screens.
// - $padding-large-value : Responsive padding value for large screens.
@mixin make-padding-responsive ($padding-name, $padding-medium-breakpoint,
$padding-large-breakpoint, $padding-small-value, $padding-medium-value,
$padding-large-value) {
.#{$padding-name} {
padding: $padding-small-value !important;
}
@media (min-width: #{$padding-medium-breakpoint}) {
.#{$padding-name} {
padding: $padding-medium-value !important;
}
}
@media (min-width: #{$padding-large-breakpoint}) {
.#{$padding-name} {
padding: $padding-large-value !important;
}
}
}
// Floats mixin. ATTENTION: Uses !important.
// NOTE: This mixin might be obsolete and not play well with others.
// Variables:
// - $float-prefix : Prefix for the class names of floats.
@mixin make-floats ($float-prefix) {
.#{$float-prefix}-left {
float: left !important;
}
.#{$float-prefix}-right {
float: right !important;
}
}