diff options
| author | Ned Batchelder <ned@nedbatchelder.com> | 2019-06-13 08:00:33 -0400 |
|---|---|---|
| committer | Ned Batchelder <ned@nedbatchelder.com> | 2019-06-13 08:00:33 -0400 |
| commit | 8397587f7ab3621e11c93cc1a3684843c0dc4176 (patch) | |
| tree | 7c8596fe707b68baf1a91e6fe0edd071f09e5082 /coverage/htmlfiles/style.scss | |
| parent | 77dc1d8c258f0a3d7dc640356b30d1f173faf68e (diff) | |
| download | python-coveragepy-git-8397587f7ab3621e11c93cc1a3684843c0dc4176.tar.gz | |
Use sass for css generation, to get nice hover highlights on lines
Diffstat (limited to 'coverage/htmlfiles/style.scss')
| -rw-r--r-- | coverage/htmlfiles/style.scss | 463 |
1 files changed, 463 insertions, 0 deletions
diff --git a/coverage/htmlfiles/style.scss b/coverage/htmlfiles/style.scss new file mode 100644 index 00000000..7b7d9b66 --- /dev/null +++ b/coverage/htmlfiles/style.scss @@ -0,0 +1,463 @@ +/* Licensed under the Apache License: http://www.apache.org/licenses/LICENSE-2.0 */ +/* For details: https://github.com/nedbat/coveragepy/blob/master/NOTICE.txt */ + +// Ignore this comment, it's for the CSS output file: +/* Don't edit this .css file. Edit the .scss file instead! */ + +// CSS styles for coverage.py. + +// Page-wide styles +html, body, h1, h2, h3, p, table, td, th { + margin: 0; + padding: 0; + border: 0; + outline: 0; + font-weight: inherit; + font-style: inherit; + font-size: 100%; + font-family: inherit; + vertical-align: baseline; + } + +// Set baseline grid to 16 pt. +body { + font-family: georgia, serif; + font-size: 1em; + } + +html>body { + font-size: 16px; + } + +// Set base font size to 12/16 +p { + font-size: .75em; // 12/16 + line-height: 1.33333333em; // 16/12 + } + +table { + border-collapse: collapse; + } +td { + vertical-align: top; +} +table tr.hidden { + display: none !important; + } + +p#no_rows { + display: none; + font-size: 1.2em; + } + +a.nav { + text-decoration: none; + color: inherit; + } +a.nav:hover { + text-decoration: underline; + color: inherit; + } + +// Page structure +#header { + background: #f8f8f8; + width: 100%; + border-bottom: 1px solid #eee; + } + +#source { + padding: 1em; + font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; + } + +.indexfile #footer { + margin: 1em 3em; + } + +.pyfile #footer { + margin: 1em 1em; + } + +#footer .content { + padding: 0; + font-size: 85%; + font-family: verdana, sans-serif; + color: #666666; + font-style: italic; + } + +#index { + margin: 1em 0 0 3em; + } + +/* Header styles */ +#header .content { + padding: 1em 3em; + } + +h1 { + font-size: 1.25em; + display: inline-block; +} + +#filter_container { + display: inline-block; + float: right; + margin: 0 2em 0 0; +} +#filter_container input { + width: 10em; +} + +h2.stats { + margin-top: .5em; + font-size: 1em; +} +.stats span { + border: 1px solid; + padding: .1em .25em; + margin: 0 .1em; + cursor: pointer; + border-color: #999 #ccc #ccc #999; +} +.stats span.hide_run, .stats span.hide_exc, +.stats span.hide_mis, .stats span.hide_par, +.stats span.par.hide_run.hide_par { + border-color: #ccc #999 #999 #ccc; +} +.stats span.par.hide_run { + border-color: #999 #ccc #ccc #999; +} + +.stats span.run { + background: #ddffdd; +} +.stats span.exc { + background: #eeeeee; +} +.stats span.mis { + background: #ffdddd; +} +.stats span.hide_run { + background: #eeffee; +} +.stats span.hide_exc { + background: #f5f5f5; +} +.stats span.hide_mis { + background: #ffeeee; +} +.stats span.par { + background: #ffffaa; +} +.stats span.hide_par { + background: #ffffcc; +} + +// Help panel +#keyboard_icon { + float: right; + margin: 5px; + cursor: pointer; +} + +.help_panel { + position: absolute; + background: #ffffcc; + padding: .5em; + border: 1px solid #883; + display: none; +} + +.indexfile .help_panel { + width: 20em; height: 4em; +} + +.pyfile .help_panel { + width: 16em; height: 8em; +} + +.help_panel .legend { + font-style: italic; + margin-bottom: 1em; +} + +#panel_icon { + float: right; + cursor: pointer; +} + +.keyhelp { + margin: .75em; +} + +.keyhelp .key { + border: 1px solid black; + border-color: #888 #333 #333 #888; + padding: .1em .35em; + font-family: monospace; + font-weight: bold; + background: #eee; +} + +// Source file styles +.linenos p { + text-align: right; + margin: 0; + padding: 0 .5em; + color: #999999; + font-family: verdana, sans-serif; +} +.linenos p.highlight { + background: #ffdd00; + } +.linenos p a { + text-decoration: none; + color: #999999; + font-size: .8333em; // 10/12 + line-height: 1em; + } +.linenos p a:hover { + text-decoration: underline; + color: #999999; + } + +td.text { + width: 100%; + } + +$mis-color: #ffdddd; +$run-color: #ddffdd; +$exc-color: #eeeeee; +$par-color: #ffffaa; + +$hover-dark-amt: 95%; +$plain-hover-color: mix(#ffffff, #000, $hover-dark-amt); +$mis-hover-color: mix($mis-color, #000, $hover-dark-amt); +$run-hover-color: mix($run-color, #000, $hover-dark-amt); +$exc-hover-color: mix($exc-color, #000, $hover-dark-amt); +$par-hover-color: mix($par-color, #000, $hover-dark-amt); + +.text p { + margin: 0; + padding: 0 0 0 .5em; + border-left: 2px solid #ffffff; + white-space: pre; + position: relative; + + &:hover { + background: $plain-hover-color; + } + + &.mis { + background: $mis-color; + border-left: 2px solid #ff0000; + + &:hover { + background: $mis-hover-color; + } + } + + &.run, &.run.hide_par { + background: $run-color; + border-left: 2px solid #00ff00; + + &:hover { + background: $run-hover-color; + } + } + + &.exc { + background: $exc-color; + border-left: 2px solid #808080; + + &:hover { + background: $exc-hover-color; + } + } + + &.par, &.par.hide_run { + background: $par-color; + border-left: 2px solid #eeee99; + + &:hover { + background: $par-hover-color; + } + } + + &.hide_run, &.hide_exc, &.hide_mis, &.hide_par, &.hide_run.hide_par { + background: inherit; + + &:hover { + background: $plain-hover-color; + } + } +} + + +.text span.annotate { + font-family: georgia; + color: #666; + float: right; + padding-right: .5em; + } +.text p.hide_par span.annotate { + display: none; + } +.text span.annotate.long { + display: none; + } +.text p:hover span.annotate.long { + display: block; + max-width: 50%; + white-space: normal; + float: right; + position: absolute; + top: 1.75em; + right: 1em; + width: 30em; + height: auto; + color: #333; + background: #ffffcc; + border: 1px solid #888; + padding: .25em .5em; + z-index: 999; + border-radius: .2em; + box-shadow: #cccccc .2em .2em .2em; + } + +// Syntax coloring +.text .com { + color: green; + font-style: italic; + line-height: 1px; + } +.text .key { + font-weight: bold; + line-height: 1px; + } +.text .str { + color: #000080; + } + +// Line contexts +td.contexts p { + margin: 0; + padding: 0 .5em; + color: #999999; + font-family: verdana, sans-serif; + white-space: nowrap; + position: relative; + } +td.contexts p:hover { + background: #eee; + } +td.contexts p span.context-list { + display: none; + } +td.contexts p:hover span.context-list { + display: block; + min-width: 30em; + //max-width: 50%; + white-space: normal; + float: right; + position: absolute; + top: 1.75em; + right: 1em; + height: auto; + color: #333; + background: #ffffcc; + border: 1px solid #888; + padding: .25em .5em; + z-index: 999; + border-radius: .2em; + box-shadow: #cccccc .2em .2em .2em; + } +span.context-list span.context-line { + display: block; + } +td.contexts p span.context-button { + display: inline-block; + cursor: pointer; + font-size: .8333em; // 10/12 + line-height: 1em; + } + +// index styles +#index td, #index th { + text-align: right; + width: 5em; + padding: .25em .5em; + border-bottom: 1px solid #eee; + } +#index th { + font-style: italic; + color: #333; + border-bottom: 1px solid #ccc; + cursor: pointer; + } +#index th:hover { + background: #eee; + border-bottom: 1px solid #999; + } +#index td.left, #index th.left { + padding-left: 0; + } +#index td.right, #index th.right { + padding-right: 0; + } +#index th.headerSortDown, #index th.headerSortUp { + border-bottom: 1px solid #000; + white-space: nowrap; + background: #eee; + } +#index th.headerSortDown:after { + content: " ↓"; +} +#index th.headerSortUp:after { + content: " ↑"; +} +#index td.name, #index th.name { + text-align: left; + width: auto; + } +#index td.name a { + text-decoration: none; + color: #000; + } +#index tr.total, +#index tr.total_dynamic { + } +#index tr.total td, +#index tr.total_dynamic td { + font-weight: bold; + border-top: 1px solid #ccc; + border-bottom: none; + } +#index tr.file:hover { + background: #eeeeee; + } +#index tr.file:hover td.name { + text-decoration: underline; + color: #000; + } + +// scroll marker styles +#scroll_marker { + position: fixed; + right: 0; + top: 0; + width: 16px; + height: 100%; + background: white; + border-left: 1px solid #eee; + will-change: transform; // for faster scrolling of fixed element in Chrome + } + +#scroll_marker .marker { + background: #eedddd; + position: absolute; + min-height: 3px; + width: 100%; + } |
