raakt 0.5.5 → 0.5.6

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.
@@ -0,0 +1,34 @@
1
+ require 'watir'
2
+ require 'raakt'
3
+ require 'test/unit'
4
+
5
+ # == Example usage of Raakt in Watir
6
+ # Watir is a great test framework. This simple class shows how you can assert basic accessibility in your testing framework and make sure you catch basic accessibility issues early in the development cycle.
7
+ class TC_myTest < Test::Unit::TestCase
8
+ attr_accessor :ie
9
+
10
+ def setup
11
+ @ie = Watir::IE.start("http://www.peterkrantz.com")
12
+ end
13
+
14
+ def teardown
15
+ @ie.close
16
+ end
17
+
18
+ # This is a standard watir test case
19
+ def test_startPageContainsAuthorName
20
+ assert(@ie.contains_text("Peter Krantz"))
21
+ end
22
+
23
+ def test_startPagePassesSimpleAccessibility
24
+ #set up the accessibility test
25
+ raakttest = Raakt::Test.new(@ie.document.body.parentelement.outerhtml)
26
+
27
+ #run all tests on the current page
28
+ result = raakttest.all
29
+
30
+ #make sure raakt didn't return any error messages
31
+ assert(result.length == 0, result)
32
+ end
33
+ end
34
+
@@ -13,10 +13,11 @@
13
13
  # RAAKT output is in the form of an array of Raakt::ErrorMessage objects.
14
14
  #
15
15
  # == Contributions
16
- # Thanks to Derek Perrault for refactoring RAAKT to use Hpricot[http://code.whytheluckystiff.net/hpricot/] while at the same time making the code more readable.
16
+ # Thanks to Derek Perrault for refactoring RAAKT to use Hpricot[http://github.com/hpricot] while at the same time making the code more readable.
17
17
  #
18
18
  # == Example usage
19
- # See the examples folder for a small script that shows how to retrieve a remote web page and perform an accessibility test on it.
19
+ # See the RAAKT wiki[http://www.peterkrantz.com/raakt/wiki/] for examples and more documentation.
20
+ #
20
21
  module Raakt
21
22
  require 'hpricot'
22
23
  require File.dirname(__FILE__) + '/iso_language_codes'
@@ -48,7 +49,7 @@ module Raakt
48
49
  :difficult_word => "Vocabulary: %s"
49
50
  }
50
51
 
51
- VERSION = "0.5.5"
52
+ VERSION = "0.5.6"
52
53
 
53
54
  class ErrorMessage
54
55
 
@@ -312,11 +313,11 @@ module Raakt
312
313
  for element in formatting_items
313
314
  found_elements << element.name
314
315
  end
315
- messages << ErrorMessage.new(:missing_semantics, "#{found_elements.join(', ')}")
316
+ messages << ErrorMessage.new(:missing_semantics, "#{found_elements.uniq.join(', ')}")
316
317
  end
317
318
 
318
319
  flicker_elements = %w(blink marquee)
319
- flicker_items = (@doc/flicker_elements.join('|'))
320
+ flicker_items = (@doc/flicker_elements.uniq.join('|'))
320
321
 
321
322
  unless flicker_items.empty?
322
323
  messages << ErrorMessage.new(:has_flicker)
@@ -0,0 +1,34 @@
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ Gem::Specification.new do |s|
4
+ s.name = %q{raakt}
5
+ s.version = "0.5.6"
6
+
7
+ s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
+ s.authors = ["Peter Krantz"]
9
+ s.date = %q{2010-08-29}
10
+ s.description = %q{A toolkit to find basic accessibility issues in HTML documents.}
11
+ s.email = %q{peter.krantzNODAMNSPAM@gmail.com}
12
+ s.extra_rdoc_files = ["CHANGELOG", "LICENSE", "README", "TODO", "lib/iso_language_codes.rb", "lib/raakt.rb"]
13
+ s.files = ["CHANGELOG", "LICENSE", "Manifest", "README", "TODO", "examples/acctest.rb", "examples/crawlandtest.rb", "examples/list_site_urls.rb", "examples/seleniumrc_example.rb", "examples/svarta_listan.rb", "examples/watir_example.rb", "lib/iso_language_codes.rb", "lib/raakt.rb", "raakt.gemspec", "rakefile", "service/files/base.css", "service/files/button-left.png", "service/files/button-right.png", "service/files/grad.png", "service/files/jquery-131.js", "service/files/round-br.png", "service/files/round-tl.png", "service/files/round-tr.png", "service/files/tab-tl.png", "service/files/tab-tr.png", "service/files/test.js", "service/files/textbg.png", "service/files/w3c.png", "service/index.rhtml", "service/server.rb", "tests/areadoc1.htm", "tests/areadoc2.htm", "tests/areadoc3.htm", "tests/bdoc.htm", "tests/charset_nocharset_specified.htm", "tests/charset_utf8.htm", "tests/difficult_words1.htm", "tests/difficult_words2.htm", "tests/difficult_words3.htm", "tests/difficult_words4.htm", "tests/difficult_words5.htm", "tests/difficult_words6.htm", "tests/difficult_words7.htm", "tests/embeddoc1.htm", "tests/empty.htm", "tests/emptytitledoc.htm", "tests/fielddoc1.htm", "tests/fielddoc2.htm", "tests/fielddoc3.htm", "tests/flickerdoc1.htm", "tests/formdoc1.htm", "tests/formdoc2.htm", "tests/formdoc3.htm", "tests/framedoc1.htm", "tests/framedoc2.htm", "tests/full_berg.htm", "tests/full_google.htm", "tests/headingsdoc1.htm", "tests/headingsdoc10.htm", "tests/headingsdoc2.htm", "tests/headingsdoc3.htm", "tests/headingsdoc4.htm", "tests/headingsdoc5.htm", "tests/headingsdoc6.htm", "tests/headingsdoc7.htm", "tests/headingsdoc8.htm", "tests/headingsdoc9.htm", "tests/imagedoc1.htm", "tests/imagedoc2.htm", "tests/imagedoc3.htm", "tests/imagedoc4.htm", "tests/inputimgdoc1.htm", "tests/invalidelements1.htm", "tests/invalidhtmldoc1.htm", "tests/invalidhtmldoc2.htm", "tests/invalidxhtmldoc1.htm", "tests/langinfodoc1.htm", "tests/langinfodoc2.htm", "tests/linkdoc1.htm", "tests/linkdoc2.htm", "tests/linkdoc3.htm", "tests/linkdoc4.htm", "tests/metarefreshdoc1.htm", "tests/metarefreshdoc2.htm", "tests/metarefreshdoc3.htm", "tests/nestedcomment.htm", "tests/nestedtabledoc.htm", "tests/newlinetext.txt", "tests/raakt_test.rb", "tests/scriptdoc1.htm", "tests/scriptdoc2.htm", "tests/tabledoc1.htm", "tests/tabledoc2.htm", "tests/tabledoc3.htm", "tests/tabledoc4.htm", "tests/tabledoc5.htm", "tests/tabledoc6.htm", "tests/tabledoc7.htm", "tests/tablelayoutdoc.htm", "tests/test_helper.rb", "tests/xhtmldoc1.htm", "Rakefile"]
14
+ s.homepage = %q{http://www.peterkrantz.com/raakt/wiki/}
15
+ s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Raakt", "--main", "README"]
16
+ s.require_paths = ["lib"]
17
+ s.required_ruby_version = Gem::Requirement.new(">= 1.8.2")
18
+ s.rubyforge_project = %q{raakt}
19
+ s.rubygems_version = %q{1.3.7}
20
+ s.summary = %q{A toolkit to find basic accessibility issues in HTML documents.}
21
+
22
+ if s.respond_to? :specification_version then
23
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
24
+ s.specification_version = 3
25
+
26
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
27
+ s.add_runtime_dependency(%q<hpricot>, [">= 0.6"])
28
+ else
29
+ s.add_dependency(%q<hpricot>, [">= 0.6"])
30
+ end
31
+ else
32
+ s.add_dependency(%q<hpricot>, [">= 0.6"])
33
+ end
34
+ end
@@ -0,0 +1,18 @@
1
+ require 'rubygems'
2
+ require 'rake'
3
+ require 'echoe'
4
+
5
+ Echoe.new('raakt') do |s|
6
+ s.name = 'raakt'
7
+ s.summary = 'A toolkit to find basic accessibility issues in HTML documents.'
8
+ s.runtime_dependencies = ["hpricot >=0.6"]
9
+ s.has_rdoc = true
10
+ s.ruby_version = '>= 1.8.2'
11
+ s.files = FileList['lib/*.rb', 'tests/*'].to_a
12
+ s.test_files = Dir.glob('tests/raakt_test.rb')
13
+ s.author = "Peter Krantz"
14
+ s.email = "peter.krantzNODAMNSPAM@gmail.com"
15
+ s.url = "http://www.peterkrantz.com/raakt/wiki/"
16
+ s.ignore_pattern = ["examples", "pkg", "service"]
17
+ end
18
+
@@ -0,0 +1,736 @@
1
+ /* @group Reset */
2
+
3
+ html, body, form, fieldset, p, a, ul, ol, li, div, legend, label,
4
+ br, input, button, textarea, h1, h2, h3, h4, h5, strong {
5
+ margin: 0;
6
+ padding: 0;
7
+ border: 0;
8
+ font-weight: normal;
9
+ font-style: normal;
10
+ font-size: 100%;
11
+ font-family: Helvetica, Arial, Sans-Serif;
12
+ vertical-align: baseline;
13
+ background-color: white;
14
+ color: #1f2126;
15
+ line-height: 1;
16
+ text-align: left;
17
+ }
18
+
19
+ a img {
20
+ border: 0;
21
+ }
22
+
23
+ a:link, a:visited {
24
+ text-decoration: underline;
25
+ color: #365D95;
26
+ }
27
+
28
+ a:hover, a:active {
29
+ text-decoration: underline;
30
+ color: #1f2126;
31
+ }
32
+
33
+ ul, ol {
34
+ list-style: none;
35
+ }
36
+
37
+ abbr[title], acronym[title], span[title], strong[title] {
38
+ border-bottom: thin dotted;
39
+ cursor: help;
40
+ }
41
+
42
+ acronym:hover, abbr:hover {
43
+ cursor: help;
44
+ }
45
+
46
+ /* @end */
47
+
48
+ /* @group Basics */
49
+
50
+ body {
51
+ padding-bottom: 6em;
52
+ min-width: 40em; /* for the tabs, mostly */
53
+ }
54
+
55
+ p {
56
+ line-height: 130%;
57
+ }
58
+
59
+ strong {
60
+ font-weight: bold;
61
+ }
62
+
63
+ h2 {
64
+ color: #690;
65
+ font-family:Verdana,Arial,sans-serif;
66
+ background-color: white;
67
+ font-size: 1.3em;
68
+ margin-bottom: 1em;
69
+ }
70
+
71
+ h3 {
72
+ font-family:Verdana,Arial,sans-serif;
73
+ color: #690;
74
+ background-color: white;
75
+ font-size: 1.1em;
76
+ border-bottom: 1px dotted #aaaa77;
77
+ text-decoration: none;
78
+ margin-top: 1em;
79
+ margin-bottom: 1em;
80
+ }
81
+
82
+ h4 {
83
+ font-family:Verdana,Arial,sans-serif;
84
+ color: #690;
85
+ font-style: italic;
86
+ text-decoration: none;
87
+ font-size: .9em;
88
+ font-weight:600;
89
+ margin-top: 1.5em;
90
+ margin-bottom: .5em;
91
+ }
92
+
93
+ h5,h6 {
94
+ font-family:Verdana,Arial,sans-serif;
95
+ color: #690;
96
+ background-color: white;
97
+ font-weight: normal;
98
+ font-size: small;
99
+ margin-top: 1em;
100
+ margin-left: 1em;
101
+ margin-bottom: .7em;
102
+ }
103
+
104
+ /* tables in the documentation */
105
+
106
+ table {
107
+ }
108
+ td, th{
109
+ padding: 6px;
110
+ }
111
+
112
+ /* @end */
113
+
114
+
115
+ /* @group Inputs */
116
+
117
+ div#frontforms input {
118
+ /* default for radio and checkbox. Others will be handled directly */
119
+ background-color: #EAEBEE;
120
+ }
121
+
122
+ input#uri, input#file, input#uploaded_file, input#keywords, input#short_desc, textarea {
123
+ font-family: Monaco, "Courier New", Monospace;
124
+ font-size: 0.9em;
125
+ border: 1px solid #bbb;
126
+ border-top: 1px solid #777;
127
+ border-bottom: 1px solid #ddd;
128
+ background: #fefefe url(/files/textbg.png) no-repeat top left;
129
+ padding: 0.2em 0.2em;
130
+ max-width: 1000px;
131
+ font-variant: normal;
132
+ }
133
+
134
+ input#uri, input#file, input#uploaded_file {
135
+ width: 85%;
136
+ margin: 0.3em 0 0 1em;
137
+ }
138
+
139
+ input#file, input#uploaded_file {
140
+ width: 30em;
141
+ }
142
+
143
+ input#mailsearch, input#bugsearch {
144
+ background-color: #EAEBEE;
145
+ color: #365D95;
146
+ padding: .3em 1em;
147
+ border: 1px outset #ccc;
148
+ }
149
+ input#mailsearch:active, input#bugsearch:active {
150
+ border-style: inset !important;
151
+ }
152
+ a.submit {
153
+ display: block;
154
+ width: 10em;
155
+ text-align: center;
156
+ margin: 0 auto;
157
+ background: url(/files/button-left.png) no-repeat center left;
158
+ text-decoration: none;
159
+ }
160
+
161
+ a.submit span {
162
+ display: block;
163
+ padding: 1.2em 2em;
164
+ background: url(/files/button-right.png) no-repeat center right;
165
+ }
166
+
167
+ textarea {
168
+ width: 98.5%;
169
+ }
170
+
171
+ p.submit_button input {
172
+ overflow: visible;
173
+ width: auto;
174
+ background: #fff;
175
+ color: #365D95;
176
+ padding: 0.3em 0.4em 0.1em 0.3em;
177
+ font-size: 1.2em;
178
+ width: 12em;
179
+ text-align: center;
180
+ border-bottom: 2px solid #444;
181
+ border-right: 2px solid #444;
182
+ border-top: 1px solid #aaa;
183
+ border-left: 1px solid #aaa;
184
+ background: #eee url(/files/grad.png) repeat-x top left;
185
+ cursor: pointer;
186
+ }
187
+
188
+ p.submit_button input:active {
189
+ color: #1f2126;
190
+ border-bottom: 1px solid #aaa;
191
+ border-right: 1px solid #aaa;
192
+ border-top: 2px solid #444;
193
+ border-left: 2px solid #444;
194
+ }
195
+
196
+ label {
197
+ font-size: 0.9em;
198
+ padding-left: .2em;
199
+ padding-right: .2em;
200
+ }
201
+
202
+ div.options select {
203
+ margin-right: 0.8em;
204
+ }
205
+
206
+ div.options label {
207
+ margin-right: 0.3em;
208
+ }
209
+
210
+
211
+ div.options table, div.options tbody, div.options td, div.options th, div.options tr {
212
+ margin: 0;
213
+ padding: 0;
214
+ }
215
+
216
+ div.options table {
217
+ border-collapse: collapse;
218
+ }
219
+
220
+ div.options th, div.options th label {
221
+ font-weight: bold;
222
+ }
223
+
224
+ div.options td, div.options th {
225
+ padding: 0.5em 1.1em 0.5em 0;
226
+ text-align: left;
227
+ }
228
+
229
+ div.options td input {
230
+ margin-right: 0.2em;
231
+ }
232
+
233
+ div.options select {
234
+ width: 100%;
235
+ }
236
+
237
+ div.options table tr.subchoice th {
238
+ padding-left: 3em;
239
+ }
240
+ tr.subchoice th label {
241
+ padding-left: 0;
242
+ }
243
+ tr.subchoice th, tr.subchoice th label {
244
+ font-size: 1em;
245
+ font-weight: normal;
246
+ }
247
+ /* @end */
248
+
249
+ /* @group Header */
250
+
251
+ h1#title {
252
+ font-family: "Myriad Web", "Myriad Pro", "Gill Sans", Helvetica, Arial, Sans-Serif;
253
+ background-color: #365D95;
254
+ color: #fdfdfd;
255
+ font-size: 1.6em;
256
+ background: url(/files/head-bl.png) bottom left no-repeat;
257
+ padding-bottom: 0.430em;
258
+ }
259
+ h1#title a, h1#title a img {
260
+ background-color: #365D95;
261
+ }
262
+
263
+ h1 span {
264
+ border-bottom: 1px solid #6383b1;
265
+ border-color: #4e6f9e;
266
+ }
267
+
268
+ h1#title a:link, h1#title a:hover, h1#title a:visited, h1#title a:active {
269
+ color: #fdfdfd !important;
270
+ text-decoration: none;
271
+ }
272
+
273
+ h1#title img {
274
+ vertical-align: middle;
275
+ margin-right: 0.7em;
276
+ }
277
+
278
+ div#banner {
279
+ background: #365D95 url(/files/head-br.png) bottom right no-repeat;
280
+ margin: 1.5em 2em;
281
+ }
282
+
283
+ p#tagline {
284
+ font-size: 0.7em;
285
+ margin: -2em 0 0 12.1em;
286
+ padding-bottom: 1em;
287
+ letter-spacing: 0.1em;
288
+ line-height: 100% !important;
289
+ color: #D0DCEE;
290
+ background-color: transparent;
291
+ }
292
+
293
+ ul#lang_choice {
294
+ position: absolute;
295
+ top: 0;
296
+ right: 0;
297
+ font-size: 0.7em;
298
+ padding: 0.8em 0;
299
+ margin-right: 3.3em;
300
+ }
301
+
302
+ ul#lang_choice a:link, ul#lang_choice a:visited {
303
+ text-decoration: none;
304
+ }
305
+
306
+ ul#lang_choice a:hover, ul#lang_choice a:active {
307
+ text-decoration: underline;
308
+ }
309
+
310
+ ul#lang_choice li {
311
+ display: inline;
312
+ padding-left: 0.5em;
313
+ }
314
+
315
+ /* @end */
316
+
317
+ /* @group Tabs */
318
+
319
+ ul#tabset_tabs {
320
+ height: 1.59em;
321
+ }
322
+
323
+ ul#tabset_tabs li {
324
+ cursor: pointer;
325
+ float: left;
326
+ margin-right: 0.245em;
327
+ background: #DADDE3 url(/files/tab-tl.png) no-repeat top left;
328
+ border-bottom: 1px solid #CBD0DB;
329
+ }
330
+
331
+ ul#tabset_tabs li.selected {
332
+ background: #EAEBEE url(/files/round-tl.png) no-repeat top left;
333
+ border-bottom: 1px solid #EAEBEE;
334
+ }
335
+
336
+ ul#tabset_tabs li.selected a:link, ul#tabset_tabs li.selected a:visited {
337
+ color: #1f2126;
338
+ background: #EAEBEE url(/files/round-tr.png) no-repeat top right;
339
+ }
340
+
341
+ ul#tabset_tabs li span {
342
+ color: #616571;
343
+ }
344
+
345
+ body ul#tabset_tabs li.selected a span {
346
+ color: #3d424f;
347
+ }
348
+
349
+ ul#tabset_tabs li a:link, ul#tabset_tabs li a:visited {
350
+ color: #365D95;
351
+ display: block;
352
+ padding: 0.515em 1.3em 0.215em 0.8em;
353
+ background: #DADDE3 url(/files/tab-tr.png) no-repeat top right;
354
+ margin-left: 0.5em;
355
+ font-size: 0.9em;
356
+ font-weight: bold;
357
+ text-decoration: none;
358
+ }
359
+
360
+ ul#tabset_tabs li a:hover, ul#tabset_tabs li a:active {
361
+ color: #1f2126;
362
+ }
363
+
364
+ ul#tabset_tabs li a:hover span, ul#tabset_tabs li a:active span {
365
+ color: #3d424f;
366
+ }
367
+
368
+ ul#tabset_tabs li.selected span {
369
+ color: #5d6371;
370
+ }
371
+
372
+ /* @end */
373
+
374
+ /* @group Contents */
375
+
376
+ div#frontforms {
377
+ background: #fff;
378
+ padding: 0 2em;
379
+ }
380
+
381
+ div#fields {
382
+ clear: both;
383
+ background: #EAEBEE url(/files/round-tr.png) no-repeat top right;
384
+ padding: 0.5em 1.3em;
385
+ border-bottom: 1px solid #DCDDE0;
386
+ }
387
+
388
+ div#fields legend, div#fields p, div#fields p strong, div#fields p a, div#fields fieldset, div#fields form,div#fields form fieldset legend a, div#fields form p label, div#fields tr label {
389
+ background-color: #EAEBEE;
390
+ }
391
+
392
+ fieldset {
393
+ background: #EAEBEE;
394
+ }
395
+
396
+ legend {
397
+ font-size: 1.1em;
398
+ padding: 1em 0 0.23em;
399
+ letter-spacing: 0.06em;
400
+ }
401
+
402
+ legend a:link, legend a:visited, legend a:hover, legend a:active {
403
+ text-decoration: none;
404
+ }
405
+
406
+ legend.toggletext {
407
+ cursor: pointer;
408
+ padding-left: 0.8em;
409
+ background: #EAEBEE url(/files/arrow-closed.png) 0 1.2em no-repeat;
410
+ }
411
+
412
+ legend.toggled {
413
+ background: #EAEBEE url(/files/arrow-open.png) 0 1.4em no-repeat;
414
+ }
415
+
416
+ p.instructions {
417
+ color: #4D525E;
418
+ font-size: 0.80em;
419
+ padding-bottom: 1em;
420
+ padding-top: 0.5em;
421
+ }
422
+
423
+ p.instructions label {
424
+ color: #4D525E;
425
+ padding: 0;
426
+ margin: 0;
427
+ font-size: 1em;
428
+ }
429
+
430
+ div.options {
431
+ padding: 0.7em 0 0.5em 1em;
432
+ }
433
+
434
+ div.options, p.submit_button, p.instructions, p#note {
435
+ border-top: 1px solid #cbcdd5;
436
+ background: #EAEBEE url(/files/double.png) left top repeat-x;
437
+ }
438
+
439
+ p.submit_button {
440
+ padding: 0.6em 0 0;
441
+ margin: 0;
442
+ text-align: center;
443
+ }
444
+
445
+
446
+ p#note {
447
+ clear: both;
448
+ color: #4D525E;
449
+ font-size: 0.9em;
450
+ padding: 0.5em 0 0.1em;
451
+ }
452
+
453
+ /* @end */
454
+
455
+ /* @group Menu */
456
+
457
+ ul#menu {
458
+ text-align: center;
459
+ margin: 1em 2em;
460
+ background: #EAEBEE url(/files/round-br.png) no-repeat bottom right;
461
+ padding: 0.5em 0 0.3em;
462
+ border-top: 1px solid #DCDDE0;
463
+ }
464
+
465
+ ul#menu span {
466
+ display: none;
467
+ }
468
+
469
+ ul#menu a:link, ul#menu a:visited {
470
+ background: #EAEBEE;
471
+ color: #365D95;
472
+ text-decoration: none;
473
+ }
474
+
475
+ ul#menu a:hover, ul#menu a:active {
476
+ color: #1f2126;
477
+ text-decoration: underline;
478
+ }
479
+
480
+ ul#menu li {
481
+ display: inline;
482
+ margin-right: 0.8em;
483
+ }
484
+
485
+
486
+
487
+ /* @end */
488
+
489
+ /* @group Footer */
490
+
491
+ div#footer {
492
+ padding: 0 2em;
493
+ }
494
+
495
+ p#activity_logos {
496
+ float: left;
497
+ padding-right: 2em;
498
+ margin-top: .6em;
499
+ }
500
+
501
+ p#support_logo {
502
+ float: right;
503
+ font-size: 0.8em;
504
+ text-align: center;
505
+ padding-left: 2em;
506
+ padding-top: 1.8em;
507
+ width: 90px;
508
+ height: 100px;
509
+ }
510
+
511
+ p.copyright {
512
+ text-align: center;
513
+ text-transform: uppercase;
514
+ font-size: 0.7em;
515
+ line-height: 1.4;
516
+ }
517
+
518
+ p.copyright, p.copyright a {
519
+ text-decoration: none;
520
+ color: #7C8395;
521
+ }
522
+
523
+ p.copyright a:link, p.copyright a:visited {
524
+ color: #A3756E;
525
+ }
526
+
527
+ p.copyright a:hover, p.copyright a:active {
528
+ color: #7D4A42;
529
+ }
530
+
531
+ p#version_info {
532
+ font-size: small;
533
+ text-align: center;
534
+ color: #888;
535
+ background-color: white;
536
+ }
537
+
538
+ /* @end */
539
+
540
+ /* @group Docs */
541
+
542
+ div.doc {
543
+ margin: 1em 2em;
544
+ padding: 0.5em 0 0.3em;
545
+ }
546
+
547
+
548
+ /* Set line height to 1.4x (from 1.3x on general site) to allow for various inline decoration. */
549
+ div.doc p, div.doc li {
550
+ line-height: 150% !important;
551
+ }
552
+ div.doc p {
553
+ margin-bottom: .7em;
554
+ margin-top: .5em;
555
+ }
556
+
557
+ div.doc p, div.doc dt, div.doc ul, div.doc ol {
558
+ margin-left: 1.5em;
559
+ margin-right: 1.5em;
560
+ }
561
+
562
+ div.doc ul li {
563
+ list-style-type: disc;
564
+ margin-left: 1em;
565
+ }
566
+
567
+ /* documentation - table of contents */
568
+ #toc { /* making the toc a bit more compact and standing out */
569
+ font-size: .85em;
570
+ font-weight: bold;
571
+ margin-bottom: 2em;
572
+ margin-left: 3em;
573
+ }
574
+
575
+ div.doc div#toc ol, div.doc ol {
576
+ list-style-type: decimal;
577
+ }
578
+ div.doc div#toc ol li {
579
+ line-height: 130%;
580
+ font-weight: bold;
581
+ }
582
+ div.doc div#toc ol li ol {
583
+ list-style-type: lower-alpha;
584
+ font-weight: normal;
585
+ margin-left: 1em;
586
+ }
587
+ div.doc div#toc ol li ol li ol{
588
+ list-style-type: lower-roman;
589
+ }
590
+
591
+
592
+ /* documentation - error explanations */
593
+ dl#expl dt code { /* headings for an error */
594
+ white-space: normal;
595
+ font-weight: bold;
596
+ }
597
+
598
+ dl#expl dt {
599
+ border-top: 1px dashed black;
600
+ margin-top: 2em;
601
+ margin-bottom: 1em;
602
+ }
603
+
604
+ div.doc dt {
605
+ margin-top: 1.2em;
606
+ margin-bottom: .2em;
607
+ }
608
+ div.doc dt, div.doc dt a {
609
+ font-style: italic;
610
+ }
611
+ div.doc dd {
612
+ margin-right: 0; /* no need for the extra margin if we nicely put the text of the dd in a paragraph */
613
+ }
614
+ div.doc var { /* headings for an error */
615
+ color: #006;
616
+ }
617
+
618
+ /* A snippet of code used inline. */
619
+ div.doc code {
620
+ white-space: normal;
621
+ display: inline;
622
+ padding-left: .2em;
623
+ padding-right: .2em;
624
+ color: black;
625
+ font-family: Monaco, "Courier New", monospace;
626
+ border: 1px dotted #ccc;
627
+ }
628
+
629
+ div.doc code.block {
630
+ display: block;
631
+ padding: 1em;
632
+ white-space: pre;
633
+ margin-top: 1em;
634
+ margin-bottom: 1em;
635
+ margin-right: 3em;
636
+ }
637
+
638
+ div.doc pre {
639
+ margin-left: 5em;
640
+ padding-left: 2em;
641
+ line-height: 150%;
642
+ border-left: 1px solid #690;
643
+
644
+ }
645
+
646
+ div.doc code samp {
647
+ font-weight: normal;
648
+ color: black;
649
+ font-style: italic;
650
+ }
651
+
652
+ /* reference tables */
653
+
654
+ div.doc table {
655
+ border-collapse: collapse;
656
+ border-right: 1px solid #ccc;
657
+ }
658
+ div.doc table td, .doc table th{
659
+ border-top: 0px solid #ddd;
660
+ border-bottom: 1px solid #ccc;
661
+ border-left: 1px solid #eee;
662
+ padding: 6px;
663
+ border-collapse: collapse;
664
+ }
665
+ div.doc table th {
666
+ background-color: #eee;
667
+ color: #11111A;
668
+ border-right: 1px solid #ccc;
669
+ }
670
+
671
+ div.doc table {
672
+ margin-top: 1em;
673
+ margin-bottom: .5em;
674
+ border-collapse: collapse;
675
+ border-right: 1px solid #ccc;
676
+ }
677
+
678
+ div.doc td, div.doc th {
679
+ border-top: 0px solid #ddd;
680
+ border-bottom: 1px solid #ccc;
681
+ border-left: 1px solid #eee;
682
+ border-collapse: collapse;
683
+
684
+ }
685
+ div.doc th {
686
+ background-color: #eee;
687
+ color: #11111A;
688
+ border-right: 1px solid #ccc;
689
+ }
690
+
691
+ /* @end */
692
+
693
+
694
+ /* @group home page, news text */
695
+
696
+ div.intro {
697
+ margin: 1em 2em;
698
+ padding: 0.5em 0 0.3em;
699
+ }
700
+
701
+ div.intro p { margin-bottom: .5em;}
702
+
703
+ #news dt {
704
+ font-weight: bold;
705
+ margin-top: 1.5em;
706
+ margin-bottom: .3em;
707
+ }
708
+
709
+ #news dd {
710
+ margin-left: 2.5em;
711
+ margin-right: 1.5em;
712
+ }
713
+
714
+
715
+ /* warning on the home page for test instances */
716
+ #test_warning {
717
+ border-left: 1px solid #ccc;
718
+ border-right: 1px solid #ccc;
719
+ line-height: 160%;
720
+ text-align: center;
721
+ margin-top: 2em;
722
+ margin-left: 12%;
723
+ margin-right: 12%;
724
+ padding-left: 1.5em;
725
+ padding-right: 1.5em;
726
+ color: black;
727
+ background-color: white;
728
+ }
729
+
730
+ #test_warning img {
731
+ width: 1.3em;
732
+ vertical-align: middle;
733
+ }
734
+
735
+ /* @end */
736
+