3 * Experimental: CSS3 multi-column.
5 * column-count is the maximum number of columns and column-width is the minimum
6 * width for those columns.
7 * Gets consistent with Grid Foundation even if non-BEM classes.
8 * Note: The reason for making column-width somewhat flexible is to achieve
9 * scalable designs that can fit many screen sizes. To set an exact column
10 * width, the column gap and the width of the multicol element (assuming
11 * horizontal text) must also be specified.
12 * @todo: Consider BEM classes at version 2.x, or so.
15 [class*="block-column-"],
16 [class*="block-column-"] * {
17 -webkit-box-sizing: border-box;
18 box-sizing: border-box;
21 [class*="block-column-"],
22 .item-list > [class*="block-column-"] {
29 /** https://developer.mozilla.org/en-US/docs/Web/CSS/break-inside */
30 [class*="block-column-"] > .grid {
35 -webkit-column-break-inside: avoid; /* Chrome, Safari, Opera */
36 page-break-inside: avoid; /* Deprecated Firefox, works at 49.0.2 */
37 -moz-column-break-inside: avoid; /* Current Firefox, but no joy */
38 break-inside: avoid; /* IE 10+ */
39 break-inside: avoid-column;
42 [class*="block-column-"] > .grid ,
43 .item-list > [class*="block-column-"] > .grid {
48 /** Fix for broken break-inside with extremely tall grid for FF. */
49 [class*="block-column-"] .grid__content {
50 display: inline-block;
57 /** 480px with 16px base font. */
58 @media only screen and (min-width: 30em) {
59 .small-block-column-1 {
60 -webkit-columns: 30em 1;
65 .small-block-column-2 {
66 -webkit-columns: 15em 2;
72 /** 641px with 16px base font. */
73 @media only screen and (min-width: 40.063em) {
74 .medium-block-column-1 {
75 -webkit-columns: 40.063em 1;
76 -moz-columns: 40.063em 1;
80 .medium-block-column-2 {
81 -webkit-columns: 20.0315em 2;
82 -moz-columns: 20.0315em 2;
86 .medium-block-column-3 {
87 -webkit-columns: 3 auto;
92 .medium-block-column-4 {
93 -webkit-columns: 4 auto;
98 .medium-block-column-5 {
99 -webkit-columns: 5 auto;
100 -moz-columns: 5 auto;
104 .medium-block-column-6 {
105 -webkit-columns: 6 auto;
106 -moz-columns: 6 auto;
110 .medium-block-column-7 {
111 -webkit-columns: 7 auto;
112 -moz-columns: 7 auto;
116 .medium-block-column-8 {
117 -webkit-columns: 8 auto;
118 -moz-columns: 8 auto;
122 .medium-block-column-9 {
123 -webkit-columns: 9 auto;
124 -moz-columns: 9 auto;
128 .medium-block-column-10 {
129 -webkit-columns: 10 auto;
130 -moz-columns: 10 auto;
134 .medium-block-column-11 {
135 -webkit-columns: 11 auto;
136 -moz-columns: 11 auto;
140 .medium-block-column-12 {
141 -webkit-columns: 12 auto;
142 -moz-columns: 12 auto;
147 /** 1025px with 16px base font. */
148 @media only screen and (min-width: 64.063em) {
149 .large-block-column-1 {
150 -webkit-columns: 64.063em 1;
151 -moz-columns: 64.063em 1;
155 .large-block-column-2,
156 .large-block-column-3.block-count-2,
157 .large-block-column-4.block-count-2 {
158 -webkit-columns: 32.0315em 2;
159 -moz-columns: 32.0315em 2;
160 columns: 32.0315em 2;
163 .large-block-column-3,
164 .large-block-column-4.block-count-3 {
165 -webkit-columns: 3 auto;
166 -moz-columns: 3 auto;
170 .large-block-column-4 {
171 -webkit-columns: 4 auto;
172 -moz-columns: 4 auto;
176 .large-block-column-5 {
177 -webkit-columns: 5 auto;
178 -moz-columns: 5 auto;
182 .large-block-column-6 {
183 -webkit-columns: 6 auto;
184 -moz-columns: 6 auto;
188 .large-block-column-7 {
189 -webkit-columns: 7 auto;
190 -moz-columns: 7 auto;
194 .large-block-column-8 {
195 -webkit-columns: 8 auto;
196 -moz-columns: 8 auto;
200 .large-block-column-9 {
201 -webkit-columns: 9 auto;
202 -moz-columns: 9 auto;
206 .large-block-column-10 {
207 -webkit-columns: 10 auto;
208 -moz-columns: 10 auto;
212 .large-block-column-11 {
213 -webkit-columns: 11 auto;
214 -moz-columns: 11 auto;
218 .large-block-column-12 {
219 -webkit-columns: 12 auto;
220 -moz-columns: 12 auto;