Files
bulma/docs/_sass/docs/code.scss
Jeremy Thomas 69877a652c Init v1
2024-03-21 16:11:54 +00:00

211 lines
3.6 KiB
SCSS

@use "sass/utilities/css-variables" as cv;
@use "sass/utilities/extends";
@use "sass/utilities/mixins" as mx;
.bd-example {
@extend %block;
}
.bd-copy,
.bd-show {
background-color: var(--theme-color);
border: none;
border-radius: 0.5em !important;
color: var(--hl-background);
font-size: 1em;
font-weight: cv.getVar("weight-semibold");
&:focus {
box-shadow: none !important;
}
}
.bd-copy {
opacity: 0;
position: absolute;
right: 0.75em;
top: 0.75em;
transition-duration: cv.getVar("duration");
transition-property: opacity;
.highlight:hover & {
opacity: 1;
}
}
.bd-show {
bottom: -1.25em;
height: 2.5em;
left: calc(50% - 4.5em);
padding: 0;
position: absolute;
width: 9em;
gap: 0.25em;
z-index: 1;
.icon {
margin: 0 !important;
}
}
.bd-snippet-inline {
display: inline-block;
margin-bottom: -0.25em;
vertical-align: bottom;
.highlight pre {
padding: 0.5em 0.75em 0.625em;
}
.button.bd-copy {
display: none;
}
}
.bd-snippet {
@extend %block;
--snippet-spacing: calc(#{cv.getVar("block-spacing")} * 1.25);
font-size: 1rem;
grid-gap: calc(2 * var(--snippet-spacing));
position: relative;
}
.bd-snippet-title {
display: flex;
margin-bottom: 0 !important;
}
.bd-snippet-tag {
align-items: center;
background: hsla(var(--theme-h), var(--theme-s), var(--theme-l), 0.1);
border-radius: 0.5em;
color: var(--theme-color);
display: inline-flex;
flex-grow: 0;
flex-shrink: 0;
font-size: 0.75rem;
font-weight: cv.getVar("weight-semibold");
height: calc(#{cv.getVar("block-spacing")} * 1.25);
padding: 0 1em;
vertical-align: top;
&.bd-is-html {
background: var(--hl-background);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-color);
}
}
.bd-snippet-preview,
.bd-snippet-code {
position: relative;
}
.bd-snippet-preview {
padding-bottom: var(--snippet-spacing);
padding-top: var(--snippet-spacing);
img {
vertical-align: top;
}
&.bd-is-mwb {
align-items: center;
display: flex;
justify-content: center;
}
}
.bd-snippet-code {
font-size: 0.875em;
// overflow: auto;
// padding-top: var(--snippet-spacing);
.highlight {
border-top-left-radius: 0;
font-size: 1em;
}
&.bd-is-hovering {
&::before {
background: var(--theme-color);
color: var(--hl-background);
}
}
}
// Fullwidth
.bd-snippet.bd-is-fullwidth {
margin-left: calc(-1 * var(--docs-outer));
margin-right: calc(-1 * var(--docs-outer));
.bd-snippet-title {
margin-left: var(--docs-outer);
}
}
// Clipped
.bd-snippet.bd-is-clipped {
.bd-snippet-code {
overflow: auto;
}
}
.bd-snippet-code.bd-is-more {
.highlight:not(:last-child) {
margin-bottom: 2.5rem;
}
}
.bd-snippet-code.bd-is-more.bd-is-more-clipped {
margin-bottom: 1.5rem;
.highlight {
height: calc(8 * var(--snippet-spacing));
overflow: hidden;
pre {
overflow: hidden;
}
.bd-show {
display: flex;
}
&::before {
background: linear-gradient(0deg, var(--hl-background), transparent);
bottom: 0;
content: "";
display: block;
left: 0;
position: absolute;
right: 0;
top: 0;
}
}
}
@include mx.fullhd {
.bd-snippet.bd-is-vertical {
align-items: flex-start;
display: grid;
grid-template-columns: calc(50% - var(--snippet-spacing)) calc(
50% - var(--snippet-spacing)
);
}
.bd-snippet.bd-is-size-1-2 {
grid-template-columns: calc(33% - var(--snippet-spacing)) calc(
67% - var(--snippet-spacing)
);
}
.bd-snippet-preview {
padding-bottom: var(--snippet-spacing);
}
}