1
Fork 0
mirror of https://github.com/Steffo99/bluelib.git synced 2024-12-22 11:34:21 +00:00
bluelib/skeleton.css

287 lines
4.7 KiB
CSS

/*
This file should contain ONLY positioning and layout rules.
Colors and theme should go in skin.css!
*/
/*
From here on, rules will be defined as
inherits1, inherits2, inherits3, ...,
.rulename {
...
}
*/
/* Use border boxes in all elements instead of the insane content box measuring */
* {
box-sizing: border-box;
/* Set the default border color and style on all elements, and allow skins to override them */
border-style: solid;
border-width: 0; /* Removing this means all elements will have a 2px border-width */
}
/* --- Main container --- */
main,
.main {
margin-left: auto;
margin-right: auto;
max-width: 1280px;
}
/* --- Horizontal split --- */
.splitter {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin: 8px 0;
justify-content: center;
}
.splitted { /* Yes I know split is irregular, but it allows to disambiguate better between splitter and split */
flex-grow: 1;
flex-shrink: 0;
flex-basis: 0;
}
/* --- Text positions --- */
.align-left {
text-align: left;
}
h1, h2, h3, h4, h5, h6, /* Align titles to the center */
.align-center {
text-align: center;
}
.align-right {
text-align: right;
}
/* --- Text style --- */
h1,
.size-xxl {
font-size: xx-large;
}
h2,
.size-xl {
font-size: x-large;
}
h3,
.size-l {
font-size: large;
}
h4,
.size-m {
font-size: medium;
}
h5,
.size-s {
font-size: small;
}
h6,
.size-xs {
font-size: x-small;
}
.size-xxs {
font-size: xx-small;
}
b,
.style-bold {
font-weight: bold;
}
i,
.style-italic {
font-style: italic;
}
/* --- Text colors --- */
.color-red {
color: red;
}
.color-orange {
color: orange;
}
.color-yellow {
color: #dddd00; /* Yellow isn't readable on a white background */
}
.color-lime {
color: lime;
}
.color-cyan {
color: cyan;
}
.color-blue {
color: blue;
}
.color-magenta {
color: magenta;
}
/* --- Text mode --- */
pre, code, kbd,
.monospace {
font-family: monospace;
}
.spoiler {
filter: blur(5px);
cursor: help;
}
.spoiler:hover {
filter: none;
}
/* --- Containers --- */
.panel {
margin: 8px 0;
padding: 8px;
border-radius: 4px;
border-width: 2px;
width: 100%;
background-color: rgba(0, 0, 0, 0.025);
}
/* Dirty hack to have uniform margins */
.splitter > .panel, .panel > .panel, .panel > .splitter {
margin: 0;
}
.panel p:first-child, /* Remove the margin from the first paragraph of a panel */
.no-margin-top {
margin-top: 0;
}
.panel p:last-child, /* Remove the margin from the last paragraph of a panel */
.no-margin-bottom {
margin-bottom: 0;
}
.no-margin-vertical {
margin-top: 0;
margin-bottom: 0;
}
.no-margin-left {
margin-left: 0;
}
.no-margin-right {
margin-right: 0;
}
.no-margin-horizontal {
margin-left: 0;
margin-right: 0;
}
.no-margin-all {
margin: 0;
}
.panel h1:first-child, /* Add a slight margin to the first title of a panel */
.panel h2:first-child, /* */
.panel h3:first-child, /* */
.panel h4:first-child, /* */
.panel h5:first-child, /* */
.panel h6:first-child, /* */
.slight-margin-top {
margin-top: 4px;
}
.panel h1:last-child, /* Add a slight margin to the last title of a panel */
.panel h2:last-child, /* */
.panel h3:last-child, /* */
.panel h4:last-child, /* */
.panel h5:last-child, /* */
.panel h6:last-child, /* */
.slight-margin-bottom {
margin-bottom: 4px;
}
/* Blockquote panels */
blockquote.panel,
.panel.panel-blockquote {
border-radius: 4px;
border-left-width: 2px;
border-top-width: 0;
border-bottom-width: 0;
border-right-width: 0;
}
/* Table panels */
table.panel,
.panel-table.panel {
border-spacing: 0;
border-width: 2px;
border-collapse: collapse;
}
/* Aside panels */
aside.panel,
.aside.panel {
border-width: 0;
font-size: smaller;
}
th, td,
.table-cell {
padding: 4px;
border-width: 1px;
}
/* Limited panels */
.limited {
max-width: 420px;
margin-left: auto;
margin-right: auto;
}
img.limited {
max-width: 420px;
max-height: 420px;
}
/* --- Separators --- */
hr,
.separator {
border-width: 1px;
}
/* --- Lists --- */
li,
.list-element {
margin: 10px 0;
}
/* --- Misc --- */
*[title],
.with-title-text {
cursor: help;
}