nivo-rails 0.0.1 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 13060e7dd2b7d307b03802890cae83f518fb99df
4
+ data.tar.gz: 719dabb72098692c0448a126cffb748110c0f9d2
5
+ SHA512:
6
+ metadata.gz: 9cae638085d55133bdafac1b074f5494e2306642b74b35bf30a469d36bfda6d85bd90f68ffa8a1952c936f060d5e90fe095475c819d67e1c3cbbdba8e70c3b04
7
+ data.tar.gz: 531f7208310f905ba96c1f3f7bc42e7163d7d5c3d0837f3c81ed1a6bb31abf81e2e40768b8f1a4c99bd0583213e1175addf844f8ec6e5a2a34a642c92c99d9f3
data/.gitignore CHANGED
@@ -15,3 +15,6 @@ spec/reports
15
15
  test/tmp
16
16
  test/version_tmp
17
17
  tmp
18
+
19
+ # ignore idea files
20
+ .idea/*
data/README.md CHANGED
@@ -1,24 +1,80 @@
1
- # Nivo::Rails
1
+ # Nivo Slider with Ruby on Rails
2
2
 
3
- TODO: Write a gem description
3
+ Nivo Slider is one of the most popular JavaScript slider. This gem provides
4
+ integration with Ruby on Rails.
4
5
 
5
6
  ## Installation
6
7
 
7
- Add this line to your application's Gemfile:
8
+ First, add this to your Gemfile:
8
9
 
9
- gem 'nivo-rails'
10
+ ~~~ruby
11
+ gem 'nivo-rails'
12
+ ~~~
10
13
 
11
- And then execute:
14
+ Then run the `bundle` command to install the gem.
12
15
 
13
- $ bundle
16
+ ## Usage
14
17
 
15
- Or install it yourself as:
18
+ This gem provides files required to setup correctly NivoSlider on your site.
19
+ It requires a few lines of code to setup a slideshow. First, make sure to
20
+ import the CSS file:
16
21
 
17
- $ gem install nivo-rails
22
+ ~~~css
23
+ /* Inside a normal application.css file
24
+ *= require nivo
25
+ */
26
+ ~~~
18
27
 
19
- ## Usage
28
+ ~~~sass
29
+ // Inside an application.scss or application.sass
30
+ @import "nivo";
31
+ ~~~
32
+
33
+ And then import the JavaScript file as well:
34
+
35
+ ~~~javascript
36
+ //= require nivo
37
+ ~~~
38
+
39
+ You can now easily add slideshows in your web pages. To avoid writing all the
40
+ boilerplate needed by Nivo Slider, you can rely on the `nivo_slider` tag:
41
+
42
+ ~~~erb
43
+ <%= nivo_slider id: "slider" do %>
44
+ <%= image_tag "foo.png", title: "A very nice photo!" %>
45
+ <%= image_tag "bar.png" %>
46
+ <% end %>
47
+ ~~~
48
+
49
+ This helper behaves like Action View's `content_tag` helper apart from the fact that
50
+ it **doesn't** escape the provided content by default. It also sets the div's id
51
+ to `"slider"` by default and adds a `nivoSlider` class as well.
20
52
 
21
- TODO: Write usage instructions here
53
+ If you want to set a theme, you should wrap the `nivo_slider` call with a `div` element
54
+ with the proper class:
55
+
56
+ ~~~erb
57
+ <div class="theme-dark">
58
+ <%= nivo_slider id: "slider" do %>
59
+ <!-- ... ->
60
+ <% end %>
61
+ </div>
62
+ ~~~
63
+
64
+ Make sure then to initialize Nivo Slider on the given element:
65
+
66
+ ~~~javascript
67
+ $(window).load(function() {
68
+ $('#slider').nivoSlider();
69
+ });
70
+
71
+ // Or if you are using Turbolinks
72
+ $(document).on('page:change', function () {
73
+ $('#slider').nivoSlider();
74
+ });
75
+ ~~~
76
+
77
+ Enjoy!
22
78
 
23
79
  ## Contributing
24
80
 
@@ -27,3 +83,8 @@ TODO: Write usage instructions here
27
83
  3. Commit your changes (`git commit -am 'Add some feature'`)
28
84
  4. Push to the branch (`git push origin my-new-feature`)
29
85
  5. Create new Pull Request
86
+
87
+ ## License
88
+
89
+ This project is released under the MIT license. Please see the `LICENSE` file for
90
+ more information.
data/Rakefile CHANGED
@@ -1 +1,9 @@
1
1
  require "bundler/gem_tasks"
2
+ require "rake/testtask"
3
+
4
+ Rake::TestTask.new("test") do |t|
5
+ t.libs << "test"
6
+ t.pattern = 'test/**/*_test.rb'
7
+ t.verbose = true
8
+ t.description = "Run the unit tests"
9
+ end
@@ -1,15 +1,24 @@
1
1
  module NivoHelper
2
- def nivo_slider(hash = {}, &block)
3
- options = { :theme => :default, :id => "" }
4
- options.merge!(hash)
5
- klass = "slide-wrapper theme-#{options[:theme]}"
6
- id = options[:id]
7
-
8
- content_tag(:div, :class => klass) do
9
- content_tag(:div, :id => id, :class => "nivoSlider #{options[:class]}") do
10
- yield
11
- end
2
+ # Convenient helper to create a div for your slider. The method's
3
+ # definition is similar to Action View's `content_tag` helper.
4
+ # It doesn't escape the given content by default though.
5
+ def nivo_slider(content_or_options = nil, options = {}, escape = false, &block)
6
+ # We are just keeping the two arguments to match Action View's
7
+ # definition of `content_tag` but the first argument isn't
8
+ # considered as the content if it's a Hash object.
9
+ if content_or_options.kind_of?(Hash)
10
+ options.merge!(content_or_options)
12
11
  end
13
12
 
13
+ options[:class] ? options[:class] << " nivoSlider" : options[:class] = "nivoSlider"
14
+ options[:id] ||= "slider"
15
+
16
+ if content_or_options.kind_of?(Hash) && !block_given?
17
+ content_tag_string(:div, "", options, escape)
18
+ elsif block_given?
19
+ content_tag_string(:div, capture(&block), options, escape)
20
+ else
21
+ content_tag_string(:div, content_or_options, options, escape)
22
+ end
14
23
  end
15
- end
24
+ end
@@ -1,6 +1,12 @@
1
1
  module Nivo
2
2
  module Rails
3
3
  class Engine < ::Rails::Engine
4
+ initializer 'nivo-rails.assets.precompile' do |app|
5
+ app.config.assets.precompile += %w(default/arrows.png default/bullets.png default/loading.gif)
6
+ app.config.assets.precompile += %w(dark/arrows.png dark/bullets.png dark/loading.gif)
7
+ app.config.assets.precompile += %w(bar/arrows.png bar/bullets.png bar/loading.gif)
8
+ app.config.assets.precompile += %w(light/arrows.png light/bullets.png light/loading.gif)
9
+ end
4
10
  end
5
11
  end
6
12
  end
data/lib/nivo/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Nivo
2
2
  module Rails
3
- VERSION = "0.0.1"
3
+ VERSION = "1.0.0"
4
4
  end
5
5
  end
data/nivo-rails.gemspec CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |gem|
10
10
  gem.email = ["robin.dupret@gmail.com"]
11
11
  gem.description = %q{Nivo slider with Ruby on Rails}
12
12
  gem.summary = %q{This gem allows you to use Nivo slider with Ruby on Rails}
13
- gem.homepage = ""
13
+ gem.homepage = "https://github.com/robin850/nivo-rails"
14
14
 
15
15
  gem.files = `git ls-files`.split($/)
16
16
  gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
@@ -18,4 +18,5 @@ Gem::Specification.new do |gem|
18
18
  gem.require_paths = ["lib"]
19
19
 
20
20
  gem.add_development_dependency("rake")
21
+ gem.add_development_dependency("actionview", ">= 4.2.0")
21
22
  end
@@ -0,0 +1,30 @@
1
+ require 'test_helper'
2
+
3
+ class NivoSliderHelperTest < Minitest::Test
4
+ attr_accessor :output_buffer
5
+
6
+ include ActionView::Helpers::TagHelper
7
+ include NivoHelper
8
+
9
+ def test_with_content_tag_options
10
+ assert_match 'class="foo', nivo_slider(class: "foo")
11
+ assert_match 'id="bar"', nivo_slider(id: "bar")
12
+ end
13
+
14
+ def test_automatically_includes_nivoSlider_class
15
+ assert_match 'class="nivoSlider"', nivo_slider
16
+ end
17
+
18
+ def test_automatically_includes_slider_id
19
+ assert_match 'id="slider"', nivo_slider
20
+ end
21
+
22
+ def test_with_a_block
23
+ assert_match 'foo', nivo_slider { "foo" }
24
+ end
25
+
26
+ def test_with_options_and_block
27
+ expected = '<div id="foo" class="nivoSlider">Bar</div>'
28
+ assert_equal expected, nivo_slider(id: "foo") { "Bar" }
29
+ end
30
+ end
@@ -0,0 +1,5 @@
1
+ $:.unshift File.expand_path("../../app", __FILE__)
2
+
3
+ require 'minitest/autorun'
4
+ require 'action_view'
5
+ require 'helpers/nivo_helper'
@@ -0,0 +1,583 @@
1
+ /*
2
+ * jQuery Nivo Slider v3.2
3
+ * http://nivo.dev7studios.com
4
+ *
5
+ * Copyright 2012, Dev7studios
6
+ * Free to use and abuse under the MIT license.
7
+ * http://www.opensource.org/licenses/mit-license.php
8
+ */
9
+
10
+ /* The Nivo Slider styles */
11
+ .nivoSlider {
12
+ position: relative;
13
+ width: 100%;
14
+ height: auto;
15
+ overflow: hidden;
16
+ }
17
+
18
+ .nivoSlider img {
19
+ position: absolute;
20
+ top: 0px;
21
+ left: 0px;
22
+ max-width: none;
23
+ }
24
+
25
+ .nivo-main-image {
26
+ display: block !important;
27
+ position: relative !important;
28
+ width: 100% !important;
29
+ }
30
+
31
+ /* If an image is wrapped in a link */
32
+ .nivoSlider a.nivo-imageLink {
33
+ position: absolute;
34
+ top: 0px;
35
+ left: 0px;
36
+ width: 100%;
37
+ height: 100%;
38
+ border: 0;
39
+ padding: 0;
40
+ margin: 0;
41
+ z-index: 6;
42
+ display: none;
43
+ background: white;
44
+ filter: alpha(opacity=0);
45
+ opacity: 0;
46
+ }
47
+
48
+ /* The slices and boxes in the Slider */
49
+ .nivo-slice {
50
+ display: block;
51
+ position: absolute;
52
+ z-index: 5;
53
+ height: 100%;
54
+ top: 0;
55
+ }
56
+
57
+ .nivo-box {
58
+ display: block;
59
+ position: absolute;
60
+ z-index: 5;
61
+ overflow: hidden;
62
+ }
63
+
64
+ .nivo-box img {
65
+ display: block;
66
+ }
67
+
68
+ /* Caption styles */
69
+ .nivo-caption {
70
+ position: absolute;
71
+ left: 0px;
72
+ bottom: 0px;
73
+ background: #000;
74
+ color: #fff;
75
+ width: 100%;
76
+ z-index: 8;
77
+ padding: 5px 10px;
78
+ opacity: 0.8;
79
+ overflow: hidden;
80
+ display: none;
81
+ -moz-opacity: 0.8;
82
+ filter: alpha(opacity=8);
83
+ -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
84
+ -moz-box-sizing: border-box; /* Firefox, other Gecko */
85
+ box-sizing: border-box; /* Opera/IE 8+ */
86
+ }
87
+
88
+ .nivo-caption p {
89
+ padding: 5px;
90
+ margin: 0;
91
+ }
92
+
93
+ .nivo-caption a {
94
+ display: inline !important;
95
+ }
96
+
97
+ .nivo-html-caption {
98
+ display: none;
99
+ }
100
+
101
+ /* Direction nav styles (e.g. Next & Prev) */
102
+ .nivo-directionNav a {
103
+ position: absolute;
104
+ top: 45%;
105
+ z-index: 9;
106
+ cursor: pointer;
107
+ }
108
+
109
+ .nivo-prevNav {
110
+ left: 0px;
111
+ }
112
+
113
+ .nivo-nextNav {
114
+ right: 0px;
115
+ }
116
+
117
+ /* Control nav styles (e.g. 1,2,3...) */
118
+ .nivo-controlNav {
119
+ text-align: center;
120
+ padding: 15px 0;
121
+ }
122
+
123
+ .nivo-controlNav a {
124
+ cursor: pointer;
125
+ }
126
+
127
+ .nivo-controlNav a.active {
128
+ font-weight: bold;
129
+ }
130
+
131
+ /* Themes */
132
+
133
+ .theme-light.slider-wrapper {
134
+ background: #fff;
135
+ padding: 10px;
136
+ }
137
+
138
+ .theme-light .nivoSlider {
139
+ position: relative;
140
+ background: #fff image_url("light/loading.gif") no-repeat 50% 50%;
141
+ margin-bottom: 10px;
142
+ overflow: visible;
143
+ }
144
+
145
+ .theme-light .nivoSlider img {
146
+ position: absolute;
147
+ top: 0px;
148
+ left: 0px;
149
+ display: none;
150
+ }
151
+
152
+ .theme-light .nivoSlider a {
153
+ border: 0;
154
+ display: block;
155
+ }
156
+
157
+ .theme-light .nivo-controlNav {
158
+ text-align: left;
159
+ padding: 0;
160
+ position: relative;
161
+ z-index: 10;
162
+ }
163
+
164
+ .theme-light .nivo-controlNav a {
165
+ display: inline-block;
166
+ width: 10px;
167
+ height: 10px;
168
+ background: image_url("light/bullets.png") no-repeat;
169
+ text-indent: -9999px;
170
+ border: 0;
171
+ margin: 0 2px;
172
+ }
173
+
174
+ .theme-light .nivo-controlNav a.active {
175
+ background-position: 0 100%;
176
+ }
177
+
178
+ .theme-light .nivo-directionNav a {
179
+ display: block;
180
+ width: 30px;
181
+ height: 30px;
182
+ background: image_url("light/arrows.png") no-repeat;
183
+ text-indent: -9999px;
184
+ border: 0;
185
+ top: auto;
186
+ bottom: -36px;
187
+ z-index: 11;
188
+ }
189
+
190
+ .theme-light .nivo-directionNav a:hover {
191
+ background-color: #eee;
192
+ -webkit-border-radius: 2px;
193
+ -moz-border-radius: 2px;
194
+ border-radius: 2px;
195
+ }
196
+
197
+ .theme-light a.nivo-nextNav {
198
+ background-position: 160% 50%;
199
+ right: 0px;
200
+ }
201
+
202
+ .theme-light a.nivo-prevNav {
203
+ background-position: -60% 50%;
204
+ left: auto;
205
+ right: 35px;
206
+ }
207
+
208
+ .theme-light .nivo-caption {
209
+ font-family: Helvetica, Arial, sans-serif;
210
+ }
211
+
212
+ .theme-light .nivo-caption a {
213
+ color: #fff;
214
+ border-bottom: 1px dotted #fff;
215
+ }
216
+
217
+ .theme-light .nivo-caption a:hover {
218
+ color: #fff;
219
+ }
220
+
221
+ .theme-light .nivo-controlNav.nivo-thumbs-enabled {
222
+ width: 80%;
223
+ }
224
+
225
+ .theme-light .nivo-controlNav.nivo-thumbs-enabled a {
226
+ width: auto;
227
+ height: auto;
228
+ background: none;
229
+ margin-bottom: 5px;
230
+ }
231
+
232
+ .theme-light .nivo-controlNav.nivo-thumbs-enabled img {
233
+ display: block;
234
+ width: 120px;
235
+ height: auto;
236
+ }
237
+
238
+ .theme-default .nivoSlider {
239
+ position: relative;
240
+ background: #fff image_url("default/loading.gif") no-repeat 50% 50%;
241
+ margin-bottom: 10px;
242
+ -webkit-box-shadow: 0px 1px 5px 0px #4a4a4a;
243
+ -moz-box-shadow: 0px 1px 5px 0px #4a4a4a;
244
+ box-shadow: 0px 1px 5px 0px #4a4a4a;
245
+ }
246
+
247
+ .theme-default .nivoSlider img {
248
+ position: absolute;
249
+ top: 0px;
250
+ left: 0px;
251
+ display: none;
252
+ }
253
+
254
+ .theme-default .nivoSlider a {
255
+ border: 0;
256
+ display: block;
257
+ }
258
+
259
+ .theme-default .nivo-controlNav {
260
+ text-align: center;
261
+ padding: 20px 0;
262
+ }
263
+
264
+ .theme-default .nivo-controlNav a {
265
+ display: inline-block;
266
+ width: 22px;
267
+ height: 22px;
268
+ background: image_url("default/bullets.png") no-repeat;
269
+ text-indent: -9999px;
270
+ border: 0;
271
+ margin: 0 2px;
272
+ }
273
+
274
+ .theme-default .nivo-controlNav a.active {
275
+ background-position: 0 -22px;
276
+ }
277
+
278
+ .theme-default .nivo-directionNav a {
279
+ display: block;
280
+ width: 30px;
281
+ height: 30px;
282
+ background: image_url("default/arrows.png") no-repeat;
283
+ text-indent: -9999px;
284
+ border: 0;
285
+ opacity: 0;
286
+ -webkit-transition: all 200ms ease-in-out;
287
+ -moz-transition: all 200ms ease-in-out;
288
+ -o-transition: all 200ms ease-in-out;
289
+ transition: all 200ms ease-in-out;
290
+ }
291
+
292
+ .theme-default:hover .nivo-directionNav a {
293
+ opacity: 1;
294
+ }
295
+
296
+ .theme-default a.nivo-nextNav {
297
+ background-position: -30px 0;
298
+ right: 15px;
299
+ }
300
+
301
+ .theme-default a.nivo-prevNav {
302
+ left: 15px;
303
+ }
304
+
305
+ .theme-default .nivo-caption {
306
+ font-family: Helvetica, Arial, sans-serif;
307
+ }
308
+
309
+ .theme-default .nivo-caption a {
310
+ color: #fff;
311
+ border-bottom: 1px dotted #fff;
312
+ }
313
+
314
+ .theme-default .nivo-caption a:hover {
315
+ color: #fff;
316
+ }
317
+
318
+ .theme-default .nivo-controlNav.nivo-thumbs-enabled {
319
+ width: 100%;
320
+ }
321
+
322
+ .theme-default .nivo-controlNav.nivo-thumbs-enabled a {
323
+ width: auto;
324
+ height: auto;
325
+ background: none;
326
+ margin-bottom: 5px;
327
+ }
328
+
329
+ .theme-default .nivo-controlNav.nivo-thumbs-enabled img {
330
+ display: block;
331
+ width: 120px;
332
+ height: auto;
333
+ }
334
+
335
+ .theme-dark.slider-wrapper {
336
+ background: #222;
337
+ padding: 10px;
338
+ }
339
+
340
+ .theme-dark .nivoSlider {
341
+ position: relative;
342
+ background: #fff image_url("dark/loading.gif") no-repeat 50% 50%;
343
+ margin-bottom: 10px;
344
+ overflow: visible;
345
+ }
346
+
347
+ .theme-dark .nivoSlider img {
348
+ position: absolute;
349
+ top: 0px;
350
+ left: 0px;
351
+ display: none;
352
+ }
353
+
354
+ .theme-dark .nivoSlider a {
355
+ border: 0;
356
+ display: block;
357
+ }
358
+
359
+ .theme-dark .nivo-controlNav {
360
+ text-align: left;
361
+ padding: 0;
362
+ position: relative;
363
+ z-index: 10;
364
+ }
365
+
366
+ .theme-dark .nivo-controlNav a {
367
+ display: inline-block;
368
+ width: 10px;
369
+ height: 10px;
370
+ background: image_url("dark/bullets.png") no-repeat 0 2px;
371
+ text-indent: -9999px;
372
+ border: 0;
373
+ margin: 0 2px;
374
+ }
375
+
376
+ .theme-dark .nivo-controlNav a.active {
377
+ background-position: 0 100%;
378
+ }
379
+
380
+ .theme-dark .nivo-directionNav a {
381
+ display: block;
382
+ width: 30px;
383
+ height: 30px;
384
+ background: image_url("dark/arrows.png") no-repeat;
385
+ text-indent: -9999px;
386
+ border: 0;
387
+ top: auto;
388
+ bottom: -36px;
389
+ z-index: 11;
390
+ }
391
+
392
+ .theme-dark .nivo-directionNav a:hover {
393
+ background-color: #333;
394
+ -webkit-border-radius: 2px;
395
+ -moz-border-radius: 2px;
396
+ border-radius: 2px;
397
+ }
398
+
399
+ .theme-dark a.nivo-nextNav {
400
+ background-position: -16px 50%;
401
+ right: 0px;
402
+ }
403
+
404
+ .theme-dark a.nivo-prevNav {
405
+ background-position: 11px 50%;
406
+ left: auto;
407
+ right: 35px;
408
+ }
409
+
410
+ .theme-dark .nivo-caption {
411
+ font-family: Helvetica, Arial, sans-serif;
412
+ }
413
+
414
+ .theme-dark .nivo-caption a {
415
+ color: #fff;
416
+ border-bottom: 1px dotted #fff;
417
+ }
418
+
419
+ .theme-dark .nivo-caption a:hover {
420
+ color: #fff;
421
+ }
422
+
423
+ .theme-dark .nivo-controlNav.nivo-thumbs-enabled {
424
+ width: 80%;
425
+ }
426
+
427
+ .theme-dark .nivo-controlNav.nivo-thumbs-enabled a {
428
+ width: auto;
429
+ height: auto;
430
+ background: none;
431
+ margin-bottom: 5px;
432
+ }
433
+
434
+ .theme-dark .nivo-controlNav.nivo-thumbs-enabled img {
435
+ display: block;
436
+ width: 120px;
437
+ height: auto;
438
+ }
439
+
440
+ .theme-bar.slider-wrapper {
441
+ position: relative;
442
+ border: 1px solid #333;
443
+ overflow: hidden;
444
+ }
445
+
446
+ .theme-bar .nivoSlider {
447
+ position: relative;
448
+ background: #fff image_url("bar/loading.gif") no-repeat 50% 50%;
449
+ }
450
+
451
+ .theme-bar .nivoSlider img {
452
+ position: absolute;
453
+ top: 0px;
454
+ left: 0px;
455
+ display: none;
456
+ }
457
+
458
+ .theme-bar .nivoSlider a {
459
+ border: 0;
460
+ display: block;
461
+ }
462
+
463
+ .theme-bar .nivo-controlNav {
464
+ position: absolute;
465
+ left: 0;
466
+ bottom: -41px;
467
+ z-index: 10;
468
+ width: 100%;
469
+ height: 30px;
470
+ text-align: center;
471
+ padding: 5px 0;
472
+ border-top: 1px solid #333;
473
+ background: #333;
474
+ background: -moz-linear-gradient(top, #565656 0%, #333333 100%); /* FF3.6+ */
475
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #565656), color-stop(100%, #333333)); /* Chrome,Safari4+ */
476
+ background: -webkit-linear-gradient(top, #565656 0%, #333333 100%); /* Chrome10+,Safari5.1+ */
477
+ background: -o-linear-gradient(top, #565656 0%, #333333 100%); /* Opera 11.10+ */
478
+ background: -ms-linear-gradient(top, #565656 0%, #333333 100%); /* IE10+ */
479
+ background: linear-gradient(to bottom, #565656 0%, #333333 100%); /* W3C */
480
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#565656', endColorstr='#333333', GradientType=0); /* IE6-9 */
481
+ opacity: 0.5;
482
+ -webkit-transition: all 200ms ease-in-out;
483
+ -moz-transition: all 200ms ease-in-out;
484
+ -o-transition: all 200ms ease-in-out;
485
+ transition: all 200ms ease-in-out;
486
+ }
487
+
488
+ .theme-bar:hover .nivo-controlNav {
489
+ bottom: 0;
490
+ opacity: 1;
491
+ }
492
+
493
+ .theme-bar .nivo-controlNav a {
494
+ display: inline-block;
495
+ width: 22px;
496
+ height: 22px;
497
+ background: image_url("bar/bullets.png") no-repeat;
498
+ text-indent: -9999px;
499
+ border: 0;
500
+ margin: 5px 2px 0 2px;
501
+ }
502
+
503
+ .theme-bar .nivo-controlNav a.active {
504
+ background-position: 0 -22px;
505
+ }
506
+
507
+ .theme-bar .nivo-directionNav a {
508
+ display: block;
509
+ border: 0;
510
+ color: #fff;
511
+ text-transform: uppercase;
512
+ top: auto;
513
+ bottom: 10px;
514
+ z-index: 11;
515
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
516
+ font-size: 13px;
517
+ line-height: 20px;
518
+ opacity: 0.5;
519
+ -webkit-transition: all 200ms ease-in-out;
520
+ -moz-transition: all 200ms ease-in-out;
521
+ -o-transition: all 200ms ease-in-out;
522
+ transition: all 200ms ease-in-out;
523
+ }
524
+
525
+ .theme-bar a.nivo-nextNav {
526
+ right: -50px;
527
+ }
528
+
529
+ .theme-bar a.nivo-prevNav {
530
+ left: -50px;
531
+ }
532
+
533
+ .theme-bar:hover a.nivo-nextNav {
534
+ right: 15px;
535
+ opacity: 1;
536
+ }
537
+
538
+ .theme-bar:hover a.nivo-prevNav {
539
+ left: 15px;
540
+ opacity: 1;
541
+ }
542
+
543
+ .theme-bar .nivo-directionNav a:hover {
544
+ color: #ddd;
545
+ }
546
+
547
+ .theme-bar .nivo-caption {
548
+ font-family: Helvetica, Arial, sans-serif;
549
+ -webkit-transition: all 200ms ease-in-out;
550
+ -moz-transition: all 200ms ease-in-out;
551
+ -o-transition: all 200ms ease-in-out;
552
+ transition: all 200ms ease-in-out;
553
+ }
554
+
555
+ .theme-bar:hover .nivo-caption {
556
+ bottom: 41px;
557
+ }
558
+
559
+ .theme-bar .nivo-caption a {
560
+ color: #fff;
561
+ border-bottom: 1px dotted #fff;
562
+ }
563
+
564
+ .theme-bar .nivo-caption a:hover {
565
+ color: #fff;
566
+ }
567
+
568
+ .theme-bar .nivo-controlNav.nivo-thumbs-enabled {
569
+ width: 100%;
570
+ }
571
+
572
+ .theme-bar .nivo-controlNav.nivo-thumbs-enabled a {
573
+ width: auto;
574
+ height: auto;
575
+ background: none;
576
+ margin-bottom: 5px;
577
+ }
578
+
579
+ .theme-bar .nivo-controlNav.nivo-thumbs-enabled img {
580
+ display: block;
581
+ width: 120px;
582
+ height: auto;
583
+ }