// SOURCE FILE
/* If the above line does not say "SOURCE FILE", then do not edit. It */
/* means this file is generated from [sass style.scss] */
/* CSS file for the Ocaml API. San Vu Ngoc 2019 */
// TODO: the ocamldoc output of Functors like in
// compilerlibref/4.08/Arg_helper.Make.html
// is not easy to style... without breaking other tables.
@import "common";
@charset "UTF-8";
// tables are difficult to style, be careful.
// These settings should apply to the main index tables
// (like "index_values.html"), which do not have any particular class.
// These tables have two columns.
.api>table {
word-break: break-word;
// this is unfortunately due to some very long names in Internal modules
td.module,
td:first-child {
width: 33%;
}
td:nth-child(2) {
width: 65%;
}
td[align="left"] {
// for the "Parameter" column of module signatures like
// Arg_helper.Make.html, which unfortunately have no class
// either.
word-break: normal;
}
td[align="left"]:first-child {
width: 1%;
}
}
.api {
// font-size: 16px;
// font-family: $font-sans;
// text-align: left;
// color: #333;
// background: #FFFFFF;
table {
// tables are difficult to style, be careful
border-collapse: collapse;
border-spacing: 0;
thead {
background: rgb(228, 217, 211);
}
/* must be same as
: */
background-color: #ede8e6;
width: 100%;
td {
padding-left: 1ex;
padding-right: 1ex;
/*float: left;*/
}
/* add some room at the end of the table */
tr:last-child td {
padding-bottom: 7px;
}
}
// Tables are used for describing types, in particular union types:
table.typetable {
width: 100%;
word-break: normal;
box-shadow: none;
td {
float: left;
}
td:nth-child(2) {
width: 37%;
code {
white-space: pre-line;
}
}
td:last-child {
width: calc(100% - 1.3em);
// cf: CamlinternalFormatBasics.html
// the 1.3em is related to the 1em below
}
td:first-child {
width: 1em;
}
td:nth-child(4).typefieldcomment {
/* this should be the column with the type */
width: 60%;
/* not optimal, see: Format.html#symbolic
but leaving it automatic is not always good either: see: Arg.html */
}
}
// for functor signature
table.paramstable {
word-break: normal;
td {
code {
white-space: pre-wrap;
}
}
td:first-child, td:nth-child(2) {
width: 1em; // second column should contain only
// ":". First one will adapt to size.
}
}
.sig_block {
padding-left: 1em;
background-color: #ede8e6;
// PROBLEM the sig_block ends too soon, it should actually
// include the "end)" line ==> REPORT THIS
// (eg: compilerlibref/Arg_helper.html)
pre {
margin-top: 0;
background: none;
border-left: 0;
}
}
pre .sig_block {
margin-bottom: 0; // see above
border-left: 0;
}
*, *:before, *:after {
box-sizing: border-box;
}
@include content-frame;
/* Basic markup elements */
b, strong {
font-weight: 600;
}
i, em {
font-style: italic;
}
sup {
vertical-align: super;
}
sub {
vertical-align: sub;
}
sup, sub {
font-size: 12px;
line-height: 0;
margin-left: 0.2ex;
}
pre {
margin-top: 0.8em;
margin-bottom: 0;
}
p, ul, ol {
margin-top: 0.5em;
margin-bottom: 1em;
}
ul, ol {
list-style-position: outside
}
ul>li {
margin-left: 2rem;
}
ol>li {
margin-left: 27.2px;
}
li>*:first-child {
margin-top: 0
}
/* Text alignments, this should be forbidden. */
.left {
text-align: left;
}
.right {
text-align: right;
}
.center {
text-align: center;
}
/* Links and anchors */
a {
text-decoration: none;
color: #92370A;
/* box-shadow: 0 1px 0 0 #d8b68b; */
}
a:hover {
box-shadow: 0 1px 0 0 #92370A;
}
td a:hover {
background: white;
}
/* Linked highlight */
*:target {
/*box-shadow: 0 0px 0 1px rgba(255, 215, 181, 0.8) !important;*/
border-radius: 1px;
/*border-bottom: 4px solid rgb(255, 215, 181);*/
background-color: #ffd6b5;
z-index: 0;
@if $ocamlorg {
/* Because of fixed banner in the ocaml.org site, we have to offset the targets. See https://stackoverflow.com/questions/10732690/offsetting-an-html-anchor-to-adjust-for-fixed-header */
padding-top: 85px;
margin-top: -85px;
}
}
h2:target {
/* background: linear-gradient(to bottom, rgb(253, 252, 252) 0%, rgba(255, 215, 181, 0.3) 100%) !important; */
/* transition: 300ms; this prevents margin-top:-80 to work... */
}
*:hover>a.section-anchor {
visibility: visible;
}
a.section-anchor:before {
content: "#"
}
a.section-anchor:hover {
box-shadow: none;
text-decoration: none;
color: #555;
}
a.section-anchor {
visibility: hidden;
position: absolute;
/* top: 0px; */
/* margin-left: -3ex; */
margin-left: -1.3em;
font-weight: normal;
font-style: normal;
padding-right: 0.4em;
padding-left: 0.4em;
/* To remain selectable */
color: #d5d5d5;
}
.spec > a.section-anchor {
margin-left: -2.3em;
padding-right: 0.9em;
}
.xref-unresolved {
color: #92370A
}
.xref-unresolved:hover {
box-shadow: 0 1px 0 0 #CC6666;
}
/* Section and document divisions.
Until at least 4.03 many of the modules of the stdlib start at .h7,
we restart the sequence there like h2 */
h1, h2, h3, h4, h5, h6, .h7, .h8, .h9, .h10 {
font-family: $font-sans;
font-weight: 400;
margin: 0.5em 0 0.5em 0;
padding-top: 0.1em;
line-height: 1.2;
overflow-wrap: break-word;
}
h1 {
margin-top: 1.214em;
margin-bottom: 19px;
font-weight: 500;
font-size: 1.953em;
box-shadow: 0 1px 0 0 #ddd;
}
h2 {
font-size: 1.563em;
margin: 1em 0 1em 0
}
h3 {
font-size: 1.25em;
}
small, .font_small {
font-size: 0.8em;
}
h1 code, h1 tt {
font-size: inherit;
font-weight: inherit;
}
h2 code, h2 tt {
font-size: inherit;
font-weight: inherit;
}
h3 code, h3 tt {
font-size: inherit;
font-weight: inherit;
}
h3 code, h3 tt {
font-size: inherit;
font-weight: inherit;
}
h4 {
font-size: 1.12em;
}
/* Preformatted and code */
tt, code, pre {
font-family: $font-mono;
font-weight: 400;
}
pre {
border-top: 1px solid #e69c7f;
white-space: pre-wrap;
word-wrap: break-word;
padding-left: 1ex;
}
p code, li code { /* useful ? */
background-color: #ebf2f9; /*#f6f8fa;*/
color: #0d2b3e;
border-radius: 3px;
padding: 0 0.3ex;
white-space: pre-wrap; // utile seulement dans la table index_values? (attention à bootstrap.css)
}
pre code {
background-color: inherit;
}
p a > code {
color: #92370A;
}
/* Code blocks (e.g. Examples) */
pre code.ocaml {
font-size: 0.893rem;
}
/* Code lexemes */
.keyword {
font-family: $font-sans;
font-weight: 500;
color: inherit;
}
/* Anchors */
a.anchor{
position: absolute;
right: 100%;
padding-right: 0.4em;
opacity: 0;
box-shadow: none;
}
a.anchor:before{
content: "#";
}
a.anchor:hover{
opacity: 1 !important;
}
pre:hover a.anchor, :hover>a.anchor{
opacity: 0.5;
}
.anchored {
position: relative;
}
/* Module member specification */
.spec:not(.include), .spec.include details summary {
background: linear-gradient(to left, rgb(253, 252, 252) 0%, rgb(234, 246, 250) 100%);
border-radius: 3px;
border-left: 4px solid #5c9cf5;
border-right: 5px solid transparent;
padding: 0.35em 0.5em;
}
.spec.include details summary:hover {
background-color: #ebeff2;
}
dl, div.spec, .doc, aside {
margin-bottom: 20px;
}
dl > dd {
padding: 0.5em;
}
dd> :first-child {
margin-top: 0;
}
dd > p:first-child > code:first-child {
color: teal;
}
dl:last-child, dd> :last-child, aside:last-child, article:last-child {
margin-bottom: 0;
}
dt+dt {
margin-top: 15px;
}
section+section, section > header + dl {
margin-top: 25px;
}
.spec.type .variant {
margin-left: 2ch;
}
.spec.type .variant p {
margin: 0;
font-style: italic;
}
.spec.type .record {
margin-left: 2ch;
}
.spec.type .record p {
margin: 0;
font-style: italic;
}
div.def {
margin-top: 0;
text-indent: -2ex;
padding-left: 2ex;
}
div.def+div.doc {
margin-left: 1ex;
margin-top: 2.5px
}
div.doc>*:first-child {
margin-top: 0;
}
/* The elements other than heading should be wrapped in