base_css-rails 1.2 → 1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,682 @@
1
+ /* ==========================================================================
2
+
3
+ Base Stylesheet - http://git.io/base
4
+ Author: Matthew Hartman - http://www.matthewhartman.com.au/
5
+ Version: 1.5 - Last Updated: 21st June, 2013
6
+
7
+ ========================================================================== */
8
+
9
+ @import "mixins"; // Import the base mixins
10
+
11
+ // Global Defaults
12
+ $mobile-container: 100%;
13
+ $tablet-container: 720px;
14
+ $desktop-container: 960px;
15
+
16
+
17
+ // Resonsive Design Break Points
18
+ $mobile-breakpoint: $tablet-container + 19px;
19
+ $tablet-breakpoint: $tablet-container + 20px;
20
+ $desktop-breakpoint: $desktop-container + 39px;
21
+
22
+ // Heading Size
23
+ $h1: 40;
24
+ $h2: 32;
25
+ $h3: 26;
26
+ $h4: 20;
27
+ $h5: 18;
28
+ $h6: 16;
29
+
30
+
31
+ /* General Resets */
32
+ * { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
33
+ article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }
34
+ html, button, input, select, textarea { font-family: sans-serif; }
35
+ body, form, fieldset, legend, input, select, textarea, button { margin: 0; }
36
+ html { font-size: 100%; }
37
+
38
+ /* ==========================================================================
39
+ /* -- Micro Clearfix and Helpers
40
+ ========================================================================== */
41
+
42
+ /* Micro Clearfix */
43
+ .clear:before, .clear:after { content: ""; display: table; } .clear:after { clear: both; } .clear { zoom: 1; }
44
+ .section:before, .section:after { content: ""; display: table; } .section:after { clear: both; } .section { zoom: 1; }
45
+ .checkbox:before, .checkbox:after { content: ""; display: table; } .checkbox:after { clear: both; } .checkbox { zoom: 1; }
46
+
47
+ /* Helpers */
48
+ .left { float: left; }
49
+ .right { float: right; }
50
+ .block { display: block; }
51
+ .inline-block {
52
+ display: inline-block;
53
+ *zoom: 1;
54
+ *display: inline;
55
+ }
56
+ .inline { display: inline; }
57
+ .strong { font-weight: bold; }
58
+ .italic { font-style: italic; }
59
+ .center-text { text-align: center; }
60
+ .none,
61
+ [hidden] {
62
+ display: none;
63
+ }
64
+ .visuallyhidden {
65
+ border: 0;
66
+ clip: rect(0 0 0 0);
67
+ height: 1px;
68
+ overflow: hidden;
69
+ padding: 0;
70
+ position: absolute;
71
+ width: 1px;
72
+ left: -9999em;
73
+ }
74
+ .visuallyvisible {
75
+ clip: auto;
76
+ width: auto;
77
+ height: auto;
78
+ overflow: visible;
79
+ left: 0;
80
+ }
81
+
82
+ /* Alert */
83
+ .alert {
84
+ background-color: #ffc;
85
+ @extend .block;
86
+ padding: 8px;
87
+ @include rounded(5);
88
+ }
89
+
90
+ .no-desktop { @extend .none; }
91
+
92
+ /* ==========================================================================
93
+ /* 1.0 - Document Setup (typography, links, paragraph, etc)
94
+ ========================================================================== */
95
+ /* Body */
96
+ body {
97
+ @include font-size(14);
98
+ color: #555;
99
+ background-color: #fff;
100
+ -webkit-text-size-adjust: 100%;
101
+ -ms-text-size-adjust: 100%;
102
+ }
103
+
104
+ /* Strong and Italic */
105
+ b, strong { @extend .strong; }
106
+
107
+ /* Links */
108
+ a { color: #f30; }
109
+ a:hover { text-decoration: none; }
110
+ a:focus { outline: thin dotted; }
111
+ a:active, a:hover { outline: 0; }
112
+
113
+
114
+ /* Paragraph and Small */
115
+ p, pre { margin: 1em 0; }
116
+ small { font-size: 80%; }
117
+
118
+ /* Abbreviations */
119
+ abbr[title] { border-bottom: 1px dotted; }
120
+
121
+ /* Audio */
122
+ audio, canvas, video {
123
+ @extend .inline-block;
124
+ }
125
+ audio:not([controls]) {
126
+ @extend .none;
127
+ height: 0;
128
+ }
129
+
130
+ /* Small,
131
+ Sub and Sup */
132
+ small { font-size:80%; }
133
+ sub, sup {
134
+ font-size: 75%;
135
+ line-height: 0;
136
+ position: relative;
137
+ vertical-align: baseline;
138
+ }
139
+ sup { top: -.5em; }
140
+ sub { bottom: -.25em; }
141
+
142
+ /* Definition */
143
+ dfn { @extend .italic; }
144
+
145
+ /* Images */
146
+ img {
147
+ border: 0;
148
+ -ms-interpolation-mode: bicubic;
149
+ }
150
+ svg:not(:root) { overflow: hidden; }
151
+ figure { margin: 0; }
152
+
153
+ .image-left { margin-right: 20px; }
154
+ .image-right { margin-left: 20px; }
155
+
156
+
157
+ /* 1.1 Headings - h1, h2, h3, h4, h5, h6 & other (if any)
158
+ ========================================================================== */
159
+ h1, h2, h3, h4, h5, h6 {
160
+ margin: 0;
161
+ font-weight: normal;
162
+ }
163
+ h1, .h1 {
164
+ @include font-size($h1);
165
+ margin-bottom: .2em;
166
+ }
167
+ h2, .h2 {
168
+ @include font-size($h2);
169
+ margin-bottom: .33em;
170
+ }
171
+ h3, .h3 {
172
+ @include font-size($h3);
173
+ margin-bottom: .5em;
174
+ }
175
+ h4, .h4 {
176
+ @include font-size($h4);
177
+ margin-bottom: .5em;
178
+ }
179
+ h5, .h5 {
180
+ @include font-size($h5);
181
+ margin-bottom: .5em;
182
+ }
183
+ h6, .h6 {
184
+ @include font-size($h6);
185
+ margin-bottom: .5em;
186
+ }
187
+ /* Reset Heading */
188
+ .no-style-heading {
189
+ font-size: 100%;
190
+ margin: 0;
191
+ }
192
+
193
+ /* Horizontal Rule */
194
+ hr {
195
+ border: 0;
196
+ background: none;
197
+ outline: 0;
198
+ background-color: #ddd;
199
+ margin: 2em 0;
200
+ *margin: 1em 0;
201
+ -moz-box-sizing: content-box;
202
+ box-sizing: content-box;
203
+ height: 1px;
204
+ }
205
+
206
+
207
+ /* 1.2 Quotes and Code - block quotes, quotes, code, pre, etc
208
+ ========================================================================== */
209
+ /* Block Quotes and Quotes */
210
+ blockquote {
211
+ font-family: "Georgia", "Times" serif;
212
+ @include font-size(20);
213
+ color: #777;
214
+ margin: 1em 0;
215
+ @extend .italic;
216
+ }
217
+ cite {
218
+ color: #222;
219
+ font-style: normal;
220
+ }
221
+
222
+ q { quotes: none; }
223
+ q:before, q:after {
224
+ content: '';
225
+ content: none;
226
+ }
227
+
228
+ /* Mark */
229
+ mark {
230
+ background: #ff0;
231
+ color: #111;
232
+ }
233
+
234
+ /* Code */
235
+ code, kbd, pre, samp {
236
+ font-family: monospace, serif;
237
+ _font-family: 'courier new', monospace;
238
+ font-size: 1em;
239
+ }
240
+ code {
241
+ color: #111;
242
+ padding: 2px 5px;
243
+ background-color: #f1f1f1;
244
+ @include rounded(3);
245
+ }
246
+
247
+ /* 1.3 Lists
248
+ ========================================================================== */
249
+ dl, menu, ol, ul {
250
+ margin: 1em 0;
251
+ }
252
+ ul ul, ol ol, ul ol, ol ul { margin: 0; }
253
+ dd { margin: 0 0 0 40px; }
254
+ dt { @extend .strong; }
255
+ menu, ol, ul { padding: 0 0 0 40px; }
256
+ nav ul, nav ol {
257
+ list-style: none;
258
+ list-style-image: none;
259
+ }
260
+ /* Remove Styling from List */
261
+ .no-style-list {
262
+ list-style: none;
263
+ padding: 0;
264
+ margin: 0;
265
+ }
266
+
267
+ /* 1.4 Tables
268
+ ========================================================================== */
269
+ table {
270
+ width: 100%;
271
+ table-layout: fixed;
272
+ border-collapse: collapse;
273
+ border-spacing: 0;
274
+ border-right: 1px solid #eee;
275
+ border-bottom: 1px solid #eee;
276
+ word-wrap: break-word; // CSS3 Browsers
277
+ -ms-word-wrap: break-word; // IE8
278
+ *white-space: normal; // IE7
279
+ }
280
+ table th,
281
+ table td {
282
+ padding: 8px;
283
+ text-align: left;
284
+ vertical-align: top;
285
+ border-top: 1px solid #eee;
286
+ border-left: 1px solid #eee;
287
+ }
288
+ table thead th {
289
+ vertical-align: bottom;
290
+ font-weight: bold;
291
+ background-color: #e1e1e1;
292
+ color: #333;
293
+ }
294
+ table tfoot td {
295
+ font-weight: bold;
296
+ }
297
+ table caption {
298
+ padding: 0.5em;
299
+ font-style: italic;
300
+ background-color: #eee;
301
+ border-bottom: 0;
302
+ font-weight: bold;
303
+ }
304
+
305
+ /* 1.5 Forms, Labels and Inputs
306
+ ========================================================================== */
307
+ fieldset {
308
+ border: 0;
309
+ padding: 0;
310
+ }
311
+ legend {
312
+ border: 0;
313
+ padding: 0;
314
+ white-space: normal;
315
+ *margin-left: -7px;
316
+ @extend .strong;
317
+ }
318
+ label { cursor: pointer; }
319
+
320
+ button, input, select, textarea {
321
+ font-size: 100%;
322
+ vertical-align: baseline;
323
+ *vertical-align: middle;
324
+ }
325
+
326
+ input[type=text],
327
+ input[type=password],
328
+ input[type=email],
329
+ input[type=search],
330
+ input[type=tel],
331
+ textarea {
332
+ padding: 5px 7px;
333
+ -webkit-appearance: none; // Remove Default Browser Behaviour for Safari
334
+ -moz-appearance: none; // Remove Default Browser Behaviour for Firefox
335
+ @extend .strong;
336
+ background-color: #fff;
337
+ color: #777;
338
+ border: 1px solid #ddd;
339
+ border-top: 1px solid #999;
340
+ -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
341
+ -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
342
+ box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
343
+ }
344
+ input[type=checkbox],
345
+ input[type=radio] {
346
+ cursor: pointer;
347
+ box-sizing: border-box;
348
+ padding: 0;
349
+ *height: 13px;
350
+ *width: 13px;
351
+ }
352
+
353
+ .checkbox {
354
+ @extend .block;
355
+ margin: .2em 0;
356
+ input[type=checkbox],
357
+ input[type=radio] {
358
+ @extend .left;
359
+ }
360
+ label {
361
+ padding-left: 5px;
362
+ overflow: hidden;
363
+ display: table;
364
+ *zoom: 1;
365
+ }
366
+ }
367
+
368
+ button, input { line-height: normal; }
369
+ button, select { text-transform: none; }
370
+
371
+ /* Buttons */
372
+ button,
373
+ html input[type="button"],
374
+ input[type="reset"],
375
+ input[type="submit"] {
376
+ cursor: pointer;
377
+ -webkit-appearance: button;
378
+ cursor: pointer;
379
+ *overflow: visible;
380
+ }
381
+ button[disabled],
382
+ html input[disabled] { cursor: default; }
383
+
384
+ input[type="search"] {
385
+ -webkit-appearance: textfield;
386
+ -moz-box-sizing: content-box;
387
+ -webkit-box-sizing: content-box;
388
+ box-sizing: content-box;
389
+ }
390
+ input[type="search"]::-webkit-search-cancel-button,
391
+ input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
392
+ button::-moz-focus-inner,
393
+ input::-moz-focus-inner {
394
+ border: 0;
395
+ padding: 0;
396
+ }
397
+ textarea {
398
+ overflow: auto;
399
+ vertical-align: top;
400
+ resize: none;
401
+ }
402
+
403
+ /* Custom Buttons */
404
+ .button {
405
+ @include rounded(5);
406
+ border: 0;
407
+ padding: 1em 3em;
408
+ color: #333;
409
+ text-decoration: none;
410
+ text-align: center;
411
+ @extend .inline-block;
412
+ }
413
+
414
+ .orange-button {
415
+ background-color: #fee9cc;
416
+
417
+ &:hover {
418
+ background-color: #ffe0b5;
419
+ -webkit-tap-highlight-color: #fdeed8;
420
+ } // end hover
421
+ &:active {
422
+ background-color: #fdeed8;
423
+ } // end hover
424
+ }
425
+ .button[disabled],
426
+ .button.disabled {
427
+ color: #999;
428
+ background-color: #f1f1f1;
429
+ }
430
+
431
+ .no-style-button {
432
+ @include font-size(13);
433
+ color: #f30;
434
+ text-decoration: underline;
435
+ border: 0;
436
+ background: transparent;
437
+ height: auto;
438
+ padding: 0;
439
+ cursor: pointer;
440
+ outline: 0;
441
+
442
+ &:hover {
443
+ text-decoration: none;
444
+ } // end hover
445
+ }
446
+ .no-style-button[disabled],
447
+ .no-style-button.disabled {
448
+ text-decoration: none;
449
+ color: #999;
450
+ }
451
+
452
+
453
+ /* ==========================================================================
454
+ /* 2.0 - Grid Layout (Responsive)
455
+ ========================================================================== */
456
+ /* Sections & Content Blocks */
457
+ .section { position: relative; }
458
+
459
+
460
+ /* Rows */
461
+ .row { margin: .5em 0; }
462
+ .row-one { margin: 1em 0; }
463
+ .row-two { margin: 2em 0; }
464
+ .row-three { margin: 3em 0; }
465
+
466
+ .center {
467
+ margin-left: auto;
468
+ margin-right: auto;
469
+ }
470
+
471
+ .container {
472
+ max-width: $desktop-container;
473
+ @extend .center;
474
+ padding-left: 10px;
475
+ padding-right: 10px;
476
+ }
477
+ .container-full {
478
+ max-width: $desktop-container + 20px;
479
+ @extend .center;
480
+ }
481
+
482
+ /* Fluid Grid */
483
+ .col {
484
+ margin-left: 2%;
485
+ float: left;
486
+ }
487
+ .col:first-child { margin-left: 0; }
488
+
489
+ /* Columns */
490
+ .one {
491
+ width: 6.5%;
492
+ *width: expression(Math.floor(0.065 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + "px");
493
+ }
494
+ .two {
495
+ width: 15%;
496
+ *width: expression(Math.floor(0.15 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + "px");
497
+ }
498
+ .three {
499
+ width: 23.5%;
500
+ *width: expression(Math.floor(0.235 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + "px");
501
+ }
502
+ .four {
503
+ width: 32%;
504
+ *width: expression(Math.floor(0.32 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + "px");
505
+ }
506
+ .five {
507
+ width: 40.5%;
508
+ *width: expression(Math.floor(0.405 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + "px");
509
+
510
+ }
511
+ .six {
512
+ width: 49.0%;
513
+ *width: expression(Math.floor(0.49 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + "px");
514
+ }
515
+ .seven {
516
+ width: 57.5%;
517
+ *width: expression(Math.floor(0.575 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + "px");
518
+ }
519
+ .eight {
520
+ width: 66%;
521
+ *width: expression(Math.floor(0.66 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + "px");
522
+ }
523
+ .nine {
524
+ width: 74.5%;
525
+ *width: expression(Math.floor(0.745 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + "px");
526
+ }
527
+ .ten {
528
+ width: 83%;
529
+ *width: expression(Math.floor(0.83 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + "px");
530
+ }
531
+ .eleven {
532
+ width: 91.5%;
533
+ *width: expression(Math.floor(0.915 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + "px");
534
+ }
535
+ .twelve {
536
+ width: 100%;
537
+ }
538
+
539
+ .quarter { @extend .three; }
540
+ .half { @extend .six; }
541
+ .one-third { @extend .four; }
542
+
543
+ // ==========================================================================
544
+ // -- Custom Website Styles for Desktop
545
+ // ==========================================================================
546
+
547
+ // Your custom website styles for desktop go here...
548
+
549
+
550
+
551
+ /* ==========================================================================
552
+ /* -- Tablet Devices (Layout, Modifications, etc)
553
+ ========================================================================== */
554
+ @media only screen and (min-width: $tablet-breakpoint) and (max-width: $desktop-breakpoint) {
555
+ .container, .tablet-container {
556
+ width: $tablet-container;
557
+ padding-left: 10px;
558
+ padding-right: 10px;
559
+ }
560
+
561
+ /* Tablet Grid
562
+ * For stacking full width columns, please use the new class .tablet-full */
563
+ .tablet-one { width: 6.5%; }
564
+ .tablet-two { width: 15%; }
565
+ .tablet-three { width: 23.5%; }
566
+ .tablet-four { width: 32%; }
567
+ .tablet-five { width: 40.5%; }
568
+ .tablet-six { width: 49.0%; }
569
+ .tablet-seven { width: 57.5%; }
570
+ .tablet-eight { width: 66%; }
571
+ .tablet-nine { width: 74.5%; }
572
+ .tablet-ten { width: 83%; }
573
+ .tablet-eleven { width: 91.5%; }
574
+ .tablet-twelve { width: 100%; }
575
+
576
+ .tablet-full {
577
+ clear: both;
578
+ float: none;
579
+ width: 100%;
580
+ margin: 10px 0 0 0;
581
+ display: block;
582
+ }
583
+ .tablet-full:first-child {
584
+ margin-top: 0;
585
+ }
586
+
587
+ .tablet-center {
588
+ margin-left: auto;
589
+ margin-right: auto;
590
+ float: none;
591
+ }
592
+ .tablet-left { float: left; }
593
+ .tablet-right { float: right; }
594
+ .tablet-no-float { float: none; }
595
+
596
+ .tablet-center:first-child { margin-left: auto; }
597
+ .tablet-center-text {
598
+ text-align: center;
599
+ }
600
+
601
+ .no-tablet { display: none; }
602
+ .show-tablet { display: block; }
603
+
604
+
605
+ // ==========================================================================
606
+ // -- Custom Website Styles for Tablet Devices
607
+ // ==========================================================================
608
+
609
+ // Your custom website styles for tablet devices go here...
610
+
611
+
612
+
613
+
614
+ } /* End Tablet Media Query */
615
+
616
+
617
+ /* ==========================================================================
618
+ /* -- Mobile Devices (Layout, Modifications, etc)
619
+ ========================================================================== */
620
+ @media only screen and (max-width: $mobile-breakpoint) {
621
+
622
+ /* Mobile Grid
623
+ * For stacking full width columns, please use the new class .mobile-full */
624
+ .mobile-one { width: 6.5%; }
625
+ .mobile-two { width: 15%; }
626
+ .mobile-three { width: 23.5%; }
627
+ .mobile-four { width: 32%; }
628
+ .mobile-five { width: 40.5%; }
629
+ .mobile-six { width: 49.0%; }
630
+ .mobile-seven { width: 57.5%; }
631
+ .mobile-eight { width: 66%; }
632
+ .mobile-nine { width: 74.5%; }
633
+ .mobile-ten { width: 83%; }
634
+ .mobile-eleven { width: 91.5%; }
635
+ .mobile-twelve { width: 100%; }
636
+
637
+ .mobile-full {
638
+ clear: both;
639
+ float: none;
640
+ width: 100%;
641
+ margin: 10px 0 0 0;
642
+ display: block;
643
+ }
644
+ .mobile-full:first-child {
645
+ margin-top: 0;
646
+ }
647
+ .mobile-center {
648
+ margin-left: auto;
649
+ margin-right: auto;
650
+ float: none;
651
+ }
652
+ .mobile-center:first-child { margin-left: auto; }
653
+ .mobile-center-text {
654
+ text-align: center;
655
+ }
656
+ .mobile-left { float: left; }
657
+ .mobile-right { float: right; }
658
+ .mobile-no-float { float: none; }
659
+
660
+ .container, .mobile-container {
661
+ padding-left: 20px;
662
+ padding-right: 20px;
663
+ }
664
+
665
+ /* Mobile Tables */
666
+ table th,
667
+ table td {
668
+ padding: 4px;
669
+ }
670
+
671
+ .no-mobile { display: none; }
672
+ .show-mobile { display: block; }
673
+
674
+
675
+ // ==========================================================================
676
+ // -- Custom Website Styles for Mobile Devices
677
+ // ==========================================================================
678
+
679
+ // Your custom website styles for mobile devices go here...
680
+
681
+
682
+ } /* End Mobile Media Query */
@@ -0,0 +1,27 @@
1
+ // ==========================================================================
2
+
3
+ // Base Mixins - built with SASS - http://sass-lang.com/
4
+ // Theme URI: http://git.io/base
5
+ // Author: Matthew Hartman - http://www.matthewhartman.com.au/
6
+ // Version: 0.1 - Last Updated: 7th June, 2013
7
+
8
+ // ==========================================================================
9
+
10
+ // Font Sizes (REMs with PX fallback for older browsers)
11
+ @mixin font-size($size) {
12
+ font-size: $size + px;
13
+ font-size: ($size/16) + rem;
14
+ }
15
+
16
+ // Line Height Sizes (REMs with PX fallback for older browsers)
17
+ @mixin line-height($size) {
18
+ font-size: $size + px;
19
+ font-size: ($size/16) + rem;
20
+ }
21
+
22
+ // Rounded Corners
23
+ @mixin rounded($radius) {
24
+ -webkit-border-radius: ($radius) + px;
25
+ -moz-border-radius: ($radius) + px;
26
+ border-radius: ($radius) + px;
27
+ }