Snippets
Created by
Daniel Sokolowski
last modified
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 | /*
Light Column Grid v2017-May-04
##############################
See: https://bitbucket.org/snippets/danielsokolowski/d68x/light-column-gird-system
TODO,Jun-13: possibly rather then negative margins use calc and space-between to avoid issues with horizontal scroll on small devices, see: https://stackoverflow.com/questions/20626685/better-way-to-set-distance-between-flexbox-items
Example:
```
<div class="columnWrapper">
<div class="column width-4/12">
...
</div>
<div class="column width-8/12">
<!-- assuming `display: inline-block` for img-->
<p>
<img class="width-4/12" ... >Lorem lipsum</p>
</p>
</div>
</div>
```
*/
/*
Make padding grow in-ward
=========================
Apply a natural box layout model to all elements, but allowing components to change, which is
required for our column (`width-*`) classes to ensure padding does not effect their total width.
If below `html` conflicts with your exisiting layout comment it out and uncomment `box-sizing: border-box` in the `.cloumn` definition.
*/
html {
box-sizing: border-box;
}
*, *:before, *:after {
box-sizing: inherit;
}
/*
* The 12 column based grid
*
* Class name leverage escaping of characters - see: https://mathiasbynens.be/notes/css-escapes, Note that these can be used without the column class
*/
.columnWrapper {
display: flex;
flex-wrap: wrap;
margin-left: -1em;
margin-right: -1em;
}
.column {
padding-left: 1em;
padding-right: 1em;
/*box-sizing: border-box;*/
}
.column.equalHeights {
display: flex;
}
.width-1\/12 {
width: calc(100% / 12)
}
.width-2\/12 {
width: calc(200% / 12)
}
.width-3\/12 {
width: calc(300% / 12)
}
.width-4\/12 {
width: calc(400% / 12);
}
.width-5\/12 {
width: calc(500% / 12)
}
.width-6\/12 {
width: calc(600% / 12)
}
.width-7\/12 {
width: calc(700% / 12)
}
.width-8\/12 {
width: calc(800% / 12)
}
.width-9\/12 {
width: calc(900% / 12)
}
.width-10\/12 {
width: calc(1000% / 12)
}
.width-11\/12 {
width: calc(1100% / 12)
}
.width-12\/12 {
width: 100%
}
/* on mobile devices go full width for all columns sizes */
@media only screen and (max-width: 425px) {
.column {
width: 100%;
padding-left: 10px;
padding-right: 10px;
}
}
|
Comments (0)
You can clone a snippet to your computer for local editing. Learn more.