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; } 323