prepor-erlapi 0.1.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (100) hide show
  1. data/.document +5 -0
  2. data/.gitignore +5 -0
  3. data/LICENSE +20 -0
  4. data/README.rdoc +15 -0
  5. data/Rakefile +56 -0
  6. data/VERSION +1 -0
  7. data/bin/erlapi +26 -0
  8. data/erlapi.gemspec +138 -0
  9. data/lib/erlapi/generator/shtml.rb +353 -0
  10. data/lib/erlapi/generator/template/direct/_context.rhtml +172 -0
  11. data/lib/erlapi/generator/template/direct/class.rhtml +40 -0
  12. data/lib/erlapi/generator/template/direct/file.rhtml +30 -0
  13. data/lib/erlapi/generator/template/direct/index.rhtml +14 -0
  14. data/lib/erlapi/generator/template/direct/resources/apple-touch-icon.png +0 -0
  15. data/lib/erlapi/generator/template/direct/resources/css/main.css +263 -0
  16. data/lib/erlapi/generator/template/direct/resources/css/panel.css +383 -0
  17. data/lib/erlapi/generator/template/direct/resources/css/reset.css +53 -0
  18. data/lib/erlapi/generator/template/direct/resources/favicon.ico +0 -0
  19. data/lib/erlapi/generator/template/direct/resources/i/arrows.png +0 -0
  20. data/lib/erlapi/generator/template/direct/resources/i/results_bg.png +0 -0
  21. data/lib/erlapi/generator/template/direct/resources/i/tree_bg.png +0 -0
  22. data/lib/erlapi/generator/template/direct/resources/js/jquery-1.3.2.min.js +19 -0
  23. data/lib/erlapi/generator/template/direct/resources/js/jquery-effect.js +593 -0
  24. data/lib/erlapi/generator/template/direct/resources/js/main.js +22 -0
  25. data/lib/erlapi/generator/template/direct/resources/js/searchdoc.js +628 -0
  26. data/lib/erlapi/generator/template/direct/resources/panel/index.html +71 -0
  27. data/lib/erlapi/generator/template/merge/index.rhtml +14 -0
  28. data/lib/erlapi/generator/template/shtml/_context.rhtml +164 -0
  29. data/lib/erlapi/generator/template/shtml/class.rhtml +46 -0
  30. data/lib/erlapi/generator/template/shtml/file.rhtml +37 -0
  31. data/lib/erlapi/generator/template/shtml/index.rhtml +14 -0
  32. data/lib/erlapi/generator/template/shtml/resources/apple-touch-icon.png +0 -0
  33. data/lib/erlapi/generator/template/shtml/resources/css/main.css +191 -0
  34. data/lib/erlapi/generator/template/shtml/resources/css/panel.css +383 -0
  35. data/lib/erlapi/generator/template/shtml/resources/css/reset.css +53 -0
  36. data/lib/erlapi/generator/template/shtml/resources/favicon.ico +0 -0
  37. data/lib/erlapi/generator/template/shtml/resources/i/arrows.png +0 -0
  38. data/lib/erlapi/generator/template/shtml/resources/i/results_bg.png +0 -0
  39. data/lib/erlapi/generator/template/shtml/resources/i/tree_bg.png +0 -0
  40. data/lib/erlapi/generator/template/shtml/resources/js/jquery-1.3.2.min.js +19 -0
  41. data/lib/erlapi/generator/template/shtml/resources/js/main.js +34 -0
  42. data/lib/erlapi/generator/template/shtml/resources/js/searchdoc.js +628 -0
  43. data/lib/erlapi/generator/template/shtml/resources/panel/index.html +71 -0
  44. data/lib/erlapi/generator.rb +194 -0
  45. data/lib/erlapi/helpers.rb +26 -0
  46. data/lib/erlapi/merge.rb +217 -0
  47. data/lib/erlapi/parser.rb +134 -0
  48. data/lib/erlapi/shtml.rb +351 -0
  49. data/lib/erlapi/templatable.rb +51 -0
  50. data/lib/erlapi/templates/html/direct/_context.rhtml +172 -0
  51. data/lib/erlapi/templates/html/direct/class.rhtml +40 -0
  52. data/lib/erlapi/templates/html/direct/file.rhtml +30 -0
  53. data/lib/erlapi/templates/html/direct/index.rhtml +14 -0
  54. data/lib/erlapi/templates/html/direct/resources/apple-touch-icon.png +0 -0
  55. data/lib/erlapi/templates/html/direct/resources/css/main.css +263 -0
  56. data/lib/erlapi/templates/html/direct/resources/css/panel.css +383 -0
  57. data/lib/erlapi/templates/html/direct/resources/css/reset.css +53 -0
  58. data/lib/erlapi/templates/html/direct/resources/favicon.ico +0 -0
  59. data/lib/erlapi/templates/html/direct/resources/i/arrows.png +0 -0
  60. data/lib/erlapi/templates/html/direct/resources/i/results_bg.png +0 -0
  61. data/lib/erlapi/templates/html/direct/resources/i/tree_bg.png +0 -0
  62. data/lib/erlapi/templates/html/direct/resources/js/jquery-1.3.2.min.js +19 -0
  63. data/lib/erlapi/templates/html/direct/resources/js/jquery-effect.js +593 -0
  64. data/lib/erlapi/templates/html/direct/resources/js/main.js +22 -0
  65. data/lib/erlapi/templates/html/direct/resources/js/searchdoc.js +628 -0
  66. data/lib/erlapi/templates/html/direct/resources/panel/index.html +71 -0
  67. data/lib/erlapi/templates/html/merge/index.rhtml +14 -0
  68. data/lib/erlapi/templates/html/shtml/_context.rhtml +63 -0
  69. data/lib/erlapi/templates/html/shtml/class.rhtml +25 -0
  70. data/lib/erlapi/templates/html/shtml/file.rhtml +37 -0
  71. data/lib/erlapi/templates/html/shtml/index.rhtml +14 -0
  72. data/lib/erlapi/templates/html/shtml/resources/apple-touch-icon.png +0 -0
  73. data/lib/erlapi/templates/html/shtml/resources/css/main.css +263 -0
  74. data/lib/erlapi/templates/html/shtml/resources/css/panel.css +383 -0
  75. data/lib/erlapi/templates/html/shtml/resources/css/reset.css +53 -0
  76. data/lib/erlapi/templates/html/shtml/resources/favicon.ico +0 -0
  77. data/lib/erlapi/templates/html/shtml/resources/i/arrows.png +0 -0
  78. data/lib/erlapi/templates/html/shtml/resources/i/results_bg.png +0 -0
  79. data/lib/erlapi/templates/html/shtml/resources/i/tree_bg.png +0 -0
  80. data/lib/erlapi/templates/html/shtml/resources/js/jquery-1.3.2.min.js +19 -0
  81. data/lib/erlapi/templates/html/shtml/resources/js/jquery-effect.js +593 -0
  82. data/lib/erlapi/templates/html/shtml/resources/js/main.js +22 -0
  83. data/lib/erlapi/templates/html/shtml/resources/js/searchdoc.js +620 -0
  84. data/lib/erlapi/templates/html/shtml/resources/panel/index.html +71 -0
  85. data/lib/erlapi/templates/html/shtml/resources copy/apple-touch-icon.png +0 -0
  86. data/lib/erlapi/templates/html/shtml/resources copy/css/main.css +195 -0
  87. data/lib/erlapi/templates/html/shtml/resources copy/css/panel.css +383 -0
  88. data/lib/erlapi/templates/html/shtml/resources copy/css/reset.css +53 -0
  89. data/lib/erlapi/templates/html/shtml/resources copy/favicon.ico +0 -0
  90. data/lib/erlapi/templates/html/shtml/resources copy/i/arrows.png +0 -0
  91. data/lib/erlapi/templates/html/shtml/resources copy/i/results_bg.png +0 -0
  92. data/lib/erlapi/templates/html/shtml/resources copy/i/tree_bg.png +0 -0
  93. data/lib/erlapi/templates/html/shtml/resources copy/js/jquery-1.3.2.min.js +19 -0
  94. data/lib/erlapi/templates/html/shtml/resources copy/js/main.js +34 -0
  95. data/lib/erlapi/templates/html/shtml/resources copy/js/searchdoc.js +628 -0
  96. data/lib/erlapi/templates/html/shtml/resources copy/panel/index.html +71 -0
  97. data/lib/erlapi.rb +38 -0
  98. data/test/erlapi_test.rb +7 -0
  99. data/test/test_helper.rb +10 -0
  100. metadata +154 -0
@@ -0,0 +1,195 @@
1
+ a {
2
+ color: #00F;
3
+ text-decoration: none;
4
+ }
5
+
6
+ a:hover {
7
+ color: #77F;
8
+ text-decoration: underline;
9
+ }
10
+
11
+ body, td, p {
12
+ font-family: "Bitstream Vera Sans", Verdana, Arial, Helvetica, sans-serif;
13
+ background: #FFF;
14
+ color: #000;
15
+ margin: 0px;
16
+ font-size: small;
17
+ }
18
+
19
+ p {
20
+ margin-top: 0.5em;
21
+ margin-bottom: 0.5em;
22
+ }
23
+
24
+ #content {
25
+ margin: 2em;
26
+ margin-left: 3.5em;
27
+ margin-right: 3.5em;
28
+ }
29
+
30
+ #description p {
31
+ margin-bottom: 0.5em;
32
+ }
33
+
34
+ #func_types p {
35
+ margin-bottom: 0.5em;
36
+ }
37
+
38
+ .sectiontitle {
39
+ margin-top: 1em;
40
+ margin-bottom: 1em;
41
+ padding: 0.5em;
42
+ padding-left: 2em;
43
+ background: #005;
44
+ color: #FFF;
45
+ font-weight: bold;
46
+ }
47
+
48
+ .attr-rw {
49
+ padding-left: 1em;
50
+ padding-right: 1em;
51
+ text-align: center;
52
+ color: #055;
53
+ }
54
+
55
+ .attr-name {
56
+ font-weight: bold;
57
+ }
58
+
59
+ .attr-desc {
60
+ }
61
+
62
+ .attr-desc p {
63
+ margin-top: 0;
64
+ }
65
+
66
+ .attr-value {
67
+ font-family: monospace;
68
+ }
69
+
70
+ .file-title-prefix {
71
+ font-size: large;
72
+ }
73
+
74
+ .file-title {
75
+ font-size: large;
76
+ font-weight: bold;
77
+ background: #005;
78
+ color: #FFF;
79
+ }
80
+
81
+ .banner {
82
+ background: #005;
83
+ color: #FFF;
84
+ border: 1px solid black;
85
+ padding: 1em;
86
+ }
87
+
88
+ .banner td {
89
+ background: transparent;
90
+ color: #FFF;
91
+ }
92
+
93
+ h1 a, h2 a, .sectiontitle a, .banner a {
94
+ color: #FF0;
95
+ }
96
+
97
+ h1 a:hover, h2 a:hover, .sectiontitle a:hover, .banner a:hover {
98
+ color: #FF7;
99
+ }
100
+
101
+ .dyn-source {
102
+ display: none;
103
+ background: #fffde8;
104
+ color: #000;
105
+ border: #ffe0bb dotted 1px;
106
+ margin: 0.5em 2em 0.5em 2em;
107
+ padding: 0.5em;
108
+ }
109
+
110
+ .dyn-source .cmt {
111
+ color: #00F;
112
+ font-style: italic;
113
+ }
114
+
115
+ .dyn-source .kw {
116
+ color: #070;
117
+ font-weight: bold;
118
+ }
119
+
120
+ .method {
121
+ margin-left: 1em;
122
+ margin-right: 1em;
123
+ margin-bottom: 1em;
124
+ }
125
+
126
+ .description pre {
127
+ padding: 0.5em;
128
+ border: #ffe0bb dotted 1px;
129
+ background: #fffde8;
130
+ }
131
+
132
+ .method .title {
133
+ font-family: monospace;
134
+ font-size: large;
135
+ border-bottom: 1px dashed black;
136
+ margin-bottom: 0.3em;
137
+ padding-bottom: 0.1em;
138
+ }
139
+
140
+ .method .description, .method .sourcecode {
141
+ margin-left: 1em;
142
+ }
143
+
144
+ .description p, .sourcecode p {
145
+ margin-bottom: 0.5em;
146
+ }
147
+
148
+ .method .sourcecode p.source-link {
149
+ text-indent: 0em;
150
+ margin-top: 0.5em;
151
+ }
152
+
153
+ .method .aka {
154
+ margin-top: 0.3em;
155
+ margin-left: 1em;
156
+ font-style: italic;
157
+ text-indent: 2em;
158
+ }
159
+
160
+ h1 {
161
+ padding: 1em;
162
+ margin-left: -1.5em;
163
+ font-size: x-large;
164
+ font-weight: bold;
165
+ color: #FFF;
166
+ background: #007;
167
+ }
168
+
169
+ h2 {
170
+ padding: 0.5em 1em 0.5em 1em;
171
+ margin-left: -1.5em;
172
+ font-size: large;
173
+ font-weight: bold;
174
+ color: #FFF;
175
+ background: #009;
176
+ }
177
+
178
+ h3, h4, h5, h6 {
179
+ color: #220088;
180
+ border-bottom: #5522bb solid 1px;
181
+ }
182
+
183
+ .sourcecode > pre {
184
+ padding: 0.5em;
185
+ border: 1px dotted black;
186
+ background: #FFE;
187
+ }
188
+
189
+ dt {
190
+ font-weight: bold
191
+ }
192
+
193
+ dd {
194
+ margin-bottom: 0.7em;
195
+ }
@@ -0,0 +1,383 @@
1
+ /* Panel (begin) */
2
+ .panel
3
+ {
4
+ position: absolute;
5
+ width: 100%;
6
+ height: 100%;
7
+ top: 0;
8
+ left: 0;
9
+ background: #FFF;
10
+ z-index: 2;
11
+ font-family: "Helvetica Neue", "Arial", sans-serif;
12
+ //zoom: 1;
13
+ }
14
+
15
+ .panel_tree .results,
16
+ .panel_results .tree
17
+ {
18
+ display: none;
19
+ }
20
+
21
+ /* Header with search box (begin) */
22
+ .panel .header
23
+ {
24
+ width: 100%;
25
+ height: 29px;
26
+ border-bottom: 1px solid #666;
27
+ position: relative;
28
+ left: 0; top: 0;
29
+ background: #e8e8e8;
30
+ }
31
+
32
+ .panel .header div
33
+ {
34
+ margin: 0 7px;
35
+ }
36
+ .panel .header table
37
+ {
38
+ height: 29px;
39
+ width: 100%;
40
+ }
41
+
42
+ .panel .header table td
43
+ {
44
+ vertical-align: middle;
45
+ text-align: middle;
46
+ }
47
+
48
+ .panel .header label
49
+ {
50
+ position: absolute;
51
+ font-size: 12px;
52
+ line-height: 29px;
53
+ margin-left: 3px;
54
+ color: #999;
55
+ cursor: text;
56
+ }
57
+
58
+ .panel .header table input
59
+ {
60
+ width: 100%;
61
+ box-sizing: border-box;
62
+ -moz-box-sizing: border-box;
63
+ -webkit-box-sizing: border-box;
64
+ display: inline-block;
65
+ -webkit-appearance: searchfield;
66
+ height: 22px;
67
+ //height: auto;
68
+ }
69
+
70
+ /* Header with search box (end) */
71
+
72
+
73
+ /* Results (begin) */
74
+ .panel .result
75
+ {
76
+ position: absolute;
77
+ top: 30px;
78
+ bottom: 0;
79
+ left: 0;
80
+ width: 100%;
81
+ //height: expression((this.parentNode.offsetHeight - 31));
82
+ overflow-y: scroll;
83
+ overflow-x: hidden;
84
+ -overflow-y: hidden;
85
+ background: #EDF3FE url(../i/results_bg.png);
86
+ z-index: 2;
87
+ //zoom:1;
88
+ }
89
+
90
+ .panel .result ul
91
+ {
92
+ font-size: 0.8em;
93
+ width: 100%;
94
+ background: #EDF3FE url(../i/results_bg.png);
95
+ //zoom:1;
96
+ }
97
+
98
+ .panel .result ul li
99
+ {
100
+ height: 46px;
101
+ -height: 50px;
102
+ //display: inline;
103
+ //width: 100%;
104
+ //zoom: 1;
105
+ overflow: hidden;
106
+ padding: 4px 10px 0 10px;
107
+ cursor: pointer;
108
+ }
109
+
110
+ .panel .result ul li h1
111
+ {
112
+ font-size: 13px;
113
+ font-weight: normal;
114
+ color: #333;
115
+ margin-bottom: 2px;
116
+ white-space: nowrap;
117
+ }
118
+
119
+ .panel .result ul li p
120
+ {
121
+ font-size: 11px;
122
+ color: #333;
123
+ margin-bottom: 2px;
124
+ white-space: nowrap;
125
+ }
126
+
127
+ .panel .result ul li h1 i,
128
+ .panel .result ul li p.snippet
129
+ {
130
+ color: #999;
131
+ }
132
+
133
+ .panel .result ul li b
134
+ {
135
+ color: #000;
136
+ }
137
+
138
+ .panel .result ul li.current
139
+ {
140
+ background: #3875D7;
141
+ }
142
+
143
+ .panel .result ul li.current h1,
144
+ .panel .result ul li.current p
145
+ {
146
+ color: #DDD;
147
+ }
148
+
149
+ .panel .result ul li.current h1 i,
150
+ .panel .result ul li.current p.snippet
151
+ {
152
+ color: #AAA;
153
+ }
154
+
155
+ .panel .result ul li.current b
156
+ {
157
+ color: #FFF;
158
+ }
159
+
160
+
161
+ .panel .result ul li:hover,
162
+ .panel .result ul li.selected
163
+ {
164
+ background: #d0d0d0;
165
+ }
166
+
167
+ .panel .result ul li.current:hover
168
+ {
169
+ background: #2965C0;
170
+ }
171
+
172
+ .panel .result ul li .badge
173
+ {
174
+ margin-right: 0.4em;
175
+ margin-left: -0.2em;
176
+ padding: 0 0.2em;
177
+ color: #000;
178
+ }
179
+
180
+ .panel .result ul li .badge_1
181
+ {
182
+ background: #ACDBF4;
183
+ }
184
+
185
+ .panel .result ul li.current .badge_1
186
+ {
187
+ background: #97BFD7;
188
+ }
189
+
190
+ .panel .result ul li .badge_2
191
+ {
192
+ background: #ACF3C3;
193
+ }
194
+
195
+ .panel .result ul li.current .badge_2
196
+ {
197
+ background: #98D7AC;
198
+ }
199
+
200
+ .panel .result ul li .badge_3
201
+ {
202
+ background: #E0F3AC;
203
+ }
204
+
205
+ .panel .result ul li.current .badge_3
206
+ {
207
+ background: #C4D798;
208
+ }
209
+
210
+ .panel .result ul li .badge_4
211
+ {
212
+ background: #D7CA98;
213
+ }
214
+
215
+ .panel .result ul li.current .badge_4
216
+ {
217
+ background: #A6B0AC;
218
+ }
219
+
220
+ .panel .result ul li .badge_5
221
+ {
222
+ background: #F3C8AC;
223
+ }
224
+
225
+ .panel .result ul li.current .badge_5
226
+ {
227
+ background: #D7B198;
228
+ }
229
+
230
+ .panel .result ul li .badge_6
231
+ {
232
+ background: #F3ACC3;
233
+ }
234
+
235
+ .panel .result ul li.current .badge_6
236
+ {
237
+ background: #D798AB;
238
+ }
239
+
240
+ /* Results (end) */
241
+
242
+ /* Tree (begin) */ /**/
243
+ .panel .tree
244
+ {
245
+ position: absolute;
246
+ top: 30px;
247
+ bottom: 0;
248
+ left: 0;
249
+ width: 100%;
250
+ //zoom: 1;
251
+ //height: expression((this.parentNode.offsetHeight - 31));
252
+ overflow-y: scroll;
253
+ overflow-x: hidden;
254
+ -overflow-y: hidden;
255
+ background: #EDF3FE url(../i/tree_bg.png);
256
+ z-index: 30;
257
+ }
258
+
259
+ .panel .tree ul
260
+ {
261
+ background: #EDF3FE url(../i/tree_bg.png);
262
+ }
263
+
264
+ .panel .tree li
265
+ {
266
+ cursor: pointer;
267
+ overflow: hidden;
268
+ //height: 23px;
269
+ //display: inline;
270
+ //zoom: 1;
271
+ //width: 100%;
272
+ }
273
+
274
+
275
+ .panel .tree li .content
276
+ {
277
+ padding-left: 18px;
278
+ padding-top: 5px;
279
+ height: 18px;
280
+ overflow: hidden;
281
+ position: relative;
282
+ }
283
+
284
+ .panel .tree li .icon
285
+ {
286
+ width: 10px;
287
+ height: 9px;
288
+ background: url(../i/arrows.png);
289
+ background-position: 0 -9px;
290
+ position: absolute;
291
+ left: 1px;
292
+ top: 8px;
293
+ cursor: default;
294
+ }
295
+
296
+ .panel .tree li.closed .icon
297
+ {
298
+ background-position: 0 0;
299
+ }
300
+
301
+ .panel .tree ul li h1
302
+ {
303
+ font-size: 13px;
304
+ font-weight: normal;
305
+ color: #000;
306
+ margin-bottom: 2px;
307
+ white-space: nowrap;
308
+ }
309
+
310
+ .panel .tree ul li p
311
+ {
312
+ font-size: 11px;
313
+ color: #666;
314
+ margin-bottom: 2px;
315
+ white-space: nowrap;
316
+ }
317
+
318
+ .panel .tree ul li h1 i
319
+ {
320
+ color: #999;
321
+ font-style: normal;
322
+ }
323
+
324
+ .panel .tree ul li.empty
325
+ {
326
+ cursor: text;
327
+ }
328
+
329
+ .panel .tree ul li.empty h1,
330
+ .panel .tree ul li.empty p
331
+ {
332
+ color: #666;
333
+ font-style: italic;
334
+ }
335
+
336
+ .panel .tree ul li.current
337
+ {
338
+ background: #3875D7;
339
+ }
340
+
341
+ .panel .tree ul li.current .icon
342
+ {
343
+ background-position: -10px -9px;
344
+ }
345
+
346
+ .panel .tree ul li.current.closed .icon
347
+ {
348
+ background-position: -10px 0;
349
+ }
350
+
351
+ .panel .tree ul li.current h1
352
+ {
353
+ color: #FFF;
354
+ }
355
+
356
+ .panel .tree ul li.current p
357
+ {
358
+ color: #CCC;
359
+ }
360
+
361
+ .panel .tree ul li.current.empty h1,
362
+ .panel .tree ul li.current.empty p
363
+ {
364
+ color: #999;
365
+ }
366
+
367
+ .panel .tree ul li:hover
368
+ {
369
+ background: #d0d0d0;
370
+ }
371
+
372
+ .panel .tree ul li.current:hover
373
+ {
374
+ background: #2965C0;
375
+ }
376
+
377
+ .panel .tree .stopper
378
+ {
379
+ display: none;
380
+ }
381
+ /* Tree (end) */ /**/
382
+
383
+ /* Panel (end) */
@@ -0,0 +1,53 @@
1
+ /* http://meyerweb.com/eric/tools/css/reset/ */
2
+ /* v1.0 | 20080212 */
3
+
4
+ html, body, div, span, applet, object, iframe,
5
+ h1, h2, h3, h4, h5, h6, p, blockquote, pre,
6
+ a, abbr, acronym, address, big, cite, code,
7
+ del, dfn, em, font, img, ins, kbd, q, s, samp,
8
+ small, strike, strong, sub, sup, tt, var,
9
+ b, u, i, center,
10
+ dl, dt, dd, ol, ul, li,
11
+ fieldset, form, label, legend,
12
+ table, caption, tbody, tfoot, thead, tr, th, td {
13
+ margin: 0;
14
+ padding: 0;
15
+ border: 0;
16
+ outline: 0;
17
+ font-size: 100%;
18
+ vertical-align: baseline;
19
+ background: transparent;
20
+ }
21
+ body {
22
+ line-height: 1;
23
+ }
24
+ ol, ul {
25
+ list-style: none;
26
+ }
27
+ blockquote, q {
28
+ quotes: none;
29
+ }
30
+ blockquote:before, blockquote:after,
31
+ q:before, q:after {
32
+ content: '';
33
+ content: none;
34
+ }
35
+
36
+ /* remember to define focus styles! */
37
+ :focus {
38
+ outline: 0;
39
+ }
40
+
41
+ /* remember to highlight inserts somehow! */
42
+ ins {
43
+ text-decoration: none;
44
+ }
45
+ del {
46
+ text-decoration: line-through;
47
+ }
48
+
49
+ /* tables still need 'cellspacing="0"' in the markup */
50
+ table {
51
+ border-collapse: collapse;
52
+ border-spacing: 0;
53
+ }