Sass Mixins to generate Flexbox grid.
Flexbox Grid Mixins is Sass Mixins library to help you write well-structured, readable, maintainable, component-based grid using Flexbox (CSS Flexible Box Layout Module).
Flexbox Grid Mixins documentation: https://thingsym.github.io/flexbox-grid-mixins/
<div class="grid">
<div class="grid__col-3">
3
</div>
<div class="grid__col-9">
9
</div>
</div>
@import 'node_modules/flexbox-grid-mixins/sass/flexbox-grid-mixins';
$default-grid-gutter: 2%;
.grid {
@include grid($gutter: $default-grid-gutter);
> .grid__col-3 {
@include grid-col($col: 3, $gutter: $default-grid-gutter);
}
> .grid__col-9 {
@include grid-col($col: 9, $gutter: $default-grid-gutter);
}
}
@use 'node_modules/flexbox-grid-mixins/dart-sass/flexbox-grid-mixins';
$default-grid-gutter: 2%;
.grid {
@include flexbox-grid-mixins.grid($gutter: $default-grid-gutter);
> .grid__col-3 {
@include flexbox-grid-mixins.grid-col($col: 3, $gutter: $default-grid-gutter);
}
> .grid__col-9 {
@include flexbox-grid-mixins.grid-col($col: 9, $gutter: $default-grid-gutter);
}
}
.grid {
-webkit-box-sizing: border-box;
box-sizing: border-box;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
margin-left: -1%;
margin-right: -1%;
}
.grid > .grid__col-3 {
-webkit-box-sizing: border-box;
box-sizing: border-box;
-webkit-box-flex: 0;
-ms-flex: 0 0 23%;
flex: 0 0 23%;
margin-left: 1%;
margin-right: 1%;
margin-bottom: 2%;
}
.grid > .grid__col-9 {
-webkit-box-sizing: border-box;
box-sizing: border-box;
-webkit-box-flex: 0;
-ms-flex: 0 0 73%;
flex: 0 0 73%;
margin-left: 1%;
margin-right: 1%;
margin-bottom: 2%;
}
$ npm install flexbox-grid-mixins --save-dev
$ yarn add flexbox-grid-mixins --dev
Include sass/\_flexbox-grid-mixins.scss
or dart-sass/\_flexbox-grid-mixins.scss
in the appropriate location in your project.
Note: LibSass is Deprecated. See Future Plans.
@import 'flexbox-grid-mixins';
Example : import from node_modules
@import 'node_modules/flexbox-grid-mixins/sass/flexbox-grid-mixins';
.grid {
@include grid();
}
.grid__col-3 {
@include grid-col(3);
}
.grid__col-9 {
@include grid-col(9);
}
@use 'flexbox-grid-mixins';
Example : import from node_modules
@use 'node_modules/flexbox-grid-mixins/dart-sass/flexbox-grid-mixins';
.grid {
@include flexbox-grid-mixins.grid();
}
.grid__col-3 {
@include flexbox-grid-mixins.grid-col(3);
}
.grid__col-9 {
@include flexbox-grid-mixins.grid-col(9);
}
See Flexbox Grid Mixins documentation: http://thingsym.github.io/flexbox-grid-mixins/
- Flexbox Grid Mixins Example
- Holy Grail Layout - Using Flexbox Grid Mixins
- Responsive web design - Using Flexbox Grid Mixins
- Unit-Set Grid (Experimental stage)
- Box Sizing using Default Values
- Stack
- Grid Type
- Testing Stick Out Grid
- Flexbox Grid Mixins Example
- Holy Grail Layout - Using Flexbox Grid Mixins
- Responsive web design - Using Flexbox Grid Mixins
- Unit-Set Grid (Experimental stage)
- Box Sizing using Default Values
- Stack
- Grid Type
- Testing Stick Out Grid
- run
$ sudo yum install nodejs npm
- run
$ sudo npm install --global gulp-cli
- run
$ sudo npm install --global npm-check-updates
(optional) - Forking on GitHub
- run
$ cd /path/to/flexbox-grid-mixins
- run
$ npm install
- run
$ gulp serve
- Access URL http://localhost:3000
Small patches and bug reports can be submitted a issue tracker in Github. Forking on Github is another good way. You can send a pull request.
- Fork Flexbox Grid Mixins from GitHub repository
- Create a feature branch: git checkout -b my-new-feature
- Commit your changes: git commit -am 'Add some feature'
- Push to the branch: git push origin my-new-feature
- Create new Pull Request on GitHub
- Version 0.3.1
- update example
- fix items row/column alignment example
- add auto margin example
- Version 0.3.0
- add example for dart sass
- add Flexbox Grid Mixins for Dart Sass
- add dart sass workfows with gulpfile.js
- Version 0.2.2
- remove .travis.yml, change CI/CD to GitHub Actions
- Version 0.2.1
- auto release to npm only version tags
- gulp bump up version to 4.0
- Version 0.2.0
- update example
- update package.json
- add Default Values flexbox-grid-mixins-stack
- change margin property, remove @mixin, grid-margin and grid-col-margin
- remove breakpoint value of col argument
- remove condensed argument
- change grid-type from argument to Default Values flexbox-grid-mixins-grid-type
- remove bower.json
- add .travis.yml
- Version 0.1.6
- add Default Values $flexbox-grid-mixins-box-sizing
- update package.json
- change lint from scss-lint to stylelint
- Version 0.1.5
- update package.json
- add optional arguments $shorthand to @mixin grid-col
- Version 0.1.4
- update example
- update document
- fix conditional expression
- add optional arguments $width, $max-width, $min-width, $height, $max-height and $min-height to @mixin grid-col
- enable flex-grow with number column
- add positive preset column
- change readme.md file name to upper case
- Version 0.1.3
- rename folder to docs from doc, change gh-pages
- update document
- update example
- add optional arguments $flex-direction and $flex-wrap to the mixin grid
- Version 0.1.2
- update document
- update example
- improve unit-set column, using CSS calc()
- Version 0.1.1
- fix breakpoint preset column
- fix example
- fix Holy Grail Layout
- Version 0.1.0
- Initial release.
Licensed under the MIT License.
Copyright (c) 2016-2020 thingsym