mirror of
https://github.com/opnsense/docs
synced 2024-11-05 06:00:36 +00:00
390 lines
12 KiB
Sass
390 lines
12 KiB
Sass
// -------------------------------------------------------------------------------------------------------------------
|
|
// CONTRIBUTORS, PLEASE READ THIS!
|
|
// -------------------------------------------------------------------------------------------------------------------
|
|
// Couple things...
|
|
// 1. Lots of this @extends from wyrm_core/_type.sass (http://www.github.com/snide/wyrm/.
|
|
// * Try not to replace any @extends code. It's pretty generic stuff meant to work together.
|
|
// * That said, know that I'm very unlikely to accept PRs from wyrm just to change style here.
|
|
// 2. I plan to remove the !importants in here. Part of it is due to lazyness, part to sphinx's fondness for nesting.
|
|
// 3. Try to use variables from wyrm_core/wy_variables.sass. Notable are...
|
|
// * $base-line-height // All margins, padding and line-height should use this in .25 increments.
|
|
// * $text-color, $text-light, $text-dark...etc
|
|
// * $base-font-family, $custom-font-family, $code-font-family
|
|
// 4. If you have changes for mobile/tablet, put them at the bottom of the sass file.
|
|
// --------------------------------------------------------------------------------------------------------------------
|
|
|
|
.rst-content
|
|
// Sphinx by default applies HxW style attributes to images. This fixes that oversite.
|
|
img
|
|
max-width: 100%
|
|
height: auto
|
|
|
|
div.figure
|
|
margin-bottom: $base-line-height
|
|
p.caption
|
|
font-style: italic
|
|
p:last-child.caption
|
|
margin-bottom: 0px
|
|
|
|
div.figure.align-center
|
|
text-align: center
|
|
|
|
// Usually it's a good idea to give images some space.
|
|
.section > img, .section > a > img
|
|
margin-bottom: $base-line-height
|
|
|
|
// normalize browser styling
|
|
abbr[title]
|
|
text-decoration: none
|
|
|
|
// Style external links
|
|
&.style-external-links a.reference.external:after
|
|
font-family: FontAwesome
|
|
content: "\f08e"
|
|
color: $text-light
|
|
vertical-align: super
|
|
font-size: 60%
|
|
margin: 0 0.2em
|
|
|
|
// For the most part, its safe to assume that sphinx wants you to use a blockquote as an indent. It gets
|
|
// used in many different ways, so don't assume you can apply some fancy style, just leave it be.
|
|
blockquote
|
|
margin-left: $base-line-height
|
|
line-height: $base-line-height
|
|
margin-bottom: $base-line-height
|
|
|
|
pre.literal-block, div[class^='highlight']
|
|
border: 1px solid $table-border-color
|
|
padding: 0px
|
|
overflow-x: auto
|
|
// 1px hack otherwise border won't show. lame
|
|
margin: 1px 0 $base-line-height 0
|
|
div[class^='highlight']
|
|
border: none
|
|
margin: 0
|
|
// Needs 100% width for line highlighting to work properly
|
|
div[class^='highlight'] td.code
|
|
width: 100%
|
|
.linenodiv pre
|
|
border-right: solid 1px lighten($table-border-color, 2%)
|
|
margin: 0
|
|
padding: $base-line-height / 2 $base-line-height / 2
|
|
font-family: $code-font-family
|
|
user-select: none
|
|
pointer-events: none
|
|
div[class^='highlight'] pre
|
|
white-space: pre
|
|
margin: 0
|
|
padding: $base-line-height / 2 $base-line-height / 2
|
|
font-family: $code-font-family
|
|
display: block
|
|
overflow: auto
|
|
& .hll
|
|
// Line emphasis spans full width
|
|
display: block
|
|
margin: 0 -1 * $base-line-height / 2
|
|
padding: 0 $base-line-height / 2
|
|
pre.literal-block, div[class^='highlight'] pre, .linenodiv pre
|
|
font-size: 12px
|
|
line-height: normal
|
|
|
|
@media print
|
|
.codeblock, div[class^='highlight'], div[class^='highlight'] pre
|
|
white-space: pre-wrap
|
|
|
|
// These are the various note pullouts that sphinx applies
|
|
.note, .attention, .caution, .danger, .error, .hint, .important, .tip, .warning, .seealso, .admonition-todo, .admonition
|
|
@extend .wy-alert
|
|
.last
|
|
margin-bottom: 0
|
|
.admonition-title
|
|
@extend .wy-alert-title
|
|
@extend .fa
|
|
@extend .fa-exclamation-circle
|
|
&:before
|
|
margin-right: 4px
|
|
.note, .seealso
|
|
@extend .wy-alert.wy-alert-info
|
|
.hint, .tip, .important
|
|
@extend .wy-alert.wy-alert-success
|
|
.error, .danger
|
|
@extend .wy-alert.wy-alert-danger
|
|
.warning, .caution, .attention, .admonition-todo
|
|
@extend .wy-alert.wy-alert-warning
|
|
// Some people put tables in notes. Let's give them very basic support.
|
|
.admonition table
|
|
border-color: rgba(0,0,0,.1)
|
|
td, th
|
|
background: transparent !important
|
|
border-color: rgba(0,0,0,.1) !important
|
|
.section ul, .toctree-wrapper ul
|
|
@extend .wy-plain-list-disc
|
|
.section ol.loweralpha, .section ol.loweralpha li
|
|
list-style: lower-alpha
|
|
.section ol.upperalpha, .section ol.upperalpha li
|
|
list-style: upper-alpha
|
|
.section ol, ol.arabic
|
|
@extend .wy-plain-list-decimal
|
|
.section ol p, .section ul p
|
|
margin-bottom: $base-line-height / 2
|
|
&:last-child
|
|
margin-bottom: $base-line-height
|
|
.line-block
|
|
margin-left: 0px
|
|
margin-bottom: $base-line-height
|
|
.line-block .line-block
|
|
margin-left: $base-line-height
|
|
margin-bottom: 0px
|
|
|
|
// Generics handling of headings and toc stuff.
|
|
.topic-title
|
|
font-weight: bold
|
|
margin-bottom: $base-line-height / 2
|
|
.toc-backref
|
|
color: $text-color
|
|
.align-right
|
|
float: right
|
|
margin: 0px 0px $base-line-height $base-line-height
|
|
.align-left
|
|
float: left
|
|
margin: 0px $base-line-height $base-line-height 0px
|
|
.align-center
|
|
margin: auto
|
|
// Do not override display:table for tables
|
|
&:not(table)
|
|
display: block
|
|
.toctree-wrapper p.caption
|
|
@extend h2
|
|
|
|
// This is the #href that shows up on hover. Sphinx's is terrible so I hack it away.
|
|
h1, h2, h3, h4, h5, h6, dl dt, p.caption, table > caption
|
|
.headerlink
|
|
visibility: hidden
|
|
font-size: 14px
|
|
@extend .fa
|
|
&:after
|
|
content: "\f0c1"
|
|
font-family: FontAwesome
|
|
&:hover .headerlink:after
|
|
visibility: visible
|
|
|
|
table > caption .headerlink:after
|
|
font-size: 12px
|
|
|
|
.centered
|
|
text-align: center
|
|
|
|
// Sidebar content. You'll see at the bottom of this file I change it in mobile.
|
|
.sidebar
|
|
float: right
|
|
width: 40%
|
|
display: block
|
|
margin: 0 0 $base-line-height $base-line-height
|
|
padding: $base-line-height
|
|
background: $sidebar-background-color
|
|
border: solid 1px $sidebar-border-color
|
|
// Sidebar content is usually less relevant, so adjust the margins and sizes.
|
|
p, ul, dl
|
|
font-size: 90%
|
|
.last
|
|
margin-bottom: 0
|
|
.sidebar-title
|
|
display: block
|
|
font-family: $custom-font-family
|
|
font-weight: bold
|
|
background: $table-border-color
|
|
padding: $base-line-height / 4 $base-line-height / 2
|
|
margin: -$base-line-height
|
|
margin-bottom: $base-line-height
|
|
font-size: 100%
|
|
// Sphinx can highlight searched text with ?highlighted=searchterm
|
|
.highlighted
|
|
background: $highlight-color
|
|
display: inline-block
|
|
font-weight: bold
|
|
padding: 0 $base-line-height / 4
|
|
|
|
// These are the little citation links [1] that show up within paragraphs.
|
|
.footnote-reference, .citation-reference
|
|
vertical-align: baseline
|
|
position: relative
|
|
top: -0.4em
|
|
line-height: 0
|
|
font-size: 90%
|
|
|
|
// Tables! Sphinx LOVES TABLES. Most of wyrm assumes you're only going to use a table as a table
|
|
// so I have to write a bunch of unique stuff for Sphinx to style them up differently like it's 2003.
|
|
table.docutils.citation, table.docutils.footnote
|
|
background: none
|
|
border: none
|
|
color: $text-medium
|
|
td, tr
|
|
border: none
|
|
background-color: transparent !important
|
|
white-space: normal
|
|
td.label
|
|
padding-left: 0
|
|
padding-right: 0
|
|
vertical-align: top
|
|
code
|
|
color: $gray
|
|
// Remove the large vertical space between citations and footnotes
|
|
.wy-table-responsive.citation, .wy-table-responsive.footnote
|
|
margin-bottom: 0
|
|
// Re-add vertical space to element directly following citation and footnotes,
|
|
// if the following element is of a different type
|
|
.wy-table-responsive.citation + :not(.citation),
|
|
.wy-table-responsive.footnote + :not(.footnote)
|
|
margin-top: $base-line-height
|
|
// Re-add vertical space after citation and footnotes if it is the last child of a parent
|
|
.wy-table-responsive.citation:last-child, .wy-table-responsive.footnote:last-child
|
|
margin-bottom: $base-line-height
|
|
table.docutils
|
|
@extend .wy-table
|
|
@extend .wy-table-bordered-all
|
|
th
|
|
border-color: $table-border-color
|
|
&:not(.field-list)
|
|
@extend .wy-table-striped
|
|
// This table is what gets spit out for auto-generated API stuff. I style it smaller bits of padding.
|
|
table.field-list
|
|
@extend .wy-table
|
|
border: none
|
|
td
|
|
border: none
|
|
td > strong
|
|
display: inline-block
|
|
.field-name
|
|
padding-right: 10px
|
|
text-align: left
|
|
white-space: nowrap
|
|
.field-body
|
|
text-align: left
|
|
|
|
// These are the "literals" that get spit out when you mark stuff as ``code`` as your write.
|
|
tt, code
|
|
@extend code
|
|
color: $black
|
|
padding: 2px 5px
|
|
big, em
|
|
font-size: 100% !important
|
|
line-height: normal
|
|
|
|
&.literal
|
|
color: $text-code-color
|
|
&.xref, a &
|
|
font-weight: bold
|
|
color: $text-codexref-color
|
|
// If the literal is inside an a tag, let's color it like a link
|
|
a tt, a code
|
|
color: $link-color
|
|
dl
|
|
margin-bottom: $base-line-height
|
|
dt
|
|
font-weight: bold
|
|
// Most of the content within these dls are one liners, so I halve the normal margins.
|
|
p, table, ul, ol
|
|
margin-bottom: $base-line-height / 2 !important
|
|
// rST seems to want dds to be treated as the browser would, indented.
|
|
dd
|
|
margin: 0 0 $base-line-height / 2 $base-line-height
|
|
// This is what Sphinx spits out for its autodocs. Depending upon what language the person is referencing
|
|
// these things usually have a class of "method" or "class" or something similar, but really who knows.
|
|
// Sphinx doesn't give me a generic class on these, so unfortunately I have to apply it to the root dl.
|
|
// This makes me terribly unhappy and makes this code very nesty. Unfortunately I've seen hand-written docs
|
|
// that output similar, but not quite the same nesting so this is really the best we can do.
|
|
dl:not(.docutils)
|
|
margin-bottom: $base-line-height
|
|
// This would be the equivilant of a .. class::
|
|
dt
|
|
display: table
|
|
margin: $base-line-height / 4 0
|
|
font-size: 90%
|
|
line-height: normal
|
|
background: lighten($class-color, 50%)
|
|
color: $class-color
|
|
border-top: solid 3px lighten($class-color, 20%)
|
|
padding: $base-line-height / 4
|
|
position: relative
|
|
&:before
|
|
color: lighten($class-color, 20%)
|
|
.headerlink
|
|
color: $text-color
|
|
font-size: 100% !important
|
|
// And this would be the .. method::
|
|
dl dt
|
|
margin-bottom: $base-line-height / 4
|
|
border: none
|
|
border-left: solid 3px hsl(0,0%,80%)
|
|
background: hsl(0,0%,94%)
|
|
color: $method-color
|
|
.headerlink
|
|
color: $headerlink-color
|
|
font-size: 100% !important
|
|
dt:first-child
|
|
margin-top: 0
|
|
// Since dts get the callout style, we treat this less as callouts.
|
|
tt, code
|
|
font-weight: bold
|
|
&.descname, &.descclassname
|
|
background-color: transparent
|
|
border: none
|
|
padding: 0
|
|
font-size: 100% !important
|
|
&.descname
|
|
font-weight: bold
|
|
// This is for more advanced parameter control
|
|
.optional
|
|
display: inline-block
|
|
padding: 0 4px
|
|
color: $black
|
|
font-weight: bold
|
|
.property
|
|
display: inline-block
|
|
padding-right: 8px
|
|
// Doc links to sourcecode
|
|
.viewcode-link, .viewcode-back
|
|
display: inline-block
|
|
color: $text-viewcode-color
|
|
font-size: 80%
|
|
padding-left: $base-line-height
|
|
.viewcode-back
|
|
display: block
|
|
float: right
|
|
p.rubric
|
|
margin-bottom: 12px
|
|
font-weight: bold
|
|
//Download link
|
|
code.download
|
|
background: inherit
|
|
padding: inherit
|
|
font-weight: normal
|
|
font-family: inherit
|
|
font-size: inherit
|
|
color: inherit
|
|
border: inherit
|
|
white-space: inherit
|
|
span:first-child
|
|
-webkit-font-smoothing: subpixel-antialiased
|
|
@extend .fa
|
|
@extend .fa-download
|
|
&:before
|
|
margin-right: 4px
|
|
.guilabel
|
|
border: 1px solid lighten($guilabel-color, 25%)
|
|
background: lighten($guilabel-color, 50%)
|
|
font-size: 80%
|
|
font-weight: 700
|
|
border-radius: $base-line-height / 6
|
|
padding: $base-line-height / 10 $base-line-height / 4
|
|
margin: auto $base-line-height / 12
|
|
.versionmodified
|
|
font-style: italic
|
|
|
|
|
|
// Mobile specific
|
|
+media($mobile)
|
|
.rst-content
|
|
.sidebar
|
|
width: 100%
|