maxmertkit-rails 0.0.1
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 +17 -0
- data/Gemfile +7 -0
- data/LICENSE.txt +22 -0
- data/README.md +65 -0
- data/Rakefile +1 -0
- data/lib/maxmertkit-rails/engine.rb +9 -0
- data/lib/maxmertkit-rails/version.rb +5 -0
- data/lib/maxmertkit-rails.rb +8 -0
- data/maxmertkit-rails.gemspec +19 -0
- data/vendor/assets/fonts/fontawesome/fontawesome-webfont.eot +0 -0
- data/vendor/assets/fonts/fontawesome/fontawesome-webfont.svg +255 -0
- data/vendor/assets/fonts/fontawesome/fontawesome-webfont.ttf +0 -0
- data/vendor/assets/fonts/fontawesome/fontawesome-webfont.woff +0 -0
- data/vendor/assets/fonts/zocial/zocial-regular-webfont.eot +0 -0
- data/vendor/assets/fonts/zocial/zocial-regular-webfont.svg +151 -0
- data/vendor/assets/fonts/zocial/zocial-regular-webfont.ttf +0 -0
- data/vendor/assets/fonts/zocial/zocial-regular-webfont.woff +0 -0
- data/vendor/assets/javascript/libs/easing.js +205 -0
- data/vendor/assets/javascript/libs/html5shiv.js +298 -0
- data/vendor/assets/javascript/libs/imagesLoaded.js +3 -0
- data/vendor/assets/javascript/libs/modernizr.js +4 -0
- data/vendor/assets/javascript/maxmertkit.affix.js +85 -0
- data/vendor/assets/javascript/maxmertkit.button.js +182 -0
- data/vendor/assets/javascript/maxmertkit.carousel.js +688 -0
- data/vendor/assets/javascript/maxmertkit.js +112 -0
- data/vendor/assets/javascript/maxmertkit.modal.js +301 -0
- data/vendor/assets/javascript/maxmertkit.notify.js +186 -0
- data/vendor/assets/javascript/maxmertkit.popup.js +396 -0
- data/vendor/assets/javascript/maxmertkit.scrollspy.js +107 -0
- data/vendor/assets/javascript/maxmertkit.tabs.js +228 -0
- data/vendor/assets/stylesheet/_init.scss +240 -0
- data/vendor/assets/stylesheet/_mixins.scss +218 -0
- data/vendor/assets/stylesheet/animations/_keyframes.scss +2914 -0
- data/vendor/assets/stylesheet/classes/_object.scss +14 -0
- data/vendor/assets/stylesheet/maxmertkit-animation.scss +146 -0
- data/vendor/assets/stylesheet/maxmertkit-components.scss +25 -0
- data/vendor/assets/stylesheet/maxmertkit.scss +14 -0
- data/vendor/assets/stylesheet/modificators/__methods.scss +116 -0
- data/vendor/assets/stylesheet/modificators/_size.scss +208 -0
- data/vendor/assets/stylesheet/modificators/_status.scss +195 -0
- data/vendor/assets/stylesheet/themes/_basic.scss +330 -0
- data/vendor/assets/stylesheet/widgets/_arrow.scss +74 -0
- data/vendor/assets/stylesheet/widgets/_badge.scss +15 -0
- data/vendor/assets/stylesheet/widgets/_button.scss +131 -0
- data/vendor/assets/stylesheet/widgets/_caret.scss +34 -0
- data/vendor/assets/stylesheet/widgets/_carousel.scss +146 -0
- data/vendor/assets/stylesheet/widgets/_dropdown.scss +116 -0
- data/vendor/assets/stylesheet/widgets/_form.scss +327 -0
- data/vendor/assets/stylesheet/widgets/_group.scss +245 -0
- data/vendor/assets/stylesheet/widgets/_icon.scss +92 -0
- data/vendor/assets/stylesheet/widgets/_label.scss +4 -0
- data/vendor/assets/stylesheet/widgets/_menu.scss +283 -0
- data/vendor/assets/stylesheet/widgets/_modal.scss +172 -0
- data/vendor/assets/stylesheet/widgets/_notify.scss +190 -0
- data/vendor/assets/stylesheet/widgets/_progressbar.scss +70 -0
- data/vendor/assets/stylesheet/widgets/_table.scss +270 -0
- data/vendor/assets/stylesheet/widgets/_tabs.scss +211 -0
- data/vendor/assets/stylesheet/widgets/_toolbar.scss +118 -0
- data/vendor/assets/stylesheet/widgets/_tooltip.scss +19 -0
- metadata +104 -0
@@ -0,0 +1,228 @@
|
|
1
|
+
;(function ( $, window, document, undefined ) {
|
2
|
+
|
3
|
+
var _name = 'tabs',
|
4
|
+
_defaults = {
|
5
|
+
itemsSelector: undefined // Priority!!! (if not set, then will search be data-<temsData>) You can use "data-<selector name>" to find elements everywhere in the document, or ".<class name>" and "#<id name>" to look for items inside tabs container.
|
6
|
+
, itemsData: undefined // All items are with data-tabs="<itemsData>"
|
7
|
+
, dataTarget: 'tabs-target' // Inside $item.data(<dataTarget>) we will find selector of the container with tab content.
|
8
|
+
, trigger: 'click'
|
9
|
+
|
10
|
+
, beforeOpen: $.noop()
|
11
|
+
, open: $.noop()
|
12
|
+
, ifOpenedOrNot: $.noop()
|
13
|
+
, ifNotOpened: $.noop()
|
14
|
+
, beforeClose: $.noop()
|
15
|
+
, close: $.noop()
|
16
|
+
, ifClosedOrNot: $.noop()
|
17
|
+
, ifNotClosed: $.noop()
|
18
|
+
}
|
19
|
+
|
20
|
+
Tabs = function( element_, options_ ) {
|
21
|
+
this.element = element_;
|
22
|
+
this.name = _name;
|
23
|
+
this.state = 'closed';
|
24
|
+
this.options = $.extend( {}, this.options, _defaults, options_ );
|
25
|
+
this.items = [];
|
26
|
+
|
27
|
+
this._setOptions( this.options );
|
28
|
+
|
29
|
+
|
30
|
+
this.init();
|
31
|
+
}
|
32
|
+
|
33
|
+
Tabs.prototype = new $.kit();
|
34
|
+
Tabs.prototype.constructor = Tabs;
|
35
|
+
|
36
|
+
Tabs.prototype.__setOption = function ( key_, value_ ) {
|
37
|
+
var me = this;
|
38
|
+
var $me = $(me.element);
|
39
|
+
|
40
|
+
switch( key_ ) {
|
41
|
+
case 'itemsSelector', 'itemsData', 'trigger':
|
42
|
+
me._setEvents();
|
43
|
+
break;
|
44
|
+
}
|
45
|
+
|
46
|
+
me.options[ key_ ] = value_;
|
47
|
+
}
|
48
|
+
|
49
|
+
Tabs.prototype._getItems = function() {
|
50
|
+
var me = this
|
51
|
+
, $me = $(me.element)
|
52
|
+
, _items = [];
|
53
|
+
|
54
|
+
|
55
|
+
me.options.itemsSelector !== undefined ?
|
56
|
+
$me.find( me.options.itemsSelector ).each( function( index_, item_ ) { _items.push( $(item_) ) }) :
|
57
|
+
$me.find( '[data-tabs="' + me.options.itemsData + '"]' ).each( function( index_, item_ ) { _items.push( $(item_) ) })
|
58
|
+
|
59
|
+
return _items;
|
60
|
+
}
|
61
|
+
|
62
|
+
Tabs.prototype._getItem = function( event_ ) {
|
63
|
+
var me = this
|
64
|
+
, $me = $(me.element)
|
65
|
+
, _el = undefined
|
66
|
+
, _target;
|
67
|
+
|
68
|
+
_target = $(event_.target);
|
69
|
+
|
70
|
+
if( _target.closest(me.options.itemsSelector).length > 0 ) _el = $(_target.closest(me.options.itemsSelector));
|
71
|
+
if( _target.closest('[data-tabs="'+me.options.itemsData+'"]').length > 0 ) _el = $(_target.closest('[data-tabs="'+me.options.itemsData+'"]').get(0));
|
72
|
+
if( _target.hasClass(me.options.itemsSelector) ) _el = $(_target);
|
73
|
+
|
74
|
+
return _el;
|
75
|
+
}
|
76
|
+
|
77
|
+
Tabs.prototype._unsetEvents = function() {
|
78
|
+
var me = this;
|
79
|
+
var $me = $(me.element);
|
80
|
+
|
81
|
+
$me.off( '.' + me.name );
|
82
|
+
|
83
|
+
return me;
|
84
|
+
}
|
85
|
+
|
86
|
+
Tabs.prototype._setEvents = function() {
|
87
|
+
var me = this
|
88
|
+
, $me = $(me.element)
|
89
|
+
, _eventIn
|
90
|
+
, _eventOut;
|
91
|
+
|
92
|
+
me._unsetEvents();
|
93
|
+
|
94
|
+
switch( me.options.trigger ) {
|
95
|
+
case 'hover':
|
96
|
+
_eventIn = 'mouseenter.' + me.name;
|
97
|
+
break;
|
98
|
+
|
99
|
+
case 'click':
|
100
|
+
_eventIn = 'click.' + me.name;
|
101
|
+
break;
|
102
|
+
}
|
103
|
+
|
104
|
+
$me.on( _eventIn, function( event_ ) {
|
105
|
+
var $_element = me._getItem( event_ );
|
106
|
+
|
107
|
+
if( $_element && ! me._isOpen( $_element ) )
|
108
|
+
me.open( $_element );
|
109
|
+
});
|
110
|
+
|
111
|
+
}
|
112
|
+
|
113
|
+
Tabs.prototype.init = function() {
|
114
|
+
var me = this;
|
115
|
+
var $me = $(me.element);
|
116
|
+
|
117
|
+
}
|
118
|
+
|
119
|
+
Tabs.prototype.open = function( item_ ) {
|
120
|
+
var me = this;
|
121
|
+
var $me = $(me.element);
|
122
|
+
|
123
|
+
if( me.options.enabled === true ) {
|
124
|
+
|
125
|
+
try {
|
126
|
+
var deferred = me.options.beforeOpen.call( item_ );
|
127
|
+
deferred
|
128
|
+
.done(function(){
|
129
|
+
me._open( item_ );
|
130
|
+
})
|
131
|
+
.fail(function(){
|
132
|
+
me.state = 'closed';
|
133
|
+
$me.trigger('ifNotOpened.' + me.name);
|
134
|
+
$me.trigger('ifOpenedOrNot.' + me.name);
|
135
|
+
})
|
136
|
+
} catch( e ) {
|
137
|
+
me._open( item_ );
|
138
|
+
}
|
139
|
+
|
140
|
+
}
|
141
|
+
}
|
142
|
+
|
143
|
+
Tabs.prototype._open = function( item_ ) {
|
144
|
+
var me = this
|
145
|
+
, $me = $(me.element)
|
146
|
+
, _target = $(document).find( item_.data( me.options.dataTarget ) )
|
147
|
+
|
148
|
+
|
149
|
+
if( me.options.dataTarget ) {
|
150
|
+
|
151
|
+
if( item_.data('tabs-data') !== undefined ) {
|
152
|
+
try {
|
153
|
+
$.get( item_.data('tabs-data') )
|
154
|
+
.done( function( document_, result_, answer_ ) {
|
155
|
+
if( me.close() ) {
|
156
|
+
_target.html( answer_.responseText );
|
157
|
+
me._openAnimation( item_, _target );
|
158
|
+
$me.trigger('ifOpenedOrNot.' + me.name);
|
159
|
+
}
|
160
|
+
})
|
161
|
+
.fail( function( answer_ ) {
|
162
|
+
$me.trigger('ifNotOpened.' + me.name);
|
163
|
+
$me.trigger('ifOpenedOrNot.' + me.name);
|
164
|
+
})
|
165
|
+
} catch( e ) {
|
166
|
+
$me.trigger('ifNotOpened.' + me.name);
|
167
|
+
$me.trigger('ifOpenedOrNot.' + me.name);
|
168
|
+
}
|
169
|
+
}
|
170
|
+
else
|
171
|
+
if( me.close() ) {
|
172
|
+
me._openAnimation( item_, _target );
|
173
|
+
}
|
174
|
+
}
|
175
|
+
}
|
176
|
+
|
177
|
+
Tabs.prototype._openAnimation = function( item_, target_ ) {
|
178
|
+
var me = this
|
179
|
+
, $me = $(me.element);
|
180
|
+
|
181
|
+
item_.addClass('_active_');
|
182
|
+
|
183
|
+
if( me.options.animation ) {
|
184
|
+
target_.fadeIn();
|
185
|
+
}
|
186
|
+
else {
|
187
|
+
target_.show();
|
188
|
+
}
|
189
|
+
|
190
|
+
$me.trigger('open.' + me.name);
|
191
|
+
}
|
192
|
+
|
193
|
+
Tabs.prototype.close = function() {
|
194
|
+
var me = this;
|
195
|
+
var $me = $(me.element);
|
196
|
+
|
197
|
+
$.each( me._getItems(), function( index_, item_ ) {
|
198
|
+
if( me._isOpen( item_ ) ) {
|
199
|
+
$(document).find( item_.data( me.options.dataTarget ) ).hide();
|
200
|
+
item_.removeClass('_active_');
|
201
|
+
}
|
202
|
+
});
|
203
|
+
|
204
|
+
$me.trigger('close.' + me.name);
|
205
|
+
|
206
|
+
return true;
|
207
|
+
}
|
208
|
+
|
209
|
+
Tabs.prototype._isOpen = function( item_ ) {
|
210
|
+
var me = this;
|
211
|
+
var $me = $(me.element);
|
212
|
+
|
213
|
+
return item_.hasClass( '_active_' );
|
214
|
+
}
|
215
|
+
|
216
|
+
$.fn[_name] = function( options_ ) {
|
217
|
+
return this.each(function() {
|
218
|
+
if( ! $.data( this, 'kit-' + _name ) ) {
|
219
|
+
$.data( this, 'kit-' + _name, new Tabs( this, options_ ) );
|
220
|
+
}
|
221
|
+
else {
|
222
|
+
typeof options_ === 'object' ? $.data( this, 'kit-' + _name )._setOptions( options_ ) :
|
223
|
+
typeof options_ === 'string' && options_.charAt(0) !== '_' ? $.data( this, 'kit-' + _name )[ options_ ] : $.error( 'What do you want to do?' );
|
224
|
+
}
|
225
|
+
});
|
226
|
+
}
|
227
|
+
|
228
|
+
})( jQuery, window, document );
|
@@ -0,0 +1,240 @@
|
|
1
|
+
// // ================================ %BODY% ================================ \\
|
2
|
+
body {
|
3
|
+
font: $theme__font-size $theme__font-family;
|
4
|
+
line-height: $theme__line-height;
|
5
|
+
color: $theme__color;
|
6
|
+
background-color: $theme__background-color;
|
7
|
+
// -webkit-font-smoothing: none;
|
8
|
+
-webkit-font-smoothing: antialiased;
|
9
|
+
}
|
10
|
+
|
11
|
+
// input {
|
12
|
+
// font: $theme-font-size $theme-font-family;
|
13
|
+
// }
|
14
|
+
|
15
|
+
section,
|
16
|
+
.#{$object__section} {
|
17
|
+
margin: #{$object__section-margin};
|
18
|
+
}
|
19
|
+
|
20
|
+
article,
|
21
|
+
.#{$object__article} {
|
22
|
+
margin-bottom: $object__article-margin-bottom;
|
23
|
+
}
|
24
|
+
|
25
|
+
p {
|
26
|
+
margin-bottom: $object__section-margin-bottom / 2;
|
27
|
+
}
|
28
|
+
|
29
|
+
|
30
|
+
|
31
|
+
|
32
|
+
|
33
|
+
// ================================ %HEADERS% ================================ \\
|
34
|
+
@function __get-header-size( $number ) {
|
35
|
+
@return floor($theme__font-size + (abs($number - 6) * 4.5));
|
36
|
+
}
|
37
|
+
|
38
|
+
%__init-headers {
|
39
|
+
margin-top: 0;
|
40
|
+
font-family: $theme__header-font-family;
|
41
|
+
}
|
42
|
+
|
43
|
+
@for $i from 1 through 6 {
|
44
|
+
h#{$i} {
|
45
|
+
@extend %__init-headers;
|
46
|
+
|
47
|
+
font-size: __get-header-size( $i );
|
48
|
+
line-height: __get-header-size( $i ) + $i - 6;
|
49
|
+
margin-bottom: __get-header-size( $i ) / 2;
|
50
|
+
}
|
51
|
+
}
|
52
|
+
|
53
|
+
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
|
58
|
+
// ================================ %TYPOGRAPHY% ================================ \\
|
59
|
+
|
60
|
+
small {
|
61
|
+
font-size: 85%;
|
62
|
+
}
|
63
|
+
|
64
|
+
strong {
|
65
|
+
font-weight: bold ;
|
66
|
+
}
|
67
|
+
|
68
|
+
em {
|
69
|
+
font-style: normal;
|
70
|
+
}
|
71
|
+
|
72
|
+
abbr {
|
73
|
+
border-bottom: 1px dotted;
|
74
|
+
&[title] {
|
75
|
+
cursor: help;
|
76
|
+
}
|
77
|
+
}
|
78
|
+
|
79
|
+
// --------------------- %blockquote% ---------------------
|
80
|
+
blockquote {
|
81
|
+
padding: 0 0 0 $theme__blockquote-padding;
|
82
|
+
border-left: $theme__blockquote-border;
|
83
|
+
margin:0 0 $theme__blockquote-padding;
|
84
|
+
font-weight: 300;
|
85
|
+
small {
|
86
|
+
color: $theme__blockquote__sign-color;
|
87
|
+
&:before
|
88
|
+
{
|
89
|
+
content: '\2014 \00A0';
|
90
|
+
}
|
91
|
+
}
|
92
|
+
|
93
|
+
&.#{$mixin__float-right}
|
94
|
+
{
|
95
|
+
float: right;
|
96
|
+
padding: 0 $theme__blockquote-padding 0 0;
|
97
|
+
border-left: none;
|
98
|
+
border-right: $theme__blockquote-border;
|
99
|
+
text-align: right;
|
100
|
+
}
|
101
|
+
}
|
102
|
+
|
103
|
+
// --------------------- %address% ---------------------
|
104
|
+
address {
|
105
|
+
font-style: normal ;
|
106
|
+
margin: 0 0 $object__section-margin-bottom 0;
|
107
|
+
}
|
108
|
+
|
109
|
+
// --------------------- %lists% ---------------------
|
110
|
+
ul, ol {
|
111
|
+
margin: $theme__list-margin;
|
112
|
+
padding: 0;
|
113
|
+
line-height: $theme__list-line-height;
|
114
|
+
|
115
|
+
// &.#{$modificator-type-unstyled}
|
116
|
+
// {
|
117
|
+
// list-style: none;
|
118
|
+
// margin-left: $theme__list-margin-left / 2;
|
119
|
+
// }
|
120
|
+
|
121
|
+
ul, ol
|
122
|
+
{
|
123
|
+
margin-bottom: 0;
|
124
|
+
}
|
125
|
+
}
|
126
|
+
|
127
|
+
// --------------------- %descriptions% ---------------------
|
128
|
+
dl {
|
129
|
+
margin: $theme__description-margin;
|
130
|
+
line-height: $theme__description-line-height;
|
131
|
+
|
132
|
+
dt {
|
133
|
+
font-weight: bold;
|
134
|
+
}
|
135
|
+
|
136
|
+
dd {
|
137
|
+
margin-left: $theme__description__defenition-margin-left;
|
138
|
+
}
|
139
|
+
|
140
|
+
&.#{$mod__horizontal}
|
141
|
+
{
|
142
|
+
dt {
|
143
|
+
width: $theme__description__defenition__inline-width;
|
144
|
+
float: left;
|
145
|
+
text-overflow: ellipsis;
|
146
|
+
overflow: hidden;
|
147
|
+
white-space: nowrap;
|
148
|
+
text-align: right;
|
149
|
+
}
|
150
|
+
|
151
|
+
dd {
|
152
|
+
margin-left: $theme__description__defenition__inline-width + 10px;
|
153
|
+
}
|
154
|
+
}
|
155
|
+
}
|
156
|
+
|
157
|
+
|
158
|
+
|
159
|
+
// ================================ %GRID% ================================ \\
|
160
|
+
|
161
|
+
@function __get-column-width( $column-quantity: $object__column-quantity, $column-width: $object__column-width, $gutter-width: $object__column__gutter-width ) {
|
162
|
+
@return $column-width * $column-quantity + $gutter-width * ( $column-quantity - 1 );
|
163
|
+
}
|
164
|
+
|
165
|
+
@function __get-column-offset-width( $column-quantity: $object__column-quantity, $column-width: $object__column-width, $gutter-width: $object__column__gutter-width ) {
|
166
|
+
@return $column-width * $column-quantity + $gutter-width * ( $column-quantity + 1 );
|
167
|
+
}
|
168
|
+
|
169
|
+
.#{$object__container} {
|
170
|
+
width: $object__row-width;
|
171
|
+
margin: 0 auto;
|
172
|
+
}
|
173
|
+
|
174
|
+
.#{$object__row} {
|
175
|
+
margin-left: -$object__column__gutter-width;
|
176
|
+
width: $object__row-width;
|
177
|
+
@include clearfix;
|
178
|
+
|
179
|
+
[class^='#{$object__column}'] {
|
180
|
+
float: left;
|
181
|
+
margin-left: $object__column__gutter-width;
|
182
|
+
}
|
183
|
+
|
184
|
+
@for $i from 1 through $object__column-quantity {
|
185
|
+
& > .#{$object__column}#{$i} {
|
186
|
+
width: __get-column-width($i);
|
187
|
+
}
|
188
|
+
|
189
|
+
& > .#{$object__column-offset}#{$i} {
|
190
|
+
margin-left: __get-column-offset-width($i);
|
191
|
+
}
|
192
|
+
}
|
193
|
+
}
|
194
|
+
|
195
|
+
.#{$object__row-fluid} {
|
196
|
+
width: $object__row-fluid-width + $object__row-fluid__column__gutter-width;
|
197
|
+
margin-left: -$object__row-fluid__column__gutter-width;
|
198
|
+
@include clearfix;
|
199
|
+
|
200
|
+
[class^='#{$object__column}'] {
|
201
|
+
float: left;
|
202
|
+
margin-left: $object__row-fluid__column__gutter-width;
|
203
|
+
}
|
204
|
+
|
205
|
+
@for $i from 1 through $object__column-quantity {
|
206
|
+
& > .#{$object__column}#{$i} {
|
207
|
+
width: __get-column-width($i, $object__row-fluid__column-width, $object__row-fluid__column__gutter-width);
|
208
|
+
}
|
209
|
+
|
210
|
+
& > .#{$object__column-offset}#{$i} {
|
211
|
+
margin-left: __get-column-offset-width($i, $object__row-fluid__column-width, $object__row-fluid__column__gutter-width);
|
212
|
+
}
|
213
|
+
}
|
214
|
+
}
|
215
|
+
|
216
|
+
|
217
|
+
|
218
|
+
|
219
|
+
|
220
|
+
|
221
|
+
|
222
|
+
|
223
|
+
|
224
|
+
|
225
|
+
|
226
|
+
|
227
|
+
|
228
|
+
|
229
|
+
|
230
|
+
|
231
|
+
|
232
|
+
|
233
|
+
|
234
|
+
|
235
|
+
|
236
|
+
|
237
|
+
|
238
|
+
|
239
|
+
|
240
|
+
|
@@ -0,0 +1,218 @@
|
|
1
|
+
@mixin clearfix {
|
2
|
+
*zoom: 1;
|
3
|
+
&:before,
|
4
|
+
&:after
|
5
|
+
{
|
6
|
+
display: table;
|
7
|
+
content: " ";
|
8
|
+
line-height: 0;
|
9
|
+
}
|
10
|
+
&:after
|
11
|
+
{
|
12
|
+
clear: both;
|
13
|
+
}
|
14
|
+
}
|
15
|
+
|
16
|
+
@mixin box-sizing( $box-sizing ) {
|
17
|
+
-webkit-box-sizing: $box-sizing;
|
18
|
+
-moz-box-sizing: $box-sizing;
|
19
|
+
-ms-box-sizing: $box-sizing;
|
20
|
+
-o-box-sizing: $box-sizing;
|
21
|
+
box-sizing: $box-sizing;
|
22
|
+
}
|
23
|
+
|
24
|
+
@mixin box-shadow( $box-shadow... ) {
|
25
|
+
-webkit-box-shadow: $box-shadow;
|
26
|
+
-moz-box-shadow: $box-shadow;
|
27
|
+
-ms-box-shadow: $box-shadow;
|
28
|
+
-o-box-shadow: $box-shadow;
|
29
|
+
box-shadow: $box-shadow;
|
30
|
+
}
|
31
|
+
|
32
|
+
@mixin text-shadow( $text-shadow... ) {
|
33
|
+
-webkit-text-shadow: $text-shadow;
|
34
|
+
-moz-text-shadow: $text-shadow;
|
35
|
+
-ms-text-shadow: $text-shadow;
|
36
|
+
-o-text-shadow: $text-shadow;
|
37
|
+
text-shadow: $text-shadow;
|
38
|
+
}
|
39
|
+
|
40
|
+
@mixin border-radius( $border-radius... ) {
|
41
|
+
-webkit-border-radius: $border-radius;
|
42
|
+
-moz-border-radius: $border-radius;
|
43
|
+
-ms-border-radius: $border-radius;
|
44
|
+
-o-border-radius: $border-radius;
|
45
|
+
border-radius: $border-radius;
|
46
|
+
}
|
47
|
+
|
48
|
+
@mixin gradient-stripes($angle) {
|
49
|
+
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.35, rgba(255,255,255,.35)), color-stop(.35, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,.35)), color-stop(.75, rgba(255,255,255,.35)), color-stop(.75, transparent), to(transparent))!important;
|
50
|
+
background-image: -webkit-linear-gradient($angle, rgba(255,255,255,.35) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.35) 50%, rgba(255,255,255,.35) 75%, transparent 75%, transparent)!important;
|
51
|
+
background-image: -moz-linear-gradient($angle, rgba(255,255,255,.35) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.35) 50%, rgba(255,255,255,.35) 75%, transparent 75%, transparent)!important;
|
52
|
+
background-image: -o-linear-gradient($angle, rgba(255,255,255,.35) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.35) 50%, rgba(255,255,255,.35) 75%, transparent 75%, transparent)!important;
|
53
|
+
background-image: linear-gradient($angle, rgba(255,255,255,.35) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.35) 50%, rgba(255,255,255,.35) 75%, transparent 75%, transparent)!important;
|
54
|
+
}
|
55
|
+
|
56
|
+
@mixin gradient-stripes-dark($angle) {
|
57
|
+
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.1, rgba(0,0,0,.1)), color-stop(.1, transparent), color-stop(.5, transparent), color-stop(.5, rgba(0,0,0,.1)), color-stop(.75, rgba(0,0,0,.1)), color-stop(.75, transparent), to(transparent))!important;
|
58
|
+
background-image: -webkit-linear-gradient($angle, rgba(0,0,0,.1) 25%, transparent 25%, transparent 50%, rgba(0,0,0,.1) 50%, rgba(0,0,0,.1) 75%, transparent 75%, transparent)!important;
|
59
|
+
background-image: -moz-linear-gradient($angle, rgba(0,0,0,.1) 25%, transparent 25%, transparent 50%, rgba(0,0,0,.1) 50%, rgba(0,0,0,.1) 75%, transparent 75%, transparent)!important;
|
60
|
+
background-image: -o-linear-gradient($angle, rgba(0,0,0,.1) 25%, transparent 25%, transparent 50%, rgba(0,0,0,.1) 50%, rgba(0,0,0,.1) 75%, transparent 75%, transparent)!important;
|
61
|
+
background-image: linear-gradient($angle, rgba(0,0,0,.1) 25%, transparent 25%, transparent 50%, rgba(0,0,0,.1) 50%, rgba(0,0,0,.1) 75%, transparent 75%, transparent)!important;
|
62
|
+
}
|
63
|
+
|
64
|
+
@mixin gradient-horizontal( $startColor, $endColor ) {
|
65
|
+
background-color: $endColor;
|
66
|
+
background-image: -moz-linear-gradient(left, $startColor, $endColor); // FF 3.6+
|
67
|
+
background-image: -webkit-gradient(linear, 0 0, 100% 0, from($startColor), to($endColor)); // Safari 4+, Chrome 2+
|
68
|
+
background-image: -webkit-linear-gradient(left, $startColor, $endColor); // Safari 5.1+, Chrome 10+
|
69
|
+
background-image: -o-linear-gradient(left, $startColor, $endColor); // Opera 11.10
|
70
|
+
background-image: linear-gradient(to right, $startColor, $endColor); // Standard, IE10
|
71
|
+
background-repeat: repeat-x;
|
72
|
+
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=1, startColorstr='#{ie-hex-str($startColor)}', endColorstr='#{ie-hex-str($endColor)}');
|
73
|
+
}
|
74
|
+
|
75
|
+
@mixin gradient-horizontal-three-colors($startColor, $midColor, $colorStop, $endColor) {
|
76
|
+
// background-color: mix($midColor, $endColor, 80%);
|
77
|
+
background-image: -webkit-gradient(linear, 0 0, 0 100%, from($startColor), color-stop($colorStop, $midColor), to($endColor));
|
78
|
+
background-image: -webkit-linear-gradient(left, $startColor, $midColor $colorStop, $endColor);
|
79
|
+
background-image: -moz-linear-gradient(left, top, $startColor, $midColor $colorStop, $endColor);
|
80
|
+
background-image: -o-linear-gradient(left, $startColor, $midColor $colorStop, $endColor);
|
81
|
+
background-image: linear-gradient(to right, $startColor, $midColor $colorStop, $endColor);
|
82
|
+
background-repeat: no-repeat;
|
83
|
+
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=1, startColorstr='#{ie-hex-str($startColor)}', endColorstr='#{ie-hex-str($endColor)}');
|
84
|
+
}
|
85
|
+
|
86
|
+
@mixin gradient-vertical-three-colors($startColor, $midColor, $colorStop, $endColor) {
|
87
|
+
// background-color: mix($midColor, $endColor, 80%);
|
88
|
+
background-image: -webkit-gradient(linear, 0 0, 0 100%, from($startColor), color-stop($colorStop, $midColor), to($endColor));
|
89
|
+
background-image: -webkit-linear-gradient(top, $startColor, $midColor $colorStop, $endColor);
|
90
|
+
background-image: -moz-linear-gradient(top, top, $startColor, $midColor $colorStop, $endColor);
|
91
|
+
background-image: -o-linear-gradient(top, $startColor, $midColor $colorStop, $endColor);
|
92
|
+
background-image: linear-gradient(to bottom, $startColor, $midColor $colorStop, $endColor);
|
93
|
+
background-repeat: no-repeat;
|
94
|
+
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#{ie-hex-str($startColor)}', endColorstr='#{ie-hex-str($endColor)}');
|
95
|
+
}
|
96
|
+
|
97
|
+
@mixin gradient-vertical( $startColor, $endColor ) {
|
98
|
+
background-color: mix($startColor, $endColor, 60%);
|
99
|
+
background-image: -moz-linear-gradient(top, $startColor, $endColor); // FF 3.6+
|
100
|
+
background-image: -webkit-gradient(linear, 0 0, 0 100%, from($startColor), to($endColor)); // Safari 4+, Chrome 2+
|
101
|
+
background-image: -webkit-linear-gradient(top, $startColor, $endColor); // Safari 5.1+, Chrome 10+
|
102
|
+
background-image: -o-linear-gradient(top, $startColor, $endColor); // Opera 11.10
|
103
|
+
background-image: linear-gradient(to bottom, $startColor, $endColor); // Standard, IE10
|
104
|
+
background-repeat: repeat-x;
|
105
|
+
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#{ie-hex-str($startColor)}', endColorstr='#{ie-hex-str($endColor)}');
|
106
|
+
}
|
107
|
+
|
108
|
+
@mixin animation( $animation... ) {
|
109
|
+
animation: $animation;
|
110
|
+
-webkit-animation: $animation;
|
111
|
+
-moz-animation: $animation;
|
112
|
+
-o-animation: $animation;
|
113
|
+
-ms-animation: $animation;
|
114
|
+
}
|
115
|
+
|
116
|
+
@mixin transition( $transition... ) {
|
117
|
+
transition: $transition;
|
118
|
+
-webkit-transition: $transition;
|
119
|
+
-moz-transition: $transition;
|
120
|
+
-ms-transition: $transition;
|
121
|
+
-o-transition: $transition;
|
122
|
+
}
|
123
|
+
|
124
|
+
@mixin perspective( $perspective ) {
|
125
|
+
perspective: $perspective;
|
126
|
+
-webkit-perspective: $perspective;
|
127
|
+
-moz-perspective: $perspective;
|
128
|
+
-ms-perspective: $perspective;
|
129
|
+
-o-perspective: $perspective;
|
130
|
+
}
|
131
|
+
|
132
|
+
@mixin transition-duration( $transition-duration... ) {
|
133
|
+
transition-duration: $transition-duration;
|
134
|
+
-webkit-transition-duration: $transition-duration;
|
135
|
+
-moz-transition-duration: $transition-duration;
|
136
|
+
-ms-transition-duration: $transition-duration;
|
137
|
+
-o-transition-duration: $transition-duration;
|
138
|
+
}
|
139
|
+
|
140
|
+
@mixin transition-property( $transition-property... ) {
|
141
|
+
transition-property: $transition-property;
|
142
|
+
-webkit-transition-property: $transition-property;
|
143
|
+
-moz-transition-property: $transition-property;
|
144
|
+
-ms-transition-property: $transition-property;
|
145
|
+
-o-transition-property: $transition-property;
|
146
|
+
}
|
147
|
+
|
148
|
+
@mixin transform( $transform... ) {
|
149
|
+
transform: $transform;
|
150
|
+
-webkit-transform: $transform;
|
151
|
+
-moz-transform: $transform;
|
152
|
+
-ms-transform: $transform;
|
153
|
+
-o-transform: $transform;
|
154
|
+
}
|
155
|
+
|
156
|
+
@mixin transform-style( $transform-style ) {
|
157
|
+
transform-style: $transform-style;
|
158
|
+
-webkit-transform-style: $transform-style;
|
159
|
+
-moz-transform-style: $transform-style;
|
160
|
+
-ms-transform-style: $transform-style;
|
161
|
+
-o-transform-style: $transform-style;
|
162
|
+
}
|
163
|
+
|
164
|
+
@mixin transform-origin( $transform-origin... ) {
|
165
|
+
transform-origin: $transform-origin;
|
166
|
+
-webkit-transform-origin: $transform-origin;
|
167
|
+
-moz-transform-origin: $transform-origin;
|
168
|
+
-ms-transform-origin: $transform-origin;
|
169
|
+
-o-transform-origin: $transform-origin;
|
170
|
+
}
|
171
|
+
|
172
|
+
@mixin filter( $filter... ) {
|
173
|
+
filter: $filter;
|
174
|
+
-webkit-filter: $filter;
|
175
|
+
-moz-filter: $filter;
|
176
|
+
-ms-filter: $filter;
|
177
|
+
-o-filter: $filter;
|
178
|
+
}
|
179
|
+
|
180
|
+
@mixin opacity( $opacity... ) {
|
181
|
+
opacity: $opacity;
|
182
|
+
-webkit-opacity: $opacity;
|
183
|
+
-moz-opacity: $opacity;
|
184
|
+
-ms-opacity: $opacity;
|
185
|
+
-o-opacity: $opacity;
|
186
|
+
}
|
187
|
+
|
188
|
+
@mixin transitions( $transition ) {
|
189
|
+
$_types: '', '-webkit-', '-moz-', '-o-', '-ms-';
|
190
|
+
|
191
|
+
@each $type in $_types {
|
192
|
+
#{$type}transition: _generate-transitions-fields( $type, $transition... ) ;
|
193
|
+
}
|
194
|
+
}
|
195
|
+
|
196
|
+
@mixin transitions( $transition... ) {
|
197
|
+
$_types: '', '-webkit-', '-moz-', '-o-', '-ms-';
|
198
|
+
|
199
|
+
@each $type in $_types {
|
200
|
+
#{$type}transition: _generate-transitions-fields( $type, $transition... ) ;
|
201
|
+
}
|
202
|
+
}
|
203
|
+
|
204
|
+
@function _generate-transitions-fields( $type, $transition... ) {
|
205
|
+
$_return: '';
|
206
|
+
@each $tr in $transition {
|
207
|
+
@if $_return != '' {
|
208
|
+
$_return: $_return + ', ';
|
209
|
+
}
|
210
|
+
$_return: $_return + _generate-transitions( $tr, $type );
|
211
|
+
}
|
212
|
+
|
213
|
+
@return #{$_return};
|
214
|
+
}
|
215
|
+
|
216
|
+
@function _generate-transitions( $transition, $type ) {
|
217
|
+
@return nth($transition, 1) #{$type}nth($transition, 2) nth($transition, 3);
|
218
|
+
}
|