zucchini-ios 0.6.1 → 0.6.2
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +17 -1
- data/CHANGELOG.md +28 -15
- data/README.md +23 -19
- data/Rakefile +1 -0
- data/bin/zucchini +4 -11
- data/lib/zucchini.rb +12 -0
- data/lib/{approver.rb → zucchini/approver.rb} +0 -0
- data/lib/{config.rb → zucchini/config.rb} +0 -0
- data/lib/{detector.rb → zucchini/detector.rb} +0 -0
- data/lib/{feature.rb → zucchini/feature.rb} +25 -22
- data/lib/{generator.rb → zucchini/generator.rb} +5 -5
- data/lib/{report.rb → zucchini/report.rb} +3 -4
- data/lib/zucchini/report/css/zucchini.report.css +241 -0
- data/lib/{report → zucchini/report}/js/jquery.effects.core.js +0 -0
- data/lib/{report → zucchini/report}/js/jquery.js +0 -0
- data/lib/{report → zucchini/report}/js/jquery.ui.core.js +0 -0
- data/lib/zucchini/report/js/zucchini.report.js +59 -0
- data/lib/zucchini/report/template.erb.html +47 -0
- data/lib/{report → zucchini/report}/view.rb +0 -0
- data/lib/{runner.rb → zucchini/runner.rb} +0 -0
- data/lib/{screenshot.rb → zucchini/screenshot.rb} +77 -30
- data/lib/{uia → zucchini/uia}/base.coffee +0 -1
- data/lib/{uia → zucchini/uia}/screen.coffee +5 -4
- data/lib/{version.rb → zucchini/version.rb} +1 -1
- data/spec/lib/{config_spec.rb → zucchini/config_spec.rb} +0 -0
- data/spec/lib/{detector_spec.rb → zucchini/detector_spec.rb} +0 -0
- data/spec/lib/{feature_spec.rb → zucchini/feature_spec.rb} +0 -0
- data/spec/lib/{generator_spec.rb → zucchini/generator_spec.rb} +0 -0
- data/spec/lib/{report_spec.rb → zucchini/report_spec.rb} +0 -0
- data/spec/lib/zucchini/screenshot_spec.rb +164 -0
- data/spec/sample_setup/feature_one/run_data/Run 1/06_sign up_spinner.png b/data/spec/sample_setup/feature_one/run_data/Run 1/06_splash-screen_sign → up_spinner.png +0 -0
- data/spec/sample_setup/support/masks/splash.png +0 -0
- data/spec/spec_helper.rb +14 -10
- data/zucchini-ios.gemspec +8 -9
- metadata +58 -36
- data/lib/report/css/zucchini.report.css +0 -239
- data/lib/report/js/zucchini.report.js +0 -59
- data/lib/report/template.erb +0 -47
- data/spec/lib/screenshot_spec.rb +0 -109
File without changes
|
Binary file
|
data/spec/spec_helper.rb
CHANGED
@@ -1,18 +1,22 @@
|
|
1
|
+
require 'coveralls'
|
2
|
+
require 'simplecov'
|
3
|
+
|
4
|
+
if ENV['COVERAGE'] == 'coveralls'
|
5
|
+
Coveralls.wear!
|
6
|
+
else
|
7
|
+
SimpleCov.start do
|
8
|
+
add_filter "/spec/"
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
1
12
|
require 'clamp'
|
2
13
|
require 'fileutils'
|
3
14
|
|
4
|
-
$LOAD_PATH << File.expand_path(
|
5
|
-
require 'lib/
|
6
|
-
require 'lib/screenshot'
|
7
|
-
require 'lib/report'
|
8
|
-
require 'lib/feature'
|
9
|
-
require 'lib/detector'
|
10
|
-
require 'lib/runner'
|
11
|
-
require 'lib/generator'
|
12
|
-
require 'lib/approver'
|
15
|
+
$LOAD_PATH << File.expand_path(File.join(File.dirname(__FILE__), '..'))
|
16
|
+
require 'lib/zucchini'
|
13
17
|
|
14
18
|
RSpec.configure do |config|
|
15
19
|
config.color_enabled = true
|
16
20
|
config.tty = true
|
17
|
-
|
21
|
+
config.formatter = :doc
|
18
22
|
end
|
data/zucchini-ios.gemspec
CHANGED
@@ -1,13 +1,11 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
|
-
|
3
|
-
|
4
|
-
require '
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'zucchini/version'
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "zucchini-ios"
|
8
8
|
s.version = Zucchini::VERSION
|
9
|
-
s.date = Date.today.to_s
|
10
|
-
s.platform = Gem::Platform::RUBY
|
11
9
|
s.authors = ["Vasily Mikhaylichenko", "Rajesh Kumar", "Kevin O'Neill"]
|
12
10
|
s.license = "BSD"
|
13
11
|
s.email = ["vaskas@zucchiniframework.org"]
|
@@ -15,14 +13,15 @@ Gem::Specification.new do |s|
|
|
15
13
|
s.summary = %q{Functional testing framework for iOS-powered devices}
|
16
14
|
s.description = %q{Zucchini follows simple walkthrough scenarios for your iOS app, takes screenshots and compares them to the reference ones.}
|
17
15
|
|
18
|
-
s.add_runtime_dependency
|
19
|
-
s.add_development_dependency
|
20
|
-
s.add_development_dependency
|
16
|
+
s.add_runtime_dependency 'clamp'
|
17
|
+
s.add_development_dependency 'rspec'
|
18
|
+
s.add_development_dependency 'simplecov'
|
19
|
+
s.add_development_dependency 'coveralls'
|
21
20
|
|
22
21
|
s.files = `git ls-files | grep -vE '(web|.watchr)'`.split("\n")
|
23
22
|
s.test_files = `git ls-files -- spec/*`.split("\n")
|
24
23
|
s.executables = %w(zucchini)
|
25
24
|
s.require_paths = ["lib"]
|
26
25
|
|
27
|
-
s.required_ruby_version = '>= 1.9.
|
26
|
+
s.required_ruby_version = '>= 1.9.3'
|
28
27
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zucchini-ios
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2013-07
|
14
|
+
date: 2013-08-07 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: clamp
|
@@ -46,7 +46,23 @@ dependencies:
|
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
48
|
- !ruby/object:Gem::Dependency
|
49
|
-
name:
|
49
|
+
name: simplecov
|
50
|
+
requirement: !ruby/object:Gem::Requirement
|
51
|
+
none: false
|
52
|
+
requirements:
|
53
|
+
- - ! '>='
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: '0'
|
56
|
+
type: :development
|
57
|
+
prerelease: false
|
58
|
+
version_requirements: !ruby/object:Gem::Requirement
|
59
|
+
none: false
|
60
|
+
requirements:
|
61
|
+
- - ! '>='
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '0'
|
64
|
+
- !ruby/object:Gem::Dependency
|
65
|
+
name: coveralls
|
50
66
|
requirement: !ruby/object:Gem::Requirement
|
51
67
|
none: false
|
52
68
|
requirements:
|
@@ -78,30 +94,31 @@ files:
|
|
78
94
|
- README.md
|
79
95
|
- Rakefile
|
80
96
|
- bin/zucchini
|
81
|
-
- lib/
|
82
|
-
- lib/
|
83
|
-
- lib/
|
84
|
-
- lib/
|
85
|
-
- lib/
|
86
|
-
- lib/
|
87
|
-
- lib/
|
88
|
-
- lib/report/
|
89
|
-
- lib/report/js/jquery.js
|
90
|
-
- lib/report/js/jquery.
|
91
|
-
- lib/report/js/
|
92
|
-
- lib/report/
|
93
|
-
- lib/report/
|
94
|
-
- lib/
|
95
|
-
- lib/
|
96
|
-
- lib/
|
97
|
-
- lib/uia/
|
98
|
-
- lib/
|
99
|
-
-
|
100
|
-
- spec/lib/
|
101
|
-
- spec/lib/
|
102
|
-
- spec/lib/
|
103
|
-
- spec/lib/
|
104
|
-
- spec/lib/
|
97
|
+
- lib/zucchini.rb
|
98
|
+
- lib/zucchini/approver.rb
|
99
|
+
- lib/zucchini/config.rb
|
100
|
+
- lib/zucchini/detector.rb
|
101
|
+
- lib/zucchini/feature.rb
|
102
|
+
- lib/zucchini/generator.rb
|
103
|
+
- lib/zucchini/report.rb
|
104
|
+
- lib/zucchini/report/css/zucchini.report.css
|
105
|
+
- lib/zucchini/report/js/jquery.effects.core.js
|
106
|
+
- lib/zucchini/report/js/jquery.js
|
107
|
+
- lib/zucchini/report/js/jquery.ui.core.js
|
108
|
+
- lib/zucchini/report/js/zucchini.report.js
|
109
|
+
- lib/zucchini/report/template.erb.html
|
110
|
+
- lib/zucchini/report/view.rb
|
111
|
+
- lib/zucchini/runner.rb
|
112
|
+
- lib/zucchini/screenshot.rb
|
113
|
+
- lib/zucchini/uia/base.coffee
|
114
|
+
- lib/zucchini/uia/screen.coffee
|
115
|
+
- lib/zucchini/version.rb
|
116
|
+
- spec/lib/zucchini/config_spec.rb
|
117
|
+
- spec/lib/zucchini/detector_spec.rb
|
118
|
+
- spec/lib/zucchini/feature_spec.rb
|
119
|
+
- spec/lib/zucchini/generator_spec.rb
|
120
|
+
- spec/lib/zucchini/report_spec.rb
|
121
|
+
- spec/lib/zucchini/screenshot_spec.rb
|
105
122
|
- spec/sample_screenshots/01_LandscapeLeft_Screenshot.png
|
106
123
|
- spec/sample_screenshots/02_LandscapeRight_Screenshot.png
|
107
124
|
- spec/sample_screenshots/03_PortraitUpsideDown_Screenshot.png
|
@@ -109,7 +126,7 @@ files:
|
|
109
126
|
- spec/sample_setup/feature_one/masks/retina_ios5/06_sign up_spinner.png
|
110
127
|
- spec/sample_setup/feature_one/reference/retina_ios5/06_sign up_spinner.png
|
111
128
|
- spec/sample_setup/feature_one/reference/retina_ios5/06_sign up_spinner_error.png
|
112
|
-
- spec/sample_setup/feature_one/run_data/Run 1/
|
129
|
+
- spec/sample_setup/feature_one/run_data/Run 1/06_splash-screen_sign up_spinner.png
|
113
130
|
- spec/sample_setup/feature_three/feature.zucchini
|
114
131
|
- spec/sample_setup/feature_two/feature.zucchini
|
115
132
|
- spec/sample_setup/feature_two/masks/retina_ios5/06_sign up_spinner.png
|
@@ -119,6 +136,7 @@ files:
|
|
119
136
|
- spec/sample_setup/support/config.yml
|
120
137
|
- spec/sample_setup/support/lib/helpers.coffee
|
121
138
|
- spec/sample_setup/support/masks/retina_ios5.png
|
139
|
+
- spec/sample_setup/support/masks/splash.png
|
122
140
|
- spec/sample_setup/support/screens/splash.coffee
|
123
141
|
- spec/sample_setup_2/support/config.yml
|
124
142
|
- spec/sample_setup_3/support/config.yml
|
@@ -149,13 +167,16 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
149
167
|
requirements:
|
150
168
|
- - ! '>='
|
151
169
|
- !ruby/object:Gem::Version
|
152
|
-
version: 1.9.
|
170
|
+
version: 1.9.3
|
153
171
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
154
172
|
none: false
|
155
173
|
requirements:
|
156
174
|
- - ! '>='
|
157
175
|
- !ruby/object:Gem::Version
|
158
176
|
version: '0'
|
177
|
+
segments:
|
178
|
+
- 0
|
179
|
+
hash: -2489194857369851293
|
159
180
|
requirements: []
|
160
181
|
rubyforge_project:
|
161
182
|
rubygems_version: 1.8.23
|
@@ -163,12 +184,12 @@ signing_key:
|
|
163
184
|
specification_version: 3
|
164
185
|
summary: Functional testing framework for iOS-powered devices
|
165
186
|
test_files:
|
166
|
-
- spec/lib/config_spec.rb
|
167
|
-
- spec/lib/detector_spec.rb
|
168
|
-
- spec/lib/feature_spec.rb
|
169
|
-
- spec/lib/generator_spec.rb
|
170
|
-
- spec/lib/report_spec.rb
|
171
|
-
- spec/lib/screenshot_spec.rb
|
187
|
+
- spec/lib/zucchini/config_spec.rb
|
188
|
+
- spec/lib/zucchini/detector_spec.rb
|
189
|
+
- spec/lib/zucchini/feature_spec.rb
|
190
|
+
- spec/lib/zucchini/generator_spec.rb
|
191
|
+
- spec/lib/zucchini/report_spec.rb
|
192
|
+
- spec/lib/zucchini/screenshot_spec.rb
|
172
193
|
- spec/sample_screenshots/01_LandscapeLeft_Screenshot.png
|
173
194
|
- spec/sample_screenshots/02_LandscapeRight_Screenshot.png
|
174
195
|
- spec/sample_screenshots/03_PortraitUpsideDown_Screenshot.png
|
@@ -176,7 +197,7 @@ test_files:
|
|
176
197
|
- spec/sample_setup/feature_one/masks/retina_ios5/06_sign up_spinner.png
|
177
198
|
- spec/sample_setup/feature_one/reference/retina_ios5/06_sign up_spinner.png
|
178
199
|
- spec/sample_setup/feature_one/reference/retina_ios5/06_sign up_spinner_error.png
|
179
|
-
- spec/sample_setup/feature_one/run_data/Run 1/
|
200
|
+
- spec/sample_setup/feature_one/run_data/Run 1/06_splash-screen_sign up_spinner.png
|
180
201
|
- spec/sample_setup/feature_three/feature.zucchini
|
181
202
|
- spec/sample_setup/feature_two/feature.zucchini
|
182
203
|
- spec/sample_setup/feature_two/masks/retina_ios5/06_sign up_spinner.png
|
@@ -186,6 +207,7 @@ test_files:
|
|
186
207
|
- spec/sample_setup/support/config.yml
|
187
208
|
- spec/sample_setup/support/lib/helpers.coffee
|
188
209
|
- spec/sample_setup/support/masks/retina_ios5.png
|
210
|
+
- spec/sample_setup/support/masks/splash.png
|
189
211
|
- spec/sample_setup/support/screens/splash.coffee
|
190
212
|
- spec/sample_setup_2/support/config.yml
|
191
213
|
- spec/sample_setup_3/support/config.yml
|
@@ -1,239 +0,0 @@
|
|
1
|
-
html {
|
2
|
-
font-family: Myriad Pro, sans-serif;
|
3
|
-
}
|
4
|
-
body {
|
5
|
-
margin: 0;
|
6
|
-
}
|
7
|
-
tr {
|
8
|
-
text-align: center;
|
9
|
-
}
|
10
|
-
td {
|
11
|
-
padding: 2px;
|
12
|
-
}
|
13
|
-
dl {
|
14
|
-
-webkit-margin-before: 0;
|
15
|
-
}
|
16
|
-
dd {
|
17
|
-
-webkit-margin-start: 0;
|
18
|
-
}
|
19
|
-
h1 {
|
20
|
-
margin: 16px;
|
21
|
-
font-weight: normal;
|
22
|
-
font-size: 24px;
|
23
|
-
}
|
24
|
-
h1 .time {
|
25
|
-
margin-left: 10px;
|
26
|
-
opacity: 0.5;
|
27
|
-
}
|
28
|
-
h3 {
|
29
|
-
margin: 0 0 6px 4px;
|
30
|
-
font-size: 24px;
|
31
|
-
width: 763px;
|
32
|
-
padding: 0;
|
33
|
-
float: left;
|
34
|
-
text-shadow: 1px 1px 1px white;
|
35
|
-
}
|
36
|
-
.indicators {
|
37
|
-
font-size: 12px;
|
38
|
-
width: 92px;
|
39
|
-
float: left;
|
40
|
-
margin: 5px 28px 5px 0;
|
41
|
-
-webkit-transition: all 0.1s ease-in-out;
|
42
|
-
}
|
43
|
-
.indicators div {
|
44
|
-
border-radius: 8px;
|
45
|
-
padding: 3px 8px;
|
46
|
-
margin-right: 5px;
|
47
|
-
float: right;
|
48
|
-
color: #FFF;
|
49
|
-
opacity: 0.8;
|
50
|
-
height: 11px;
|
51
|
-
line-height: 11px;
|
52
|
-
font-weight: bold;
|
53
|
-
}
|
54
|
-
.indicators div:hover {
|
55
|
-
-webkit-transition:opacity 0.3s ease-in-out;
|
56
|
-
}
|
57
|
-
.indicators .passed {
|
58
|
-
background: #65C400;
|
59
|
-
}
|
60
|
-
.indicators .failed {
|
61
|
-
background: #C20000;
|
62
|
-
}
|
63
|
-
.indicators .pending {
|
64
|
-
background: #F9E934;
|
65
|
-
color: #000;
|
66
|
-
}
|
67
|
-
.feature {
|
68
|
-
padding: 10px 9px 4px 9px;
|
69
|
-
border-radius: 5px;
|
70
|
-
width: 1012px;
|
71
|
-
margin: 15px 15px 24px 15px;
|
72
|
-
box-shadow: 0 0 4px rgba(0,0,0,0.2);
|
73
|
-
}
|
74
|
-
.ci .feature {
|
75
|
-
display: none;
|
76
|
-
}
|
77
|
-
.ci .first.feature {
|
78
|
-
display: block;
|
79
|
-
}
|
80
|
-
.buttons {
|
81
|
-
float: left;
|
82
|
-
width: 125px;
|
83
|
-
display: block;
|
84
|
-
}
|
85
|
-
.ci .buttons {
|
86
|
-
display: none;
|
87
|
-
}
|
88
|
-
.buttons a {
|
89
|
-
text-align: center;
|
90
|
-
width: 70px;
|
91
|
-
color: #484848;
|
92
|
-
text-decoration: none;
|
93
|
-
text-shadow: 0 1px 0 white;
|
94
|
-
font: bold 12px Helvetica, Arial, sans-serif;
|
95
|
-
margin-bottom: 6px;
|
96
|
-
line-height: 26px;
|
97
|
-
height: 25px;
|
98
|
-
display: block;
|
99
|
-
float: left;
|
100
|
-
padding: 0 5px;
|
101
|
-
background: -webkit-linear-gradient(top, #F4F4F4, #ECECEC);
|
102
|
-
border: solid 1px #D4D4D4;
|
103
|
-
border-radius: 5px;
|
104
|
-
box-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
|
105
|
-
-webkit-transition: border-color .218s;
|
106
|
-
cursor: pointer;
|
107
|
-
}
|
108
|
-
.buttons a.left {
|
109
|
-
border-radius: 5px 0 0 5px;
|
110
|
-
width: 50px;
|
111
|
-
float: left;
|
112
|
-
margin: 0;
|
113
|
-
}
|
114
|
-
.buttons a.right {
|
115
|
-
border-radius: 0 5px 5px 0;
|
116
|
-
width: 50px;
|
117
|
-
float: left;
|
118
|
-
position: relative;
|
119
|
-
left: -1px;
|
120
|
-
margin: 0;
|
121
|
-
}
|
122
|
-
.buttons a:hover {
|
123
|
-
border: solid 1px #7f7f7f;
|
124
|
-
color: #282828;
|
125
|
-
background: -webkit-linear-gradient(top, #ffffff, #dfdfdf);
|
126
|
-
}
|
127
|
-
.buttons a:active {
|
128
|
-
border: solid 1px #7f7f7f;
|
129
|
-
background: #d0d0d0;
|
130
|
-
background: -webkit-gradient(linear, left top, left bottom, from(#a8a8a8), color-stop(0.15, #c6c6c6), to(#d8d8d8));
|
131
|
-
background: -webkit-linear-gradient(top, #a8a8a8, #c6c6c6 15%, #d8d8d8);
|
132
|
-
}
|
133
|
-
|
134
|
-
.screen {
|
135
|
-
-webkit-transition:all 0.2s ease-in-out;
|
136
|
-
width: 990px;
|
137
|
-
height: 15px;
|
138
|
-
padding: 5px 0 5px 9px;
|
139
|
-
margin-bottom: 6px;
|
140
|
-
border-radius: 5px;
|
141
|
-
cursor: pointer;
|
142
|
-
overflow: hidden;
|
143
|
-
}
|
144
|
-
.screen.passed {
|
145
|
-
color: #65C400;
|
146
|
-
background-color: #DBFFB4;
|
147
|
-
border: 1px #65C400 solid;
|
148
|
-
border-left: 10px #65C400 solid;
|
149
|
-
}
|
150
|
-
.screen.passed img {
|
151
|
-
box-shadow: 0px 0px 4px #65C400;
|
152
|
-
}
|
153
|
-
.screen.failed {
|
154
|
-
color: #C20000;
|
155
|
-
background-color: #FFD6D6;
|
156
|
-
border: 1px #C20000 solid;
|
157
|
-
border-left: 10px #C20000 solid;
|
158
|
-
}
|
159
|
-
.screen.failed img {
|
160
|
-
box-shadow: 0px 0px 4px #C20000;
|
161
|
-
}
|
162
|
-
.screen.pending {
|
163
|
-
color: #F2CF32;
|
164
|
-
background-color: #FFFDBC;
|
165
|
-
border: 1px solid #F9E934;
|
166
|
-
border-left: 10px solid #F9E934;
|
167
|
-
}
|
168
|
-
.screen.pending img {
|
169
|
-
box-shadow: 0px 0px 4px #F9E934;
|
170
|
-
}
|
171
|
-
.screen dt {
|
172
|
-
color: #000;
|
173
|
-
font-size: 13px;
|
174
|
-
line-height: 17px;
|
175
|
-
margin: 0;
|
176
|
-
font-weight: normal;
|
177
|
-
}
|
178
|
-
.ci .screen dt {
|
179
|
-
position: relative;
|
180
|
-
z-index: 2;
|
181
|
-
}
|
182
|
-
.screen dd {
|
183
|
-
float: left;
|
184
|
-
margin-right: 10px;
|
185
|
-
-webkit-transition:all 0.3s ease-in-out;
|
186
|
-
opacity: 0;
|
187
|
-
position: relative;
|
188
|
-
top: -30px;
|
189
|
-
}
|
190
|
-
.screen dd.hidden {
|
191
|
-
visibility: hidden;
|
192
|
-
}
|
193
|
-
.screen.expanded, .ci .screen {
|
194
|
-
-webkit-transition:all 0.2s ease-in-out;
|
195
|
-
height: 510px;
|
196
|
-
}
|
197
|
-
.screen.expanded dd, .ci .screen dd {
|
198
|
-
opacity: 1.0;
|
199
|
-
-webkit-transition:all 0.3s ease-in-out;
|
200
|
-
}
|
201
|
-
.screen p {
|
202
|
-
margin-bottom: -3px;
|
203
|
-
padding: 5px;
|
204
|
-
font-size: 13px;
|
205
|
-
text-align: center;
|
206
|
-
font-weight: bold;
|
207
|
-
background-color: rgba(255, 255, 255, 0.5);;
|
208
|
-
border-radius: 5px;
|
209
|
-
opacity: 0.0;
|
210
|
-
position: relative;
|
211
|
-
z-index: 0;
|
212
|
-
}
|
213
|
-
.screen dd:hover p {
|
214
|
-
opacity: 1.0;
|
215
|
-
}
|
216
|
-
.ci .screen dd p {
|
217
|
-
opacity: 1.0;
|
218
|
-
background: transparent;
|
219
|
-
}
|
220
|
-
.screen img {
|
221
|
-
width: 320px;
|
222
|
-
height: 480px;
|
223
|
-
position: relative;
|
224
|
-
}
|
225
|
-
.ci .viewport {
|
226
|
-
width: 1018px;
|
227
|
-
height: 530px;
|
228
|
-
overflow: scroll;
|
229
|
-
}
|
230
|
-
.ci .surface {
|
231
|
-
height: 530px;
|
232
|
-
width: 100000px;
|
233
|
-
position: relative;
|
234
|
-
}
|
235
|
-
.ci .surface .screen {
|
236
|
-
float: left;
|
237
|
-
margin-right: 10px;
|
238
|
-
position: relative;
|
239
|
-
}
|