base_css-rails 1.2 → 1.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -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
+ }