masonry-rails 0.1.6 → 0.1.7
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +11 -1
- data/VERSION +1 -1
- data/masonry-rails.gemspec +6 -2
- data/vendor/assets/javascripts/masonry/jquery.sausage.js +428 -0
- data/vendor/assets/javascripts/masonry/jquery.sausage.min.js +6 -0
- data/vendor/assets/stylesheets/sausage/sausage.css +45 -0
- data/vendor/assets/stylesheets/sausage/sausage.reset.css +35 -0
- metadata +6 -2
data/README.md
CHANGED
@@ -383,7 +383,17 @@ You can combine masonry infinite scroll with Kaminari using suggestions here:
|
|
383
383
|
|
384
384
|
[Create-Infinite-Scrolling-with-jQuery](https://github.com/amatsuda/kaminari/wiki/How-To:-Create-Infinite-Scrolling-with-jQuery)
|
385
385
|
|
386
|
-
[
|
386
|
+
[Sausage](https://github.com/christophercliff/sausage), used in this example is also included with this gem ;)
|
387
|
+
|
388
|
+
Stylesheets: `sausage/sausage.css`and `sausage/sausage.reset.css`
|
389
|
+
|
390
|
+
Javascript: `masonry/jquery.sausagemin.min.js`
|
391
|
+
|
392
|
+
For more see [sausage info](http://christophercliff.github.com/sausage)
|
393
|
+
|
394
|
+
Note: You need to configure Jquery UI to use sausage.
|
395
|
+
|
396
|
+
See: [railscast-endless-page](http://railscasts.com/episodes/114-endless-page-revised) for how to use endless pages with Rails using *will_paginate* gem.
|
387
397
|
|
388
398
|
### jQuery pageless
|
389
399
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.7
|
data/masonry-rails.gemspec
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "masonry-rails"
|
8
|
-
s.version = "0.1.
|
8
|
+
s.version = "0.1.7"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Kristian Mandrup"]
|
@@ -74,6 +74,8 @@ Gem::Specification.new do |s|
|
|
74
74
|
"vendor/assets/javascripts/masonry/jquery.masonry.min.js",
|
75
75
|
"vendor/assets/javascripts/masonry/jquery.pageless.js",
|
76
76
|
"vendor/assets/javascripts/masonry/jquery.pageless.min.js",
|
77
|
+
"vendor/assets/javascripts/masonry/jquery.sausage.js",
|
78
|
+
"vendor/assets/javascripts/masonry/jquery.sausage.min.js",
|
77
79
|
"vendor/assets/javascripts/masonry/modernizr-transitions.js",
|
78
80
|
"vendor/assets/stylesheets/masonry/basic.css",
|
79
81
|
"vendor/assets/stylesheets/masonry/centered.css",
|
@@ -81,7 +83,9 @@ Gem::Specification.new do |s|
|
|
81
83
|
"vendor/assets/stylesheets/masonry/gutters.css",
|
82
84
|
"vendor/assets/stylesheets/masonry/infinitescroll.css",
|
83
85
|
"vendor/assets/stylesheets/masonry/right-to-left.css",
|
84
|
-
"vendor/assets/stylesheets/masonry/transitions.css"
|
86
|
+
"vendor/assets/stylesheets/masonry/transitions.css",
|
87
|
+
"vendor/assets/stylesheets/sausage/sausage.css",
|
88
|
+
"vendor/assets/stylesheets/sausage/sausage.reset.css"
|
85
89
|
]
|
86
90
|
s.homepage = "http://github.com/kristianmandrup/masonry-rails"
|
87
91
|
s.licenses = ["MIT"]
|
@@ -0,0 +1,428 @@
|
|
1
|
+
// jquery.sausage.js 1.0.0
|
2
|
+
// (c) 2011 Christopher Cliff
|
3
|
+
// Freely distributed under the MIT license.
|
4
|
+
// For all details and documentation:
|
5
|
+
// http://christophercliff.github.com/sausage
|
6
|
+
|
7
|
+
(function($, undefined){
|
8
|
+
|
9
|
+
$.widget('cc.sausage', {
|
10
|
+
|
11
|
+
// # Options
|
12
|
+
//
|
13
|
+
//
|
14
|
+
|
15
|
+
options: {
|
16
|
+
|
17
|
+
// ### page `string`
|
18
|
+
//
|
19
|
+
// Sets the string to be used to select page elements.
|
20
|
+
//
|
21
|
+
// Example:
|
22
|
+
//
|
23
|
+
// $(window)
|
24
|
+
// .sausage({
|
25
|
+
// page: '.my-page-selector'
|
26
|
+
// })
|
27
|
+
// ;
|
28
|
+
//
|
29
|
+
page: '.page',
|
30
|
+
|
31
|
+
// ### content `function`
|
32
|
+
//
|
33
|
+
// Sets the content of the sausage elements. Use `i` and `$page` to render content dynamically.
|
34
|
+
//
|
35
|
+
// Example:
|
36
|
+
//
|
37
|
+
// $(window)
|
38
|
+
// .sausage({
|
39
|
+
// content: function (i, $page) {
|
40
|
+
// return '<div>' + $page.data('name') + '</div>';
|
41
|
+
// }
|
42
|
+
// })
|
43
|
+
// ;
|
44
|
+
//
|
45
|
+
content: function (i, $page) {
|
46
|
+
return '<span class="sausage-span">' + (i + 1) + '</span>';
|
47
|
+
}
|
48
|
+
|
49
|
+
},
|
50
|
+
|
51
|
+
// # Private Methods
|
52
|
+
//
|
53
|
+
//
|
54
|
+
|
55
|
+
// ## `._create()`
|
56
|
+
//
|
57
|
+
//
|
58
|
+
_create: function () {
|
59
|
+
|
60
|
+
var self = this,
|
61
|
+
$el = self.element;
|
62
|
+
|
63
|
+
// Use $el for the outer element.
|
64
|
+
self.$outer = $el;
|
65
|
+
// Use `body` for the inner element if the outer element is `window`. Otherwise, use the first child of `$el`.
|
66
|
+
self.$inner = $.isWindow(self.element.get(0)) ? $('body') : $el.children(':first-child');
|
67
|
+
self.$sausages = $('<div class="sausage-set"/>');
|
68
|
+
self.sausages = self.$sausages.get(0);
|
69
|
+
self.offsets = [];
|
70
|
+
|
71
|
+
self.$sausages
|
72
|
+
.appendTo(self.$inner)
|
73
|
+
;
|
74
|
+
|
75
|
+
// Trigger the `create` event.
|
76
|
+
self._trigger('create');
|
77
|
+
|
78
|
+
return;
|
79
|
+
},
|
80
|
+
|
81
|
+
// ## `._init()`
|
82
|
+
//
|
83
|
+
//
|
84
|
+
_init: function () {
|
85
|
+
|
86
|
+
var self = this;
|
87
|
+
|
88
|
+
// Stop and destroy if scroll bar is not present.
|
89
|
+
if (self.$outer.height() >= self.$inner.height())
|
90
|
+
{
|
91
|
+
self.destroy();
|
92
|
+
|
93
|
+
return;
|
94
|
+
}
|
95
|
+
|
96
|
+
self.draw();
|
97
|
+
self._update();
|
98
|
+
self._events();
|
99
|
+
self._delegates();
|
100
|
+
|
101
|
+
// Add a CSS class for styling purposes.
|
102
|
+
self.$sausages
|
103
|
+
.addClass('sausage-set-init')
|
104
|
+
;
|
105
|
+
|
106
|
+
self.blocked = false;
|
107
|
+
|
108
|
+
// Trigger the `init` event.
|
109
|
+
self._trigger('init');
|
110
|
+
|
111
|
+
return;
|
112
|
+
},
|
113
|
+
|
114
|
+
// ## `._events()`
|
115
|
+
//
|
116
|
+
//
|
117
|
+
_events: function () {
|
118
|
+
|
119
|
+
var self = this;
|
120
|
+
|
121
|
+
self.hasScrolled = false;
|
122
|
+
|
123
|
+
self.$outer
|
124
|
+
.bind('resize.sausage', function(){
|
125
|
+
|
126
|
+
self.draw();
|
127
|
+
|
128
|
+
})
|
129
|
+
.bind('scroll.sausage', function(e){
|
130
|
+
|
131
|
+
self.hasScrolled = true;
|
132
|
+
|
133
|
+
})
|
134
|
+
;
|
135
|
+
|
136
|
+
// [Prevent crazy amounts of scroll events from being fired](http://ejohn.org/blog/learning-from-twitter/) by setting an interval and listening.
|
137
|
+
setInterval(function(){
|
138
|
+
|
139
|
+
if (!self.hasScrolled)
|
140
|
+
{
|
141
|
+
return;
|
142
|
+
}
|
143
|
+
|
144
|
+
self.hasScrolled = false;
|
145
|
+
self._update();
|
146
|
+
|
147
|
+
}, 250);
|
148
|
+
|
149
|
+
return;
|
150
|
+
},
|
151
|
+
|
152
|
+
// ## `._getCurrent()`
|
153
|
+
//
|
154
|
+
//
|
155
|
+
_getCurrent: function () {
|
156
|
+
|
157
|
+
var self = this,
|
158
|
+
st = self.$outer.scrollTop() + self._getHandleHeight(self.$outer, self.$inner)/4,
|
159
|
+
h_win = self.$outer.height(),
|
160
|
+
h_doc = self.$inner.height(),
|
161
|
+
i = 0;
|
162
|
+
|
163
|
+
for (l = self.offsets.length; i < l; i++)
|
164
|
+
{
|
165
|
+
if (!self.offsets[i + 1])
|
166
|
+
{
|
167
|
+
return i;
|
168
|
+
}
|
169
|
+
else if (st <= self.offsets[i])
|
170
|
+
{
|
171
|
+
return i;
|
172
|
+
}
|
173
|
+
else if (st > self.offsets[i] && st <= self.offsets[i + 1])
|
174
|
+
{
|
175
|
+
return i;
|
176
|
+
}
|
177
|
+
}
|
178
|
+
|
179
|
+
return i;
|
180
|
+
},
|
181
|
+
|
182
|
+
// ## `._delegates()`
|
183
|
+
//
|
184
|
+
//
|
185
|
+
_delegates: function () {
|
186
|
+
|
187
|
+
var self = this;
|
188
|
+
|
189
|
+
self.$sausages
|
190
|
+
.delegate('.sausage', 'hover', function(){
|
191
|
+
|
192
|
+
if (self.blocked)
|
193
|
+
{
|
194
|
+
return;
|
195
|
+
}
|
196
|
+
|
197
|
+
$(this)
|
198
|
+
.toggleClass('sausage-hover')
|
199
|
+
;
|
200
|
+
|
201
|
+
})
|
202
|
+
.delegate('.sausage', 'click', function(e){
|
203
|
+
e.preventDefault();
|
204
|
+
|
205
|
+
if (self.blocked)
|
206
|
+
{
|
207
|
+
return;
|
208
|
+
}
|
209
|
+
|
210
|
+
var $sausage = $(this),
|
211
|
+
val = $sausage.index(),
|
212
|
+
o = self.$inner.find(self.options.page).eq(val).offset().top;
|
213
|
+
|
214
|
+
self._scrollTo(o);
|
215
|
+
|
216
|
+
// Trigger the `onClick` event.
|
217
|
+
//
|
218
|
+
// Example:
|
219
|
+
//
|
220
|
+
// $(window)
|
221
|
+
// .sausage({
|
222
|
+
// onClick: function (e, o) {
|
223
|
+
// alert('You clicked the sausage at index: ' + o.i);
|
224
|
+
// }
|
225
|
+
// })
|
226
|
+
// ;
|
227
|
+
//
|
228
|
+
self._trigger('onClick', e, {
|
229
|
+
$sausage: $sausage,
|
230
|
+
i: val
|
231
|
+
});
|
232
|
+
|
233
|
+
if ($sausage.hasClass('current'))
|
234
|
+
{
|
235
|
+
return;
|
236
|
+
}
|
237
|
+
|
238
|
+
// Trigger the `onUpdate` event.
|
239
|
+
self._trigger('onUpdate', e, {
|
240
|
+
$sausage: $sausage,
|
241
|
+
i: val
|
242
|
+
});
|
243
|
+
})
|
244
|
+
;
|
245
|
+
|
246
|
+
return;
|
247
|
+
},
|
248
|
+
|
249
|
+
_scrollTo: function (o) {
|
250
|
+
|
251
|
+
var self = this,
|
252
|
+
$outer = self.$outer,
|
253
|
+
rate = 2/1, // px/ms
|
254
|
+
distance = self.offsets[self.current] - o,
|
255
|
+
duration = Math.abs(distance/rate);
|
256
|
+
// Travel at 2 px per 1 ms but never longer than 1 s.
|
257
|
+
duration = (duration < 1000) ? duration : 1000;
|
258
|
+
|
259
|
+
if (self.$outer.get(0) === window)
|
260
|
+
{
|
261
|
+
$outer = $('body, html, document');
|
262
|
+
}
|
263
|
+
|
264
|
+
$outer
|
265
|
+
.stop(true)
|
266
|
+
.animate({
|
267
|
+
scrollTop: o
|
268
|
+
}, duration)
|
269
|
+
;
|
270
|
+
|
271
|
+
return;
|
272
|
+
},
|
273
|
+
|
274
|
+
_handleClick: function () {
|
275
|
+
|
276
|
+
var self = this
|
277
|
+
|
278
|
+
|
279
|
+
|
280
|
+
return;
|
281
|
+
},
|
282
|
+
|
283
|
+
// ## `._update()`
|
284
|
+
//
|
285
|
+
//
|
286
|
+
_update: function () {
|
287
|
+
|
288
|
+
var self = this;
|
289
|
+
i = self._getCurrent(),
|
290
|
+
c = 'sausage-current';
|
291
|
+
|
292
|
+
if (i === self.current || self.blocked)
|
293
|
+
{
|
294
|
+
return;
|
295
|
+
}
|
296
|
+
|
297
|
+
self.current = i;
|
298
|
+
|
299
|
+
self.$sausages.children().eq(i)
|
300
|
+
.addClass(c)
|
301
|
+
.siblings()
|
302
|
+
.removeClass(c)
|
303
|
+
;
|
304
|
+
|
305
|
+
// Trigger the `update` event.
|
306
|
+
self._trigger('update');
|
307
|
+
|
308
|
+
return;
|
309
|
+
},
|
310
|
+
|
311
|
+
// ### `._getHandleHeight()`
|
312
|
+
//
|
313
|
+
//
|
314
|
+
_getHandleHeight: function ($outer, $inner) {
|
315
|
+
|
316
|
+
var h_outer = $outer.height(),
|
317
|
+
h_inner = $inner.height();
|
318
|
+
|
319
|
+
return h_outer/h_inner*h_outer;
|
320
|
+
},
|
321
|
+
|
322
|
+
// # Public Methods
|
323
|
+
//
|
324
|
+
//
|
325
|
+
|
326
|
+
// ### draw `.sausage("draw")`
|
327
|
+
//
|
328
|
+
// Creates the sausage UI elements.
|
329
|
+
draw: function () {
|
330
|
+
|
331
|
+
var self = this,
|
332
|
+
h_win = self.$outer.height(),
|
333
|
+
h_doc = self.$inner.height(),
|
334
|
+
$items = self.$inner.find(self.options.page),
|
335
|
+
$page,
|
336
|
+
s = [],
|
337
|
+
offset_p,
|
338
|
+
offset_s;
|
339
|
+
|
340
|
+
self.offsets = [];
|
341
|
+
self.count = $items.length;
|
342
|
+
|
343
|
+
// Detach from DOM while making changes.
|
344
|
+
self.$sausages
|
345
|
+
.detach()
|
346
|
+
.empty()
|
347
|
+
;
|
348
|
+
|
349
|
+
// Calculate the element heights and push to an array.
|
350
|
+
for (var i = 0; i < self.count; i++)
|
351
|
+
{
|
352
|
+
$page = $items.eq(i);
|
353
|
+
offset_p = $page.offset();
|
354
|
+
offset_s = offset_p.top/h_doc*h_win;
|
355
|
+
|
356
|
+
s.push('<div class="sausage' + ((i === self.current) ? ' sausage-current' : '') + '" style="height:' + ($page.outerHeight()/h_doc*h_win) + 'px;top:' + offset_s + 'px;">' + self.options.content(i, $page) + '</div>');
|
357
|
+
|
358
|
+
// Create `self.offsets` for calculating current sausage.
|
359
|
+
self.offsets.push(offset_p.top);
|
360
|
+
}
|
361
|
+
|
362
|
+
// Use Array.join() for speed.
|
363
|
+
self.sausages.innerHTML = s.join('');
|
364
|
+
|
365
|
+
// And reattach.
|
366
|
+
self.$sausages
|
367
|
+
.appendTo(self.$inner)
|
368
|
+
;
|
369
|
+
|
370
|
+
return;
|
371
|
+
},
|
372
|
+
|
373
|
+
// ### block `.sausage("block")`
|
374
|
+
//
|
375
|
+
// Blocks the UI to prevent users from interacting with the sausage UI. Useful when loading data and updating the DOM.
|
376
|
+
block: function () {
|
377
|
+
|
378
|
+
var self = this,
|
379
|
+
c = 'sausage-set-blocked';
|
380
|
+
|
381
|
+
self.blocked = true;
|
382
|
+
|
383
|
+
// Add a CSS class for styling purposes.
|
384
|
+
self.$sausages
|
385
|
+
.addClass(c)
|
386
|
+
;
|
387
|
+
|
388
|
+
return;
|
389
|
+
},
|
390
|
+
|
391
|
+
// ### unblock `.sausage("unblock")`
|
392
|
+
//
|
393
|
+
// Unblocks the UI once loading and DOM manipulation are complete.
|
394
|
+
unblock: function () {
|
395
|
+
|
396
|
+
var self = this,
|
397
|
+
c = 'sausage-set-blocked';
|
398
|
+
|
399
|
+
self.$sausages
|
400
|
+
.removeClass(c)
|
401
|
+
;
|
402
|
+
|
403
|
+
self.blocked = false;
|
404
|
+
|
405
|
+
return;
|
406
|
+
},
|
407
|
+
|
408
|
+
// ### destroy `.sausage("destroy")`
|
409
|
+
//
|
410
|
+
// Removes the sausage instance from the DOM.
|
411
|
+
destroy: function () {
|
412
|
+
|
413
|
+
var self = this;
|
414
|
+
|
415
|
+
self.$outer
|
416
|
+
.unbind('.sausage')
|
417
|
+
;
|
418
|
+
|
419
|
+
self.$sausages
|
420
|
+
.remove()
|
421
|
+
;
|
422
|
+
|
423
|
+
return;
|
424
|
+
}
|
425
|
+
|
426
|
+
});
|
427
|
+
|
428
|
+
})(jQuery);
|
@@ -0,0 +1,6 @@
|
|
1
|
+
(function(e){e.widget("cc.sausage",{options:{page:".page",content:function(a){return'<span class="sausage-span">'+(a+1)+"</span>"}},_create:function(){var a=this.element;this.$outer=a;this.$inner=e.isWindow(this.element.get(0))?e("body"):a.children(":first-child");this.$sausages=e('<div class="sausage-set"/>');this.sausages=this.$sausages.get(0);this.offsets=[];this.$sausages.appendTo(this.$inner);this._trigger("create")},_init:function(){this.$outer.height()>=this.$inner.height()?this.destroy():
|
2
|
+
(this.draw(),this._update(),this._events(),this._delegates(),this.$sausages.addClass("sausage-set-init"),this.blocked=!1,this._trigger("init"))},_events:function(){var a=this;a.hasScrolled=!1;a.$outer.bind("resize.sausage",function(){a.draw()}).bind("scroll.sausage",function(){a.hasScrolled=!0});setInterval(function(){if(a.hasScrolled)a.hasScrolled=!1,a._update()},250)},_getCurrent:function(){var a=this.$outer.scrollTop()+this._getHandleHeight(this.$outer,this.$inner)/4;this.$outer.height();this.$inner.height();
|
3
|
+
var b=0;for(l=this.offsets.length;b<l;b++)if(this.offsets[b+1])if(a<=this.offsets[b])break;else{if(a>this.offsets[b]&&a<=this.offsets[b+1])break}else break;return b},_delegates:function(){var a=this;a.$sausages.delegate(".sausage","hover",function(){a.blocked||e(this).toggleClass("sausage-hover")}).delegate(".sausage","click",function(b){b.preventDefault();if(!a.blocked){var d=e(this),f=d.index(),k=a.$inner.find(a.options.page).eq(f).offset().top;a._scrollTo(k);a._trigger("onClick",b,{$sausage:d,
|
4
|
+
i:f});d.hasClass("current")||a._trigger("onUpdate",b,{$sausage:d,i:f})}})},_scrollTo:function(a){var b=this.$outer,d=Math.abs((this.offsets[this.current]-a)/2),d=d<1E3?d:1E3;this.$outer.get(0)===window&&(b=e("body, html, document"));b.stop(!0).animate({scrollTop:a},d)},_handleClick:function(){},_update:function(){i=this._getCurrent();c="sausage-current";if(!(i===this.current||this.blocked))this.current=i,this.$sausages.children().eq(i).addClass(c).siblings().removeClass(c),this._trigger("update")},
|
5
|
+
_getHandleHeight:function(a,b){var d=a.height(),f=b.height();return d/f*d},draw:function(){var a=this.$outer.height(),b=this.$inner.height(),d=this.$inner.find(this.options.page),f,e=[],h,j;this.offsets=[];this.count=d.length;this.$sausages.detach().empty();for(var g=0;g<this.count;g++)f=d.eq(g),h=f.offset(),j=h.top/b*a,e.push('<div class="sausage'+(g===this.current?" sausage-current":"")+'" style="height:'+f.outerHeight()/b*a+"px;top:"+j+'px;">'+this.options.content(g,f)+"</div>"),this.offsets.push(h.top);
|
6
|
+
this.sausages.innerHTML=e.join("");this.$sausages.appendTo(this.$inner)},block:function(){this.blocked=!0;this.$sausages.addClass("sausage-set-blocked")},unblock:function(){this.$sausages.removeClass("sausage-set-blocked");this.blocked=!1},destroy:function(){this.$outer.unbind(".sausage");this.$sausages.remove()}})})(jQuery);
|
@@ -0,0 +1,45 @@
|
|
1
|
+
.sausage-set {
|
2
|
+
position: fixed; right: 0; top: 0;
|
3
|
+
width: 15px; height: 100%;
|
4
|
+
border-left: solid 2px #fff;
|
5
|
+
border-right: solid 2px #fff;
|
6
|
+
}
|
7
|
+
.sausage {
|
8
|
+
position: absolute; left: 0;
|
9
|
+
width: 100%; height: 100%;
|
10
|
+
background-color: #f1f1f1;
|
11
|
+
text-decoration: none;
|
12
|
+
-moz-border-radius: 8px;
|
13
|
+
-webkit-border-bottom-left-radius: 8px;
|
14
|
+
-webkit-border-top-left-radius: 8px;
|
15
|
+
-webkit-border-bottom-right-radius: 8px;
|
16
|
+
-webkit-border-top-right-radius: 8px;
|
17
|
+
-moz-box-shadow: inset 0px 1px 2px 4px rgba(0, 0, 0, 0.025);
|
18
|
+
-webkit-box-shadow: inset 0px 1px 2px 4px rgba(0, 0, 0, 0.025);
|
19
|
+
cursor: pointer;
|
20
|
+
}
|
21
|
+
.sausage-hover,
|
22
|
+
.sausage-current {
|
23
|
+
background-color: #edf6fa;
|
24
|
+
-moz-box-shadow: inset 0px 1px 2px 4px rgba(51, 63, 70, 0.025);
|
25
|
+
}
|
26
|
+
.sausage-span {
|
27
|
+
position: absolute; left: -12px; top: 5px; z-index: 2;
|
28
|
+
display: none;
|
29
|
+
width: 15px; height: 10px;
|
30
|
+
padding: 2px;
|
31
|
+
color: #888;
|
32
|
+
background-color: #fff;
|
33
|
+
border: solid 2px #b6d8ea;
|
34
|
+
font-size: 10px; line-height: 10px; font-weight: bold; text-align: center;
|
35
|
+
-moz-border-radius: 7px;
|
36
|
+
-webkit-border-bottom-left-radius: 7px;
|
37
|
+
-webkit-border-top-left-radius: 7px;
|
38
|
+
-webkit-border-bottom-right-radius: 7px;
|
39
|
+
-webkit-border-top-right-radius: 7px;
|
40
|
+
-moz-box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.05);
|
41
|
+
-webkit-box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.05);
|
42
|
+
}
|
43
|
+
.sausage-hover .sausage-span {
|
44
|
+
display: block;
|
45
|
+
}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
/*
|
2
|
+
Copyright (c) 2010, .sausage-set Yahoo! Inc. All rights reserved.
|
3
|
+
Code licensed under the BSD License:
|
4
|
+
http://developer.yahoo.com/yui/license.html
|
5
|
+
version: 3.3.0
|
6
|
+
build: 3167
|
7
|
+
*/
|
8
|
+
.sausage-set, .sausage-set div, .sausage-set dl, .sausage-set dt, .sausage-set dd, .sausage-set ul, .sausage-set ol, .sausage-set li, .sausage-set h1, .sausage-set h2, .sausage-set h3, .sausage-set h4, .sausage-set h5, .sausage-set h6, .sausage-set pre, .sausage-set code, .sausage-set form, .sausage-set fieldset, .sausage-set legend, .sausage-set input, .sausage-set textarea, .sausage-set p, .sausage-set blockquote, .sausage-set th, .sausage-set td{margin:0;padding:0;} .sausage-set table{border-collapse:collapse;border-spacing:0;} .sausage-set fieldset, .sausage-set img{border:0;} .sausage-set address, .sausage-set caption, .sausage-set cite, .sausage-set code, .sausage-set dfn, .sausage-set em, .sausage-set strong, .sausage-set th, .sausage-set var{font-style:normal;font-weight:normal;} .sausage-set li{list-style:none;} .sausage-set caption, .sausage-set th{text-align:left;} .sausage-set h1, .sausage-set h2, .sausage-set h3, .sausage-set h4, .sausage-set h5, .sausage-set h6{font-size:100%;font-weight:normal;} .sausage-set q:before, .sausage-set q:after{content:'';} .sausage-set abbr, .sausage-set acronym{border:0;font-variant:normal;} .sausage-set sup{vertical-align:text-top;} .sausage-set sub{vertical-align:text-bottom;} .sausage-set input, .sausage-set textarea, .sausage-set select{font-family:inherit;font-size:inherit;font-weight:inherit;} .sausage-set input, .sausage-set textarea, .sausage-set select{*font-size:100%;} .sausage-set legend{color:#000;}
|
9
|
+
.sausage-set a { text-decoration: none; outline: none; }.sausage-set *:focus { outline: 0; }.sausage-set input::-moz-focus-inner { border: 0; }
|
10
|
+
/*
|
11
|
+
Copyright (c) 2010, .sausage-set Yahoo! Inc. All rights reserved.
|
12
|
+
Code licensed under the BSD License:
|
13
|
+
http://developer.yahoo.com/yui/license.html
|
14
|
+
version: 3.3.0
|
15
|
+
build: 3167
|
16
|
+
*/
|
17
|
+
.sausage-set {font:13px/1.231 'Hevetica Neueu', Helvetica, Arial, sans-serif;*font-size:small;*font:x-small;} .sausage-set select, .sausage-set input, .sausage-set button, .sausage-set textarea{font:99% "lucida grande", .sausage-set tahoma, .sausage-set verdana, .sausage-set arial, .sausage-set sans-serif;} .sausage-set table{font-size:inherit;font:100%;} .sausage-set pre, .sausage-set code, .sausage-set kbd, .sausage-set samp, .sausage-set tt{font-family:monospace;*font-size:108%;line-height:100%;}
|
18
|
+
|
19
|
+
/*
|
20
|
+
Copyright (c) 2010, .reset Yahoo! Inc. All rights reserved.
|
21
|
+
Code licensed under the BSD License:
|
22
|
+
http://developer.yahoo.com/yui/license.html
|
23
|
+
version: 3.3.0
|
24
|
+
build: 3167
|
25
|
+
*/
|
26
|
+
.reset, .reset div, .reset dl, .reset dt, .reset dd, .reset ul, .reset ol, .reset li, .reset h1, .reset h2, .reset h3, .reset h4, .reset h5, .reset h6, .reset pre, .reset code, .reset form, .reset fieldset, .reset legend, .reset input, .reset textarea, .reset p, .reset blockquote, .reset th, .reset td{margin:0;padding:0;} .reset table{border-collapse:collapse;border-spacing:0;} .reset fieldset, .reset img{border:0;} .reset address, .reset caption, .reset cite, .reset code, .reset dfn, .reset em, .reset strong, .reset th, .reset var{font-style:normal;font-weight:normal;} .reset li{list-style:none;} .reset caption, .reset th{text-align:left;} .reset h1, .reset h2, .reset h3, .reset h4, .reset h5, .reset h6{font-size:100%;font-weight:normal;} .reset q:before, .reset q:after{content:'';} .reset abbr, .reset acronym{border:0;font-variant:normal;} .reset sup{vertical-align:text-top;} .reset sub{vertical-align:text-bottom;} .reset input, .reset textarea, .reset select{font-family:inherit;font-size:inherit;font-weight:inherit;} .reset input, .reset textarea, .reset select{*font-size:100%;} .reset legend{color:#000;}
|
27
|
+
.reset a { text-decoration: none; outline: none; }.reset *:focus { outline: 0; }.reset input::-moz-focus-inner { border: 0; }
|
28
|
+
/*
|
29
|
+
Copyright (c) 2010, .reset Yahoo! Inc. All rights reserved.
|
30
|
+
Code licensed under the BSD License:
|
31
|
+
http://developer.yahoo.com/yui/license.html
|
32
|
+
version: 3.3.0
|
33
|
+
build: 3167
|
34
|
+
*/
|
35
|
+
.reset {font:13px/1.231 Georgia, sans-serif;*font-size:small;*font:x-small;} .reset select, .reset input, .reset button, .reset textarea{font:99% "lucida grande", .reset tahoma, .reset verdana, .reset arial, .reset sans-serif;} .reset table{font-size:inherit;font:100%;} .reset pre, .reset code, .reset kbd, .reset samp, .reset tt{font-family:monospace;*font-size:108%;line-height:100%;}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: masonry-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.7
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -172,6 +172,8 @@ files:
|
|
172
172
|
- vendor/assets/javascripts/masonry/jquery.masonry.min.js
|
173
173
|
- vendor/assets/javascripts/masonry/jquery.pageless.js
|
174
174
|
- vendor/assets/javascripts/masonry/jquery.pageless.min.js
|
175
|
+
- vendor/assets/javascripts/masonry/jquery.sausage.js
|
176
|
+
- vendor/assets/javascripts/masonry/jquery.sausage.min.js
|
175
177
|
- vendor/assets/javascripts/masonry/modernizr-transitions.js
|
176
178
|
- vendor/assets/stylesheets/masonry/basic.css
|
177
179
|
- vendor/assets/stylesheets/masonry/centered.css
|
@@ -180,6 +182,8 @@ files:
|
|
180
182
|
- vendor/assets/stylesheets/masonry/infinitescroll.css
|
181
183
|
- vendor/assets/stylesheets/masonry/right-to-left.css
|
182
184
|
- vendor/assets/stylesheets/masonry/transitions.css
|
185
|
+
- vendor/assets/stylesheets/sausage/sausage.css
|
186
|
+
- vendor/assets/stylesheets/sausage/sausage.reset.css
|
183
187
|
homepage: http://github.com/kristianmandrup/masonry-rails
|
184
188
|
licenses:
|
185
189
|
- MIT
|
@@ -195,7 +199,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
195
199
|
version: '0'
|
196
200
|
segments:
|
197
201
|
- 0
|
198
|
-
hash:
|
202
|
+
hash: -2854630088792217666
|
199
203
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
200
204
|
none: false
|
201
205
|
requirements:
|