app_sleuth 0.0.1.pre
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.
- data/.gitignore +25 -0
- data/Gemfile +7 -0
- data/LICENSE +22 -0
- data/README.md +29 -0
- data/Rakefile +2 -0
- data/app_sleuth.gemspec +20 -0
- data/bin/app_sleuth +20 -0
- data/config.ru +10 -0
- data/lib/app_sleuth.rb +10 -0
- data/lib/app_sleuth/colors.rb +36 -0
- data/lib/app_sleuth/fonts.rb +108 -0
- data/lib/app_sleuth/server.rb +22 -0
- data/lib/app_sleuth/server/assets/css/style.css +910 -0
- data/lib/app_sleuth/server/assets/js/libs/jquery-1.7.1.js +9266 -0
- data/lib/app_sleuth/server/assets/js/libs/jquery-1.7.1.min.js +4 -0
- data/lib/app_sleuth/server/assets/js/libs/modernizr-2.5.3.min.js +4 -0
- data/lib/app_sleuth/server/assets/js/plugins.js +11 -0
- data/lib/app_sleuth/server/assets/js/script.js +26 -0
- data/lib/app_sleuth/server/assets/sass/_boilerplate.scss +88 -0
- data/lib/app_sleuth/server/assets/sass/_marcotte-grid.scss +206 -0
- data/lib/app_sleuth/server/assets/sass/_normalize.scss +504 -0
- data/lib/app_sleuth/server/assets/sass/_print.scss +19 -0
- data/lib/app_sleuth/server/assets/sass/mixins/_mixins.scss +136 -0
- data/lib/app_sleuth/server/assets/sass/mixins/addons/_button.scss +170 -0
- data/lib/app_sleuth/server/assets/sass/mixins/addons/_font-family.scss +30 -0
- data/lib/app_sleuth/server/assets/sass/mixins/addons/_html5-input-types.scss +36 -0
- data/lib/app_sleuth/server/assets/sass/mixins/addons/_non-semantic-helpers.scss +58 -0
- data/lib/app_sleuth/server/assets/sass/mixins/addons/_position.scss +30 -0
- data/lib/app_sleuth/server/assets/sass/mixins/addons/_timing-functions.scss +32 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_animation.scss +171 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_appearance.scss +7 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_background-clip.scss +10 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_background-image.scss +147 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_background-origin.scss +10 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_background-size.scss +15 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_border-image.scss +7 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_border-radius.scss +59 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_box-shadow.scss +16 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_box-sizing.scss +8 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_columns.scss +67 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_flex-box.scss +67 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_font-smoothing.scss +9 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_inline-block.scss +10 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_linear-gradient.scss +41 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_radial-gradient.scss +31 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_transform.scss +57 -0
- data/lib/app_sleuth/server/assets/sass/mixins/css3/_transition.scss +104 -0
- data/lib/app_sleuth/server/assets/sass/mixins/functions/_deprecated-webkit-gradient.scss +36 -0
- data/lib/app_sleuth/server/assets/sass/mixins/functions/_linear-gradient.scss +23 -0
- data/lib/app_sleuth/server/assets/sass/mixins/functions/_modular-scale.scss +40 -0
- data/lib/app_sleuth/server/assets/sass/mixins/functions/_radial-gradient.scss +15 -0
- data/lib/app_sleuth/server/assets/sass/mixins/functions/_render-gradients.scss +14 -0
- data/lib/app_sleuth/server/assets/sass/mixins/functions/_tint-shade.scss +9 -0
- data/lib/app_sleuth/server/assets/sass/mixins/hacks/_ie.scss +37 -0
- data/lib/app_sleuth/server/assets/sass/style.scss +219 -0
- data/lib/app_sleuth/server/views/colors.html.erb +44 -0
- data/lib/app_sleuth/version.rb +3 -0
- metadata +124 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// ==|== print styles =======================================================
|
|
2
|
+
// Print styles.
|
|
3
|
+
// Inlined to avoid required HTTP connection: h5bp.com/r
|
|
4
|
+
// ========================================================================== */
|
|
5
|
+
|
|
6
|
+
@media print {
|
|
7
|
+
* { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
|
|
8
|
+
a, a:visited { text-decoration: underline; }
|
|
9
|
+
a[href]:after { content: " (" attr(href) ")"; }
|
|
10
|
+
abbr[title]:after { content: " (" attr(title) ")"; }
|
|
11
|
+
.ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; } /* Don't show links for images, or javascript/internal links */
|
|
12
|
+
pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
|
|
13
|
+
thead { display: table-header-group; } /* h5bp.com/t */
|
|
14
|
+
tr, img { page-break-inside: avoid; }
|
|
15
|
+
img { max-width: 100% !important; }
|
|
16
|
+
@page { margin: 0.5cm; }
|
|
17
|
+
p, h2, h3 { orphans: 3; widows: 3; }
|
|
18
|
+
h2, h3 { page-break-after: avoid; }
|
|
19
|
+
}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
// LivingSocial SCSS Mixins
|
|
2
|
+
// Combination of Thoughtbots Bourbon, LESS Mixins (Preboot) & Less Elements
|
|
3
|
+
// -----------------------------------------------------------------
|
|
4
|
+
|
|
5
|
+
// Custom Functions
|
|
6
|
+
@import "functions/deprecated-webkit-gradient";
|
|
7
|
+
@import "functions/modular-scale";
|
|
8
|
+
@import "functions/tint-shade";
|
|
9
|
+
|
|
10
|
+
// CSS3 Mixins
|
|
11
|
+
@import "css3/animation";
|
|
12
|
+
@import "css3/appearance";
|
|
13
|
+
@import "css3/background-image";
|
|
14
|
+
@import "css3/background-clip";
|
|
15
|
+
@import "css3/background-origin";
|
|
16
|
+
@import "css3/background-size";
|
|
17
|
+
@import "css3/border-image";
|
|
18
|
+
@import "css3/border-radius";
|
|
19
|
+
@import "css3/box-shadow";
|
|
20
|
+
@import "css3/box-sizing";
|
|
21
|
+
@import "css3/columns";
|
|
22
|
+
@import "css3/flex-box";
|
|
23
|
+
@import "css3/font-smoothing";
|
|
24
|
+
@import "css3/inline-block";
|
|
25
|
+
@import "css3/linear-gradient";
|
|
26
|
+
@import "css3/radial-gradient";
|
|
27
|
+
@import "css3/transform";
|
|
28
|
+
@import "css3/transition";
|
|
29
|
+
|
|
30
|
+
// Addons & other mixins
|
|
31
|
+
@import "addons/button";
|
|
32
|
+
@import "addons/font-family";
|
|
33
|
+
@import "addons/html5-input-types";
|
|
34
|
+
@import "addons/non-semantic-helpers";
|
|
35
|
+
@import "addons/position";
|
|
36
|
+
@import "addons/timing-functions";
|
|
37
|
+
|
|
38
|
+
// Hacks
|
|
39
|
+
@import "hacks/ie";
|
|
40
|
+
|
|
41
|
+
// Webkit-style focus
|
|
42
|
+
// ------------------
|
|
43
|
+
@mixin tab-focus() {
|
|
44
|
+
// Default
|
|
45
|
+
outline: thin dotted;
|
|
46
|
+
// Webkit
|
|
47
|
+
outline: 5px auto -webkit-focus-ring-color;
|
|
48
|
+
outline-offset: -2px;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// Center-align a block level element
|
|
52
|
+
// ----------------------------------
|
|
53
|
+
@mixin center-block() {
|
|
54
|
+
display: block;
|
|
55
|
+
margin-left: auto;
|
|
56
|
+
margin-right: auto;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
// Sizing shortcuts
|
|
61
|
+
// -------------------------
|
|
62
|
+
@mixin size($height: 5px, $width: 5px) {
|
|
63
|
+
width: $width;
|
|
64
|
+
height: $height;
|
|
65
|
+
}
|
|
66
|
+
@mixin square($size: 5px) {
|
|
67
|
+
@include size($size, $size);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
// Placeholder text
|
|
71
|
+
// -------------------------
|
|
72
|
+
@mixin placeholder($color: $placeholderText) {
|
|
73
|
+
:-moz-placeholder {
|
|
74
|
+
color: $color;
|
|
75
|
+
}
|
|
76
|
+
::-webkit-input-placeholder {
|
|
77
|
+
color: $color;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
// Site container
|
|
83
|
+
// -------------------------
|
|
84
|
+
@mixin container-fixed() {
|
|
85
|
+
width: $gridRowWidth;
|
|
86
|
+
margin-left: auto;
|
|
87
|
+
margin-right: auto;
|
|
88
|
+
@include clearfix();
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
// User select
|
|
93
|
+
// For selecting text on the page
|
|
94
|
+
@mixin user-select($select) {
|
|
95
|
+
-webkit-user-select: $select;
|
|
96
|
+
-moz-user-select: $select;
|
|
97
|
+
-o-user-select: $select;
|
|
98
|
+
user-select: $select;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
// Resize anything
|
|
102
|
+
@mixin resizable($direction: both) {
|
|
103
|
+
resize: $direction; // Options: horizontal, vertical, both
|
|
104
|
+
overflow: auto; // Safari fix
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
// CSS3 Content Columns
|
|
108
|
+
@mixin content-columns($columnCount, $columnGap: $gridColumnGutter) {
|
|
109
|
+
-webkit-column-count: $columnCount;
|
|
110
|
+
-moz-column-count: $columnCount;
|
|
111
|
+
column-count: $columnCount;
|
|
112
|
+
-webkit-column-gap: $columnGap;
|
|
113
|
+
-moz-column-gap: $columnGap;
|
|
114
|
+
column-gap: $columnGap;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
// Opacity
|
|
118
|
+
@mixin opacity($opacity: 100) {
|
|
119
|
+
opacity: $opacity / 100;
|
|
120
|
+
filter: alpha(opacity=$opacity);
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
// BACKGROUNDS
|
|
126
|
+
// --------------------------------------------------
|
|
127
|
+
|
|
128
|
+
// Add an alphatransparency value to any background or border color (via Elyse Holladay)
|
|
129
|
+
@mixin translucent-background($color: $white, $alpha: 1) {
|
|
130
|
+
background-color: hsla(hue($color), saturation($color), lightness($color), $alpha);
|
|
131
|
+
}
|
|
132
|
+
@mixin translucent-border($color: $white, $alpha: 1) {
|
|
133
|
+
border-color: hsla(hue($color), saturation($color), lightness($color), $alpha);
|
|
134
|
+
@include background-clip(padding-box);
|
|
135
|
+
}
|
|
136
|
+
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
@mixin button ($style: simple, $base-color: #4294f0) {
|
|
2
|
+
|
|
3
|
+
@if type-of($style) == color {
|
|
4
|
+
$base-color: $style;
|
|
5
|
+
$style: simple;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
@if $style == simple {
|
|
9
|
+
@include simple($base-color);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
@else if $style == shiny {
|
|
13
|
+
@include shiny($base-color);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
@else if $style == pill {
|
|
17
|
+
@include pill($base-color);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
@mixin simple ($base-color) {
|
|
22
|
+
$stop-gradient: adjust-color($base-color, $saturation: 9%, $lightness: -11%);
|
|
23
|
+
$border: adjust-color($base-color, $saturation: 9%, $lightness: -14%);
|
|
24
|
+
$color: hsl(0, 0, 100%);
|
|
25
|
+
$inset-shadow: adjust-color($base-color, $saturation: -8%, $lightness: 15%);
|
|
26
|
+
$text-shadow: adjust-color($base-color, $saturation: 15%, $lightness: -18%);
|
|
27
|
+
|
|
28
|
+
@if lightness($base-color) > 70% {
|
|
29
|
+
$color: hsl(0, 0, 20%);
|
|
30
|
+
$text-shadow: adjust-color($base-color, $saturation: 10%, $lightness: 4%);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
border: 1px solid $border;
|
|
34
|
+
@include border-radius (3px);
|
|
35
|
+
@include box-shadow (inset 0 1px 0 0 $inset-shadow);
|
|
36
|
+
color: $color;
|
|
37
|
+
display: inline;
|
|
38
|
+
font-size: 11px;
|
|
39
|
+
font-weight: bold;
|
|
40
|
+
@include linear-gradient ($base-color, $stop-gradient);
|
|
41
|
+
padding: 6px 18px 7px;
|
|
42
|
+
text-shadow: 0 1px 0 $text-shadow;
|
|
43
|
+
-webkit-background-clip: padding-box;
|
|
44
|
+
|
|
45
|
+
&:hover {
|
|
46
|
+
$base-color-hover: adjust-color($base-color, $saturation: -4%, $lightness: -5%);
|
|
47
|
+
$stop-gradient-hover: adjust-color($base-color, $saturation: 8%, $lightness: -14%);
|
|
48
|
+
$inset-shadow-hover: adjust-color($base-color, $saturation: -7%, $lightness: 5%);
|
|
49
|
+
|
|
50
|
+
@include box-shadow (inset 0 1px 0 0 $inset-shadow-hover);
|
|
51
|
+
cursor: pointer;
|
|
52
|
+
@include linear-gradient ($base-color-hover, $stop-gradient-hover);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
&:active {
|
|
56
|
+
$border-active: adjust-color($base-color, $saturation: 9%, $lightness: -14%);
|
|
57
|
+
$inset-shadow-active: adjust-color($base-color, $saturation: 7%, $lightness: -17%);
|
|
58
|
+
|
|
59
|
+
border: 1px solid $border-active;
|
|
60
|
+
@include box-shadow (inset 0 0 8px 4px $inset-shadow-active, inset 0 0 8px 4px $inset-shadow-active, 0 1px 1px 0 $grayLightest);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
@mixin shiny($base-color) {
|
|
65
|
+
$second-stop: adjust-color($base-color, $red: -56, $green: -50, $blue: -33);
|
|
66
|
+
$third-stop: adjust-color($base-color, $red: -86, $green: -75, $blue: -48);
|
|
67
|
+
$fourth-stop: adjust-color($base-color, $red: -79, $green: -70, $blue: -46);
|
|
68
|
+
$border: adjust-color($base-color, $red: -117, $green: -111, $blue: -81);
|
|
69
|
+
$border-bottom: adjust-color($base-color, $red: -126, $green: -127, $blue: -122);
|
|
70
|
+
$color: hsl(0, 0, 100%);
|
|
71
|
+
$inset-shadow: adjust-color($base-color, $red: 37, $green: 29, $blue: 12);
|
|
72
|
+
$text-shadow: adjust-color($base-color, $red: -140, $green: -141, $blue: -114);
|
|
73
|
+
|
|
74
|
+
@if lightness($base-color) > 70% {
|
|
75
|
+
$color: hsl(0, 0, 20%);
|
|
76
|
+
$text-shadow: adjust-color($base-color, $saturation: 10%, $lightness: 4%);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
@include linear-gradient(top, $base-color 0%, $second-stop 50%, $third-stop 50%, $fourth-stop 100%);
|
|
80
|
+
border: 1px solid $border;
|
|
81
|
+
border-bottom: 1px solid $border-bottom;
|
|
82
|
+
@include border-radius(5px);
|
|
83
|
+
@include box-shadow(inset 0 1px 0 0 $inset-shadow);
|
|
84
|
+
color: $color;
|
|
85
|
+
display: inline;
|
|
86
|
+
font-size: 14px;
|
|
87
|
+
font-weight: bold;
|
|
88
|
+
padding: 7px 20px 8px;
|
|
89
|
+
text-decoration: none;
|
|
90
|
+
text-align: center;
|
|
91
|
+
text-shadow: 0 -1px 1px $text-shadow;
|
|
92
|
+
|
|
93
|
+
&:hover {
|
|
94
|
+
$first-stop-hover: adjust-color($base-color, $red: -13, $green: -15, $blue: -18);
|
|
95
|
+
$second-stop-hover: adjust-color($base-color, $red: -66, $green: -62, $blue: -51);
|
|
96
|
+
$third-stop-hover: adjust-color($base-color, $red: -93, $green: -85, $blue: -66);
|
|
97
|
+
$fourth-stop-hover: adjust-color($base-color, $red: -86, $green: -80, $blue: -63);
|
|
98
|
+
|
|
99
|
+
@include linear-gradient(top, $first-stop-hover 0%, $second-stop-hover 50%, $third-stop-hover 50%, $fourth-stop-hover 100%);
|
|
100
|
+
cursor: pointer;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
&:active {
|
|
104
|
+
$inset-shadow-active: adjust-color($base-color, $red: -111, $green: -116, $blue: -122);
|
|
105
|
+
|
|
106
|
+
@include box-shadow(inset 0 0 20px 0 $inset-shadow-active, 0 1px 0 $white);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
@mixin pill($base-color) {
|
|
111
|
+
$stop-gradient: adjust-color($base-color, $hue: 8, $saturation: 14%, $lightness: -10%);
|
|
112
|
+
$border-top: adjust-color($base-color, $hue: -1, $saturation: -30%, $lightness: -15%);
|
|
113
|
+
$border-sides: adjust-color($base-color, $hue: 4, $saturation: -21%, $lightness: -21%);
|
|
114
|
+
$border-bottom: adjust-color($base-color, $hue: 8, $saturation: -11%, $lightness: -26%);
|
|
115
|
+
$color: hsl(0, 0, 100%);
|
|
116
|
+
$inset-shadow: adjust-color($base-color, $hue: -1, $saturation: -1%, $lightness: 7%);
|
|
117
|
+
$text-shadow: adjust-color($base-color, $hue: 5, $saturation: -19%, $lightness: -15%);
|
|
118
|
+
|
|
119
|
+
@if lightness($base-color) > 70% {
|
|
120
|
+
$color: hsl(0, 0, 20%);
|
|
121
|
+
$text-shadow: adjust-color($base-color, $saturation: 10%, $lightness: 4%);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
@include linear-gradient ($base-color, $stop-gradient);
|
|
125
|
+
border: 1px solid $border-top;
|
|
126
|
+
border-color: $border-top $border-sides $border-bottom;
|
|
127
|
+
@include border-radius(16px);
|
|
128
|
+
@include box-shadow(inset 0 1px 0 0 $inset-shadow, 0 1px 2px 0 #b3b3b3);
|
|
129
|
+
color: $color;
|
|
130
|
+
display: inline;
|
|
131
|
+
font-size: 11px;
|
|
132
|
+
font-weight: normal;
|
|
133
|
+
line-height: 1;
|
|
134
|
+
padding: 3px 16px 5px;
|
|
135
|
+
text-align: center;
|
|
136
|
+
text-shadow: 0 -1px 1px $text-shadow;
|
|
137
|
+
-webkit-background-clip: padding-box;
|
|
138
|
+
|
|
139
|
+
&:hover {
|
|
140
|
+
$base-color-hover: adjust-color($base-color, $lightness: -4.5%);
|
|
141
|
+
$stop-gradient-hover: adjust-color($base-color, $hue: 8, $saturation: -4%, $lightness: -15.5%);
|
|
142
|
+
$border-top: adjust-color($base-color, $hue: -1, $saturation: -17%, $lightness: -21%);
|
|
143
|
+
$border-sides: adjust-color($base-color, $hue: 4, $saturation: -2%, $lightness: -27%);
|
|
144
|
+
$border-bottom: adjust-color($base-color, $hue: 8, $saturation: 13.5%, $lightness: -32%);
|
|
145
|
+
$inset-shadow-hover: adjust-color($base-color, $saturation: -1%, $lightness: 3%);
|
|
146
|
+
$text-shadow-hover: adjust-color($base-color, $hue: 5, $saturation: -5%, $lightness: -22%);
|
|
147
|
+
|
|
148
|
+
@include linear-gradient ($base-color-hover, $stop-gradient-hover);
|
|
149
|
+
border: 1px solid $border-top;
|
|
150
|
+
border-color: $border-top $border-sides $border-bottom;
|
|
151
|
+
@include box-shadow(inset 0 1px 0 0 $inset-shadow-hover);
|
|
152
|
+
cursor: pointer;
|
|
153
|
+
text-shadow: 0 -1px 1px $text-shadow-hover;
|
|
154
|
+
-webkit-background-clip: padding-box;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
&:active {
|
|
158
|
+
$active-color: adjust-color($base-color, $hue: 4, $saturation: -12%, $lightness: -10%);
|
|
159
|
+
$border-active: adjust-color($base-color, $hue: 6, $saturation: -2.5%, $lightness: -30%);
|
|
160
|
+
$border-bottom-active: adjust-color($base-color, $hue: 11, $saturation: 6%, $lightness: -31%);
|
|
161
|
+
$inset-shadow-active: adjust-color($base-color, $hue: 9, $saturation: 2%, $lightness: -21.5%);
|
|
162
|
+
$text-shadow-active: adjust-color($base-color, $hue: 5, $saturation: -12%, $lightness: -21.5%);
|
|
163
|
+
|
|
164
|
+
background: $active-color;
|
|
165
|
+
border: 1px solid $border-active;
|
|
166
|
+
border-bottom: 1px solid $border-bottom-active;
|
|
167
|
+
@include box-shadow(inset 0 0 6px 3px $inset-shadow-active, 0 1px 0 0 $white);
|
|
168
|
+
text-shadow: 0 -1px 1px $text-shadow-active;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
// FONTS
|
|
2
|
+
// --------------------------------------------------
|
|
3
|
+
|
|
4
|
+
$georgia: Georgia, Cambria, "Times New Roman", Times, serif;
|
|
5
|
+
$helvetica: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
|
6
|
+
$lucida-grande: "Lucida Grande", Tahoma, Verdana, Arial, sans-serif;
|
|
7
|
+
$verdana: Verdana, Geneva, sans-serif;
|
|
8
|
+
$menlo: Menlo, Monaco, "Courier New", monospace;
|
|
9
|
+
|
|
10
|
+
// Font Stacks
|
|
11
|
+
@mixin font-shorthand($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
|
|
12
|
+
font-size: $size;
|
|
13
|
+
font-weight: $weight;
|
|
14
|
+
line-height: $lineHeight;
|
|
15
|
+
}
|
|
16
|
+
@mixin font-serif($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
|
|
17
|
+
font-family: $georgia;
|
|
18
|
+
@include font-shorthand($size, $weight, $lineHeight);
|
|
19
|
+
}
|
|
20
|
+
@mixin font-sans-serif($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
|
|
21
|
+
font-family: $helvetica;
|
|
22
|
+
@include font-shorthand($size, $weight, $lineHeight);
|
|
23
|
+
}
|
|
24
|
+
@mixin font-family-monospace {
|
|
25
|
+
font-family: $menlo;
|
|
26
|
+
}
|
|
27
|
+
@mixin font-monospace($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
|
|
28
|
+
@include font-family-monospace;
|
|
29
|
+
@include font-shorthand($size, $weight, $lineHeight);
|
|
30
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
//************************************************************************//
|
|
2
|
+
// Generate a variable ($all-text-inputs) with a list of all html5
|
|
3
|
+
// input types that have a text-based input, excluding textarea.
|
|
4
|
+
// http://diveintohtml5.org/forms.html
|
|
5
|
+
//************************************************************************//
|
|
6
|
+
$inputs-list: 'input[type="email"]',
|
|
7
|
+
'input[type="number"]',
|
|
8
|
+
'input[type="password"]',
|
|
9
|
+
'input[type="search"]',
|
|
10
|
+
'input[type="tel"]',
|
|
11
|
+
'input[type="text"]',
|
|
12
|
+
'input[type="url"]',
|
|
13
|
+
|
|
14
|
+
// Webkit & Gecko may change the display of these in the future
|
|
15
|
+
'input[type="color"]',
|
|
16
|
+
'input[type="date"]',
|
|
17
|
+
'input[type="datetime"]',
|
|
18
|
+
'input[type="datetime-local"]',
|
|
19
|
+
'input[type="month"]',
|
|
20
|
+
'input[type="time"]',
|
|
21
|
+
'input[type="week"]';
|
|
22
|
+
|
|
23
|
+
$unquoted-inputs-list: ();
|
|
24
|
+
|
|
25
|
+
@each $input-type in $inputs-list {
|
|
26
|
+
$unquoted-inputs-list: append($unquoted-inputs-list, unquote($input-type), comma);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
$all-text-inputs: $unquoted-inputs-list;
|
|
30
|
+
|
|
31
|
+
// You must use interpolation on the variable:
|
|
32
|
+
// #{$all-text-inputs}
|
|
33
|
+
//************************************************************************//
|
|
34
|
+
// #{$all-text-inputs}, textarea {
|
|
35
|
+
// border: 1px solid red;
|
|
36
|
+
// }
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
// For image replacement
|
|
2
|
+
@mixin ir {
|
|
3
|
+
background-color: transparent;
|
|
4
|
+
border:0;
|
|
5
|
+
font: 0/0 a;
|
|
6
|
+
text-shadow: none;
|
|
7
|
+
color: transparent;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
// Hide for both screenreaders and browsers: h5bp.com/m
|
|
11
|
+
@mixin hidden {
|
|
12
|
+
display: none !important;
|
|
13
|
+
visibility: hidden;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
// Hide only visually, but have it available for screenreaders: h5bp.com/n & h5bp.com/o */
|
|
17
|
+
@mixin visuallyhidden {
|
|
18
|
+
border: 0;
|
|
19
|
+
clip: rect(0 0 0 0);
|
|
20
|
+
height: 1px;
|
|
21
|
+
margin: -1px;
|
|
22
|
+
overflow: hidden;
|
|
23
|
+
padding: 0;
|
|
24
|
+
position: absolute;
|
|
25
|
+
width: 1px;
|
|
26
|
+
// Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
|
|
27
|
+
&.focusable {
|
|
28
|
+
&:active, &:focus {
|
|
29
|
+
clip: auto;
|
|
30
|
+
height: auto;
|
|
31
|
+
margin: 0;
|
|
32
|
+
overflow: visible;
|
|
33
|
+
position: static;
|
|
34
|
+
width: auto;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
// Hide visually and from screenreaders, but maintain layout
|
|
40
|
+
@mixin invisible {
|
|
41
|
+
visibility: hidden;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
// Clearfix
|
|
45
|
+
// --------
|
|
46
|
+
// For clearing floats like a boss h5bp.com/q
|
|
47
|
+
|
|
48
|
+
@mixin clearfix() {
|
|
49
|
+
*zoom: 1;
|
|
50
|
+
&:before,
|
|
51
|
+
&:after {
|
|
52
|
+
display: table;
|
|
53
|
+
content: "";
|
|
54
|
+
}
|
|
55
|
+
&:after {
|
|
56
|
+
clear: both;
|
|
57
|
+
}
|
|
58
|
+
}
|