mirror of
https://github.com/BookStackApp/BookStack.git
synced 2025-01-09 10:25:40 +00:00
8ec26e8083
Changes the name of our spacing variables due to the prefixing -/_ meaning private in the use of new "use" rather than include. All now modular too, so all variables/mixins are accessed via their package. Also renamed variables file to vars for simpler/cleaner access/writing. eg. '$-m' is now 'vars.$m'
200 lines
No EOL
6 KiB
SCSS
200 lines
No EOL
6 KiB
SCSS
@use "mixins";
|
|
@use "vars";
|
|
|
|
/**
|
|
* Page Content
|
|
* Styles specific to blocks used within page content.
|
|
*/
|
|
|
|
.page-content {
|
|
width: 100%;
|
|
max-width: 840px;
|
|
margin: 0 auto;
|
|
overflow-wrap: break-word;
|
|
.align-left {
|
|
text-align: left;
|
|
}
|
|
img.align-left, table.align-left, iframe.align-left, video.align-left {
|
|
float: left !important;
|
|
margin: vars.$xs vars.$m vars.$m 0;
|
|
}
|
|
.align-right {
|
|
text-align: right !important;
|
|
}
|
|
img.align-right, table.align-right, iframe.align-right, video.align-right {
|
|
float: right !important;
|
|
margin: vars.$xs 0 vars.$xs vars.$s;
|
|
}
|
|
.align-center {
|
|
text-align: center;
|
|
}
|
|
img.align-center, video.align-center, iframe.align-center {
|
|
display: block;
|
|
}
|
|
img.align-center, table.align-center, iframe.align-center, video.align-center {
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
}
|
|
.align-justify {
|
|
text-align: justify;
|
|
}
|
|
h1, h2, h3, h4, h5, h6, pre {
|
|
clear: left;
|
|
}
|
|
hr {
|
|
clear: both;
|
|
margin: vars.$m 0;
|
|
}
|
|
table {
|
|
hyphens: auto;
|
|
table-layout: fixed;
|
|
max-width: 100%;
|
|
height: auto !important;
|
|
}
|
|
|
|
// diffs
|
|
ins,
|
|
del {
|
|
text-decoration: none;
|
|
}
|
|
ins {
|
|
background: #dbffdb;
|
|
}
|
|
del {
|
|
background: #FFECEC;
|
|
}
|
|
|
|
details {
|
|
border: 1px solid;
|
|
@include mixins.lightDark(border-color, #DDD, #555);
|
|
margin-bottom: 1em;
|
|
padding: vars.$s;
|
|
}
|
|
details > summary {
|
|
margin-top: -(vars.$s);
|
|
margin-left: -(vars.$s);
|
|
margin-right: -(vars.$s);
|
|
margin-bottom: -(vars.$s);
|
|
font-weight: bold;
|
|
@include mixins.lightDark(background-color, #EEE, #333);
|
|
padding: vars.$xs vars.$s;
|
|
}
|
|
details[open] > summary {
|
|
margin-bottom: vars.$s;
|
|
border-bottom: 1px solid;
|
|
@include mixins.lightDark(border-color, #DDD, #555);
|
|
}
|
|
details > summary + * {
|
|
margin-top: .2em;
|
|
}
|
|
details:after {
|
|
content: '';
|
|
display: block;
|
|
clear: both;
|
|
}
|
|
|
|
li > input[type="checkbox"] {
|
|
vertical-align: top;
|
|
margin-top: 0.3em;
|
|
}
|
|
|
|
p:empty {
|
|
min-height: 1.6em;
|
|
}
|
|
|
|
&.page-revision {
|
|
pre code {
|
|
white-space: pre-wrap;
|
|
}
|
|
}
|
|
|
|
.cm-editor {
|
|
margin-bottom: 1.375em;
|
|
}
|
|
|
|
video, iframe {
|
|
max-width: 100%;
|
|
}
|
|
|
|
a {
|
|
text-decoration: underline;
|
|
}
|
|
}
|
|
|
|
// This is seperated out so we can target it out-of-editor by default
|
|
// and use advanced (:not) syntax, not supported by things like PDF gen,
|
|
// to target in-editor scenarios to handle edge-case of TinyMCE using an
|
|
// image for data placeholders where we'd want height attributes to take effect.
|
|
body .page-content img,
|
|
.page-content img:not([data-mce-object]) {
|
|
max-width: 100%;
|
|
height:auto;
|
|
}
|
|
|
|
/**
|
|
* Callouts
|
|
* Some styles duplicated for supporting logical units (eg. inline-end) while
|
|
* providing fallbacks to non-logical rules, so RTL is natively supported where possible.
|
|
*/
|
|
.callout {
|
|
border-left: 3px solid #BBB;
|
|
border-inline-start: 3px solid #BBB;
|
|
border-inline-end: none;
|
|
background-color: #EEE;
|
|
padding: vars.$s;
|
|
padding-left: vars.$xl;
|
|
padding-inline-start: vars.$xl;
|
|
padding-inline-end: vars.$s;
|
|
display: block;
|
|
position: relative;
|
|
overflow: auto;
|
|
&:before {
|
|
background-image: url('data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiMwMTUzODAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEyIDJDNi40OCAyIDIgNi40OCAyIDEyczQuNDggMTAgMTAgMTAgMTAtNC40OCAxMC0xMFMxNy41MiAyIDEyIDJ6bTEgMTVoLTJ2LTZoMnY2em0wLThoLTJWN2gydjJ6Ii8+PC9zdmc+');
|
|
background-repeat: no-repeat;
|
|
content: '';
|
|
width: 1.2em;
|
|
height: 1.2em;
|
|
left: vars.$xs + 2px;
|
|
inset-inline-start: vars.$xs + 2px;
|
|
inset-inline-end: unset;
|
|
top: 50%;
|
|
margin-top: -9px;
|
|
display: inline-block;
|
|
position: absolute;
|
|
line-height: 1;
|
|
opacity: 0.8;
|
|
}
|
|
&.success {
|
|
@include mixins.lightDark(border-color, vars.$positive, vars.$positive-dark);
|
|
@include mixins.lightDark(background-color, #eafdeb, #122913);
|
|
@include mixins.lightDark(color, #063409, vars.$positive-dark);
|
|
}
|
|
&.success:before {
|
|
background-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiMzNzZjMzkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEyIDJDNi40OCAyIDIgNi40OCAyIDEyczQuNDggMTAgMTAgMTAgMTAtNC40OCAxMC0xMFMxNy41MiAyIDEyIDJ6bS0yIDE1bC01LTUgMS40MS0xLjQxTDEwIDE0LjE3bDcuNTktNy41OUwxOSA4bC05IDl6Ii8+PC9zdmc+");
|
|
}
|
|
&.danger {
|
|
@include mixins.lightDark(border-color, vars.$negative, vars.$negative-dark);
|
|
@include mixins.lightDark(background-color, #fcdbdb, #250505);
|
|
@include mixins.lightDark(color, #4d0706, vars.$negative-dark);
|
|
}
|
|
&.danger:before {
|
|
background-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiNiOTE4MTgiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0xNS43MyAzSDguMjdMMyA4LjI3djcuNDZMOC4yNyAyMWg3LjQ2TDIxIDE1LjczVjguMjdMMTUuNzMgM3pNMTIgMTcuM2MtLjcyIDAtMS4zLS41OC0xLjMtMS4zIDAtLjcyLjU4LTEuMyAxLjMtMS4zLjcyIDAgMS4zLjU4IDEuMyAxLjMgMCAuNzItLjU4IDEuMy0xLjMgMS4zem0xLTQuM2gtMlY3aDJ2NnoiLz4gICAgPHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==");
|
|
}
|
|
&.info {
|
|
@include mixins.lightDark(border-color, vars.$info, vars.$info-dark);
|
|
@include mixins.lightDark(background-color, #d3efff, #001825);
|
|
@include mixins.lightDark(color, #01466c, vars.$info-dark);
|
|
}
|
|
&.warning {
|
|
@include mixins.lightDark(border-color, vars.$warning, vars.$warning-dark);
|
|
@include mixins.lightDark(background-color, #fee3d3, #30170a);
|
|
@include mixins.lightDark(color, #6a2802, vars.$warning-dark);
|
|
}
|
|
&.warning:before {
|
|
background-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiNiNjUzMWMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEgMjFoMjJMMTIgMiAxIDIxem0xMi0zaC0ydi0yaDJ2MnptMC00aC0ydi00aDJ2NHoiLz48L3N2Zz4=");
|
|
}
|
|
a {
|
|
color: inherit;
|
|
text-decoration: underline;
|
|
}
|
|
} |