admin | bae64d8 | 2013-08-01 10:50:15 -0700 | [diff] [blame] | 1 | |
| 2 | |
| 3 | /* Epydoc CSS Stylesheet |
| 4 | * |
| 5 | * This stylesheet can be used to customize the appearance of epydoc's |
| 6 | * HTML output. |
| 7 | * |
| 8 | */ |
| 9 | |
| 10 | /* Default Colors & Styles |
| 11 | * - Set the default foreground & background color with 'body'; and |
| 12 | * link colors with 'a:link' and 'a:visited'. |
| 13 | * - Use bold for decision list terms. |
| 14 | * - The heading styles defined here are used for headings *within* |
| 15 | * docstring descriptions. All headings used by epydoc itself use |
| 16 | * either class='epydoc' or class='toc' (CSS styles for both |
| 17 | * defined below). |
| 18 | */ |
| 19 | body { background: #ffffff; color: #000000; } |
| 20 | p { margin-top: 0.5em; margin-bottom: 0.5em; } |
| 21 | a:link { color: #0000ff; } |
| 22 | a:visited { color: #204080; } |
| 23 | dt { font-weight: bold; } |
| 24 | h1 { font-size: +140%; font-style: italic; |
| 25 | font-weight: bold; } |
| 26 | h2 { font-size: +125%; font-style: italic; |
| 27 | font-weight: bold; } |
| 28 | h3 { font-size: +110%; font-style: italic; |
| 29 | font-weight: normal; } |
| 30 | code { font-size: 100%; } |
| 31 | /* N.B.: class, not pseudoclass */ |
| 32 | a.link { font-family: monospace; } |
| 33 | |
| 34 | /* Page Header & Footer |
| 35 | * - The standard page header consists of a navigation bar (with |
| 36 | * pointers to standard pages such as 'home' and 'trees'); a |
| 37 | * breadcrumbs list, which can be used to navigate to containing |
| 38 | * classes or modules; options links, to show/hide private |
| 39 | * variables and to show/hide frames; and a page title (using |
| 40 | * <h1>). The page title may be followed by a link to the |
| 41 | * corresponding source code (using 'span.codelink'). |
| 42 | * - The footer consists of a navigation bar, a timestamp, and a |
| 43 | * pointer to epydoc's homepage. |
| 44 | */ |
| 45 | h1.epydoc { margin: 0; font-size: +140%; font-weight: bold; } |
| 46 | h2.epydoc { font-size: +130%; font-weight: bold; } |
| 47 | h3.epydoc { font-size: +115%; font-weight: bold; |
| 48 | margin-top: 0.2em; } |
| 49 | td h3.epydoc { font-size: +115%; font-weight: bold; |
| 50 | margin-bottom: 0; } |
| 51 | table.navbar { background: #a0c0ff; color: #000000; |
| 52 | border: 2px groove #c0d0d0; } |
| 53 | table.navbar table { color: #000000; } |
| 54 | th.navbar-select { background: #70b0ff; |
| 55 | color: #000000; } |
| 56 | table.navbar a { text-decoration: none; } |
| 57 | table.navbar a:link { color: #0000ff; } |
| 58 | table.navbar a:visited { color: #204080; } |
| 59 | span.breadcrumbs { font-size: 85%; font-weight: bold; } |
| 60 | span.options { font-size: 70%; } |
| 61 | span.codelink { font-size: 85%; } |
| 62 | td.footer { font-size: 85%; } |
| 63 | |
| 64 | /* Table Headers |
| 65 | * - Each summary table and details section begins with a 'header' |
| 66 | * row. This row contains a section title (marked by |
| 67 | * 'span.table-header') as well as a show/hide private link |
| 68 | * (marked by 'span.options', defined above). |
| 69 | * - Summary tables that contain user-defined groups mark those |
| 70 | * groups using 'group header' rows. |
| 71 | */ |
| 72 | td.table-header { background: #70b0ff; color: #000000; |
| 73 | border: 1px solid #608090; } |
| 74 | td.table-header table { color: #000000; } |
| 75 | td.table-header table a:link { color: #0000ff; } |
| 76 | td.table-header table a:visited { color: #204080; } |
| 77 | span.table-header { font-size: 120%; font-weight: bold; } |
| 78 | th.group-header { background: #c0e0f8; color: #000000; |
| 79 | text-align: left; font-style: italic; |
| 80 | font-size: 115%; |
| 81 | border: 1px solid #608090; } |
| 82 | |
| 83 | /* Summary Tables (functions, variables, etc) |
| 84 | * - Each object is described by a single row of the table with |
| 85 | * two cells. The left cell gives the object's type, and is |
| 86 | * marked with 'code.summary-type'. The right cell gives the |
| 87 | * object's name and a summary description. |
| 88 | * - CSS styles for the table's header and group headers are |
| 89 | * defined above, under 'Table Headers' |
| 90 | */ |
| 91 | table.summary { border-collapse: collapse; |
| 92 | background: #e8f0f8; color: #000000; |
| 93 | border: 1px solid #608090; |
| 94 | margin-bottom: 0.5em; } |
| 95 | td.summary { border: 1px solid #608090; } |
| 96 | code.summary-type { font-size: 85%; } |
| 97 | table.summary a:link { color: #0000ff; } |
| 98 | table.summary a:visited { color: #204080; } |
| 99 | |
| 100 | |
| 101 | /* Details Tables (functions, variables, etc) |
| 102 | * - Each object is described in its own div. |
| 103 | * - A single-row summary table w/ table-header is used as |
| 104 | * a header for each details section (CSS style for table-header |
| 105 | * is defined above, under 'Table Headers'). |
| 106 | */ |
| 107 | table.details { border-collapse: collapse; |
| 108 | background: #e8f0f8; color: #000000; |
| 109 | border: 1px solid #608090; |
| 110 | margin: .2em 0 0 0; } |
| 111 | table.details table { color: #000000; } |
| 112 | table.details a:link { color: #0000ff; } |
| 113 | table.details a:visited { color: #204080; } |
| 114 | |
| 115 | /* Fields */ |
| 116 | dl.fields { margin-left: 2em; margin-top: 1em; |
| 117 | margin-bottom: 1em; } |
| 118 | dl.fields dd ul { margin-left: 0em; padding-left: 0em; } |
| 119 | dl.fields dd ul li ul { margin-left: 2em; padding-left: 0em; } |
| 120 | div.fields { margin-left: 2em; } |
| 121 | div.fields p { margin-bottom: 0.5em; } |
| 122 | |
| 123 | /* Index tables (identifier index, term index, etc) |
| 124 | * - link-index is used for indices containing lists of links |
| 125 | * (namely, the identifier index & term index). |
| 126 | * - index-where is used in link indices for the text indicating |
| 127 | * the container/source for each link. |
| 128 | * - metadata-index is used for indices containing metadata |
| 129 | * extracted from fields (namely, the bug index & todo index). |
| 130 | */ |
| 131 | table.link-index { border-collapse: collapse; |
| 132 | background: #e8f0f8; color: #000000; |
| 133 | border: 1px solid #608090; } |
| 134 | td.link-index { border-width: 0px; } |
| 135 | table.link-index a:link { color: #0000ff; } |
| 136 | table.link-index a:visited { color: #204080; } |
| 137 | span.index-where { font-size: 70%; } |
| 138 | table.metadata-index { border-collapse: collapse; |
| 139 | background: #e8f0f8; color: #000000; |
| 140 | border: 1px solid #608090; |
| 141 | margin: .2em 0 0 0; } |
| 142 | td.metadata-index { border-width: 1px; border-style: solid; } |
| 143 | table.metadata-index a:link { color: #0000ff; } |
| 144 | table.metadata-index a:visited { color: #204080; } |
| 145 | |
| 146 | /* Function signatures |
| 147 | * - sig* is used for the signature in the details section. |
| 148 | * - .summary-sig* is used for the signature in the summary |
| 149 | * table, and when listing property accessor functions. |
| 150 | * */ |
| 151 | .sig-name { color: #006080; } |
| 152 | .sig-arg { color: #008060; } |
| 153 | .sig-default { color: #602000; } |
| 154 | .summary-sig { font-family: monospace; } |
| 155 | .summary-sig-name { color: #006080; font-weight: bold; } |
| 156 | table.summary a.summary-sig-name:link |
| 157 | { color: #006080; font-weight: bold; } |
| 158 | table.summary a.summary-sig-name:visited |
| 159 | { color: #006080; font-weight: bold; } |
| 160 | .summary-sig-arg { color: #006040; } |
| 161 | .summary-sig-default { color: #501800; } |
| 162 | |
| 163 | /* Subclass list |
| 164 | */ |
| 165 | ul.subclass-list { display: inline; } |
| 166 | ul.subclass-list li { display: inline; } |
| 167 | |
| 168 | /* To render variables, classes etc. like functions */ |
| 169 | table.summary .summary-name { color: #006080; font-weight: bold; |
| 170 | font-family: monospace; } |
| 171 | table.summary |
| 172 | a.summary-name:link { color: #006080; font-weight: bold; |
| 173 | font-family: monospace; } |
| 174 | table.summary |
| 175 | a.summary-name:visited { color: #006080; font-weight: bold; |
| 176 | font-family: monospace; } |
| 177 | |
| 178 | /* Variable values |
| 179 | * - In the 'variable details' sections, each varaible's value is |
| 180 | * listed in a 'pre.variable' box. The width of this box is |
| 181 | * restricted to 80 chars; if the value's repr is longer than |
| 182 | * this it will be wrapped, using a backslash marked with |
| 183 | * class 'variable-linewrap'. If the value's repr is longer |
| 184 | * than 3 lines, the rest will be ellided; and an ellipsis |
| 185 | * marker ('...' marked with 'variable-ellipsis') will be used. |
| 186 | * - If the value is a string, its quote marks will be marked |
| 187 | * with 'variable-quote'. |
| 188 | * - If the variable is a regexp, it is syntax-highlighted using |
| 189 | * the re* CSS classes. |
| 190 | */ |
| 191 | pre.variable { padding: .5em; margin: 0; |
| 192 | background: #dce4ec; color: #000000; |
| 193 | border: 1px solid #708890; } |
| 194 | .variable-linewrap { color: #604000; font-weight: bold; } |
| 195 | .variable-ellipsis { color: #604000; font-weight: bold; } |
| 196 | .variable-quote { color: #604000; font-weight: bold; } |
| 197 | .variable-group { color: #008000; font-weight: bold; } |
| 198 | .variable-op { color: #604000; font-weight: bold; } |
| 199 | .variable-string { color: #006030; } |
| 200 | .variable-unknown { color: #a00000; font-weight: bold; } |
| 201 | .re { color: #000000; } |
| 202 | .re-char { color: #006030; } |
| 203 | .re-op { color: #600000; } |
| 204 | .re-group { color: #003060; } |
| 205 | .re-ref { color: #404040; } |
| 206 | |
| 207 | /* Base tree |
| 208 | * - Used by class pages to display the base class hierarchy. |
| 209 | */ |
| 210 | pre.base-tree { font-size: 80%; margin: 0; } |
| 211 | |
| 212 | /* Frames-based table of contents headers |
| 213 | * - Consists of two frames: one for selecting modules; and |
| 214 | * the other listing the contents of the selected module. |
| 215 | * - h1.toc is used for each frame's heading |
| 216 | * - h2.toc is used for subheadings within each frame. |
| 217 | */ |
| 218 | h1.toc { text-align: center; font-size: 105%; |
| 219 | margin: 0; font-weight: bold; |
| 220 | padding: 0; } |
| 221 | h2.toc { font-size: 100%; font-weight: bold; |
| 222 | margin: 0.5em 0 0 -0.3em; } |
| 223 | |
| 224 | /* Syntax Highlighting for Source Code |
| 225 | * - doctest examples are displayed in a 'pre.py-doctest' block. |
| 226 | * If the example is in a details table entry, then it will use |
| 227 | * the colors specified by the 'table pre.py-doctest' line. |
| 228 | * - Source code listings are displayed in a 'pre.py-src' block. |
| 229 | * Each line is marked with 'span.py-line' (used to draw a line |
| 230 | * down the left margin, separating the code from the line |
| 231 | * numbers). Line numbers are displayed with 'span.py-lineno'. |
| 232 | * The expand/collapse block toggle button is displayed with |
| 233 | * 'a.py-toggle' (Note: the CSS style for 'a.py-toggle' should not |
| 234 | * modify the font size of the text.) |
| 235 | * - If a source code page is opened with an anchor, then the |
| 236 | * corresponding code block will be highlighted. The code |
| 237 | * block's header is highlighted with 'py-highlight-hdr'; and |
| 238 | * the code block's body is highlighted with 'py-highlight'. |
| 239 | * - The remaining py-* classes are used to perform syntax |
| 240 | * highlighting (py-string for string literals, py-name for names, |
| 241 | * etc.) |
| 242 | */ |
| 243 | pre.py-doctest { padding: .5em; margin: 1em; |
| 244 | background: #e8f0f8; color: #000000; |
| 245 | border: 1px solid #708890; } |
| 246 | table pre.py-doctest { background: #dce4ec; |
| 247 | color: #000000; } |
| 248 | pre.py-src { border: 2px solid #000000; |
| 249 | background: #f0f0f0; color: #000000; } |
| 250 | .py-line { border-left: 2px solid #000000; |
| 251 | margin-left: .2em; padding-left: .4em; } |
| 252 | .py-lineno { font-style: italic; font-size: 90%; |
| 253 | padding-left: .5em; } |
| 254 | a.py-toggle { text-decoration: none; } |
| 255 | div.py-highlight-hdr { border-top: 2px solid #000000; |
| 256 | border-bottom: 2px solid #000000; |
| 257 | background: #d8e8e8; } |
| 258 | div.py-highlight { border-bottom: 2px solid #000000; |
| 259 | background: #d0e0e0; } |
| 260 | .py-prompt { color: #005050; font-weight: bold;} |
| 261 | .py-more { color: #005050; font-weight: bold;} |
| 262 | .py-string { color: #006030; } |
| 263 | .py-comment { color: #003060; } |
| 264 | .py-keyword { color: #600000; } |
| 265 | .py-output { color: #404040; } |
| 266 | .py-name { color: #000050; } |
| 267 | .py-name:link { color: #000050 !important; } |
| 268 | .py-name:visited { color: #000050 !important; } |
| 269 | .py-number { color: #005000; } |
| 270 | .py-defname { color: #000060; font-weight: bold; } |
| 271 | .py-def-name { color: #000060; font-weight: bold; } |
| 272 | .py-base-class { color: #000060; } |
| 273 | .py-param { color: #000060; } |
| 274 | .py-docstring { color: #006030; } |
| 275 | .py-decorator { color: #804020; } |
| 276 | /* Use this if you don't want links to names underlined: */ |
| 277 | /*a.py-name { text-decoration: none; }*/ |
| 278 | |
| 279 | /* Graphs & Diagrams |
| 280 | * - These CSS styles are used for graphs & diagrams generated using |
| 281 | * Graphviz dot. 'img.graph-without-title' is used for bare |
| 282 | * diagrams (to remove the border created by making the image |
| 283 | * clickable). |
| 284 | */ |
| 285 | img.graph-without-title { border: none; } |
| 286 | img.graph-with-title { border: 1px solid #000000; } |
| 287 | span.graph-title { font-weight: bold; } |
| 288 | span.graph-caption { } |
| 289 | |
| 290 | /* General-purpose classes |
| 291 | * - 'p.indent-wrapped-lines' defines a paragraph whose first line |
| 292 | * is not indented, but whose subsequent lines are. |
| 293 | * - The 'nomargin-top' class is used to remove the top margin (e.g. |
| 294 | * from lists). The 'nomargin' class is used to remove both the |
| 295 | * top and bottom margin (but not the left or right margin -- |
| 296 | * for lists, that would cause the bullets to disappear.) |
| 297 | */ |
| 298 | p.indent-wrapped-lines { padding: 0 0 0 7em; text-indent: -7em; |
| 299 | margin: 0; } |
| 300 | .nomargin-top { margin-top: 0; } |
| 301 | .nomargin { margin-top: 0; margin-bottom: 0; } |
| 302 | |
| 303 | /* HTML Log */ |
| 304 | div.log-block { padding: 0; margin: .5em 0 .5em 0; |
| 305 | background: #e8f0f8; color: #000000; |
| 306 | border: 1px solid #000000; } |
| 307 | div.log-error { padding: .1em .3em .1em .3em; margin: 4px; |
| 308 | background: #ffb0b0; color: #000000; |
| 309 | border: 1px solid #000000; } |
| 310 | div.log-warning { padding: .1em .3em .1em .3em; margin: 4px; |
| 311 | background: #ffffb0; color: #000000; |
| 312 | border: 1px solid #000000; } |
| 313 | div.log-info { padding: .1em .3em .1em .3em; margin: 4px; |
| 314 | background: #b0ffb0; color: #000000; |
| 315 | border: 1px solid #000000; } |
| 316 | h2.log-hdr { background: #70b0ff; color: #000000; |
| 317 | margin: 0; padding: 0em 0.5em 0em 0.5em; |
| 318 | border-bottom: 1px solid #000000; font-size: 110%; } |
| 319 | p.log { font-weight: bold; margin: .5em 0 .5em 0; } |
| 320 | tr.opt-changed { color: #000000; font-weight: bold; } |
| 321 | tr.opt-default { color: #606060; } |
| 322 | pre.log { margin: 0; padding: 0; padding-left: 1em; } |