bidouille/static/css/bidouille.css

587 lines
11 KiB
CSS
Raw Normal View History

2024-03-19 12:07:00 +01:00
/* Ceci est une feuille de style.
2024-04-01 16:38:13 +02:00
*
* Elle est constituée de règles qui influencent l'affichage de la page html.
*
2024-03-19 12:07:00 +01:00
* C'est la dernière que la page html charge (voir html > head).
2024-04-01 16:38:13 +02:00
* Les règles qui sont décrites dans le fichier actuel sont donc les premières règles de la cascade CSS.
2024-03-19 12:07:00 +01:00
* CSS voulant dire en anglais Cascading Style Sheet(s), ou Feuilles de Style en Cascade.
*
* Ah oui ! Ceci est un commentaire.
2024-03-13 18:00:24 +01:00
*/
2024-03-19 12:07:00 +01:00
/* Les couleurs
*
* Les couleurs sont définies en tant que variables sous la forme
--nom: contenu;
* Elles sont appelables dans les régles css sous la forme
var(--nom)
*
* Cela facilite le changement de couleur pour « tout le site » en quelques corrections.
* Merci de préférer travailler avec des couleurs sous forme de variable telles que les 4 ci-dessous.
*
* Quelques Jeux de couleurs sont proposer pour jouer avec :).
* Si tous les Jeux de coudeurs mis en commentaire, le site sera en noir&blanc.
* Mais le menu sera moche en
*/
/* Jeu de couleur de base
2024-04-01 16:38:13 +02:00
* Celui-ci n'étant pas commenté, c'est le jeu de base utilisé pour le site.
2024-03-20 08:26:46 +01:00
*/
2024-04-01 16:38:13 +02:00
:root {
--fond: #EEE;
--primaire: #222;
--liens: #fe1976;
--deco: #96D321;
}
2024-03-19 12:07:00 +01:00
/* Jeu de couleur de base mais inversé
* Commentez les autres jeux de couleur sauf celui-ci pour l'utiliser.
:root {
--fond: #222;
--primaire: #EEE;
--liens: #96D321;
--deco: #fe1976;
2024-03-13 18:00:24 +01:00
}
*/
2024-03-19 12:07:00 +01:00
/* Jeu de couleurs « Belgique »
* Commentez les autres jeux de couleur sauf celui-ci pour l'utiliser.
2024-03-13 18:00:24 +01:00
:root {
--fond: black;
--primaire: white;
--liens: gold;
--deco: red;
}
*/
2024-03-19 12:07:00 +01:00
/* Jeu de couleurs « Europe »
* Commentez les autres jeux de couleur sauf celui-ci pour l'utiliser.
2024-04-01 16:38:13 +02:00
:root {
--fond: white;
--primaire: #039;
2024-03-19 12:07:00 +01:00
--liens: rgb(18, 116, 207);
--deco: #FC0;
2024-03-13 18:00:24 +01:00
}
*/
/* Expériences
*/
2024-04-01 16:38:13 +02:00
2024-03-13 18:00:24 +01:00
/* Pour « toute » la page.
*/
2024-03-19 12:07:00 +01:00
html {
/* Pour que lorsqu'on clique sur le lien de retour
* d'une note en bas de page, le texte ne se cache pas
* sous le header (menu en haut de la page).
*/
scroll-padding-top: 2.5em;
}
2024-03-13 18:00:24 +01:00
body {
margin: 0;
font-family: sans-serif;
background-color: var(--fond);
color: var(--primaire);
}
a {
text-decoration: none;
color: var(--liens);
2024-03-19 12:07:00 +01:00
/* Décommentez pour ajouter une bordure en pointillés autour de tous les liens,
* pour voir ce que ça fait histoire de rigoler un peu.
border: dotted var(--deco) 5px;
*/
2024-03-13 18:00:24 +01:00
}
img {
max-width: 90vw;
display: block;
}
.hidden {
visibility: hidden;
}
.red {
color: red;
}
/* pour les images en Markdown.
* En markdown : ![alt](path/file.png#class "titre")
* Sauf si leur nom est trop similaire, plusieurs classes peuvent se succéder.
* ex qui ne fonctionnerait pas : #small et #smaller
* ex en markown: ![alt](path/file.png#verysmall#right "titre")
*/
img[src*="#left"] {
float: left;
padding-right: 1em;
}
img[src*="#right"] {
float: right;
padding-left: 1em;
}
img[src*="#center"] {
margin: auto;
}
img[src*="#verysmall"] {
max-width: 10vw;
}
img[src*="#small"] {
max-width: 30vw;
}
img[src*="#medium"] {
max-width: 60vw;
}
img[src*="#round"] {
border-radius: 50%;
}
/* Pour la balise header.
* Elle est utilisée une seule fois sur la page.
* Pour y afficher les deux menus, le principal et le social.
*/
header {
background-color: var(--primaire);
color: var(--fond);
position: -webkit-sticky; /* Safari */
position: sticky;
top: 0;
display: flex;
justify-content: space-between;
}
header a {
color: var(--fond);
padding: .5em;
display: inline-block;
}
header a::first-letter {
color: var(--deco);
}
header a:hover{
background: var(--liens);
}
header a:hover::first-letter{
color: unset;
}
header a.current {
text-decoration: underline .2em;
text-decoration-color: var(--liens);
}
header a.current::first-letter{
color: unset;
}
.social {
background-color: var(--deco);
}
2024-03-24 13:24:33 +01:00
/* Si c'est du texte et pas un fa-icon,
* il faut pouvoir lire la première lettre.
*/
.social a::first-letter{
color: unset;
}
2024-03-13 18:00:24 +01:00
.social a:hover {
color: var(--fond);
}
/* Contenu principal
*/
main {
2024-04-01 16:38:13 +02:00
margin-left: 2em ;
2024-03-13 18:00:24 +01:00
}
.pagination {
display: flex;
align-items: center;
justify-content: center;
position: sticky;
top:auto;
}
.pagination p {
margin: .5em;
}
.pagination a:hover {
color: var(--primaire);
}
.pagination a {
padding-left: 2em;
padding-right: 3em;
font-size: 1.5em;
}
/* Le tire et des infos
*/
hgroup h1 {
margin-bottom: 0em;
line-height: 1.2em;
}
2024-03-20 08:26:46 +01:00
2024-03-13 18:00:24 +01:00
hgroup p{
2024-03-20 08:26:46 +01:00
/* pour les infos des articles (date, auteurs, )
*/
2024-03-13 18:00:24 +01:00
margin-top: 0em;
color: color-mix(in srgb, var(--primaire), transparent);
}
hgroup a {
color: color-mix(in srgb, var(--liens) 70%, transparent);
}
/* un article ou une page
*/
2024-04-01 16:38:13 +02:00
article h1 a {
visibility: hidden;
}
article h2 a,
article h3 a,
article h4 a,
article h5 a,
article h6 a {
padding-left: .3em;
}
2024-03-13 18:00:24 +01:00
article p {
padding-left: 1em;
line-height: 1.5em;
2024-04-01 16:38:13 +02:00
margin: .5em 0em;
2024-03-13 18:00:24 +01:00
}
2024-04-01 16:38:13 +02:00
article p a:hover {
text-decoration: underline;
text-decoration-color: var(--deco);
color: unset;
}
2024-03-13 18:00:24 +01:00
article footer {
text-align: center;
font-size: smaller;
}
article blockquote {
border-left-style: dotted;
border-left-color: gray;
margin: 1em;
}
2024-04-01 16:38:13 +02:00
/* Perma-liens sur les titres et sous-tittres, sous forme de points médians colorés.
* Nécessite d'activer les fonctionnalités de Table des matières (TOC)
* au travers de la variable MARKDOWN dans le pelicanconf.py.
2024-03-13 18:00:24 +01:00
*/
article h1 {
font-size: xx-large;
}
2024-04-01 16:38:13 +02:00
article h2 a:after {
2024-03-13 18:00:24 +01:00
content: " ··";
color: var(--deco);
}
2024-04-01 16:38:13 +02:00
article h3 a:after {
2024-03-13 18:00:24 +01:00
content: " ···";
color: var(--deco);
}
2024-04-01 16:38:13 +02:00
article h4 a:after {
2024-03-13 18:00:24 +01:00
content: " ··· ·";
color: var(--deco);
}
2024-04-01 16:38:13 +02:00
article h5 a:after {
2024-03-13 18:00:24 +01:00
content: " ··· ··";
color: var(--deco);
}
2024-04-01 16:38:13 +02:00
article h6 a:after {
2024-03-13 18:00:24 +01:00
content: " ··· ···";
color: var(--deco);
}
2024-04-01 16:38:13 +02:00
article h2 a:hover:after,
article h3 a:hover:after,
article h4 a:hover:after,
article h5 a:hover:after,
article h6 a:hover:after {
color: var(--liens);
}
article h2 a:hover,
article h3 a:hover,
article h4 a:hover,
article h5 a:hover,
article h6 a:hover {
color: var(--deco);
}
2024-03-13 18:00:24 +01:00
2024-03-19 12:07:00 +01:00
/* listes à puces
2024-03-13 18:00:24 +01:00
*/
li {
line-height: 1.8em;
}
ul li {
2024-03-19 12:07:00 +01:00
/* pour écarter le symbole du texte
2024-03-13 18:00:24 +01:00
*/
padding-left: .5em;
}
ul li::marker {
color: var(--deco);
2024-03-19 12:07:00 +01:00
/*
* Il existe une multitude de caractères Unicode qui peuvent être utilisé pour les listes à puce.
* https://en.wikipedia.org/wiki/List_of_Unicode_characters
*
*/
content: "❖";
/* Il est également possible d'utiliser un icône de la police FontAwsome incluse dans ce thème.
*
* content: "\f058";
* font-family: 'ForkAwesome';
*
* Vous trouverez le code sur le site de ForkAwsome.
* Par exemple f058 pour https://forkaweso.me/Fork-Awesome/icon/check-circle/
*/
2024-03-13 18:00:24 +01:00
}
li>ul {
2024-03-19 12:07:00 +01:00
/* Contrôler le retrait d'une liste de second niveau (une liste dans une liste)
*/
2024-03-13 18:00:24 +01:00
padding-left: .7em;
}
li>ul li::marker {
2024-03-19 12:07:00 +01:00
/* Chanher la couleur des puces d'une liste de second niveau (une liste dans une liste)
*/
2024-03-13 18:00:24 +01:00
color: color-mix(in srgb, var(--primaire) 60%, transparent);
}
/* tables
*/
table {
2024-03-19 12:07:00 +01:00
/* Pour centrer les tables
*/
2024-03-13 18:00:24 +01:00
margin-left: auto;
margin-right: auto;
}
th {
2024-03-19 12:07:00 +01:00
/* Pour souligner la ligne de titre des tables
*/
2024-03-13 18:00:24 +01:00
border-bottom: solid var(--deco) 1px;
}
tr:nth-child(even) {
2024-03-19 12:07:00 +01:00
/* Pour colorer différemment une ligne sur deux (even)
* La fonction color-mix est récente (2023) en CSS et pourrait ne pas fonctionner sur des anciens navigateurs web.
*/
2024-03-13 18:00:24 +01:00
background-color: color-mix(in srgb, var(--primaire) 20%, var(--fond));
}
2024-03-19 12:07:00 +01:00
/* Coloration du code (highlight)
* voir aussi le fichier highlight.css
2024-03-13 18:00:24 +01:00
*/
2024-03-19 12:07:00 +01:00
article p code {
/* Pour que, dans le texte, le code soit de couleur et de fond différent.
* Mais PAS pour la class .highlight qui contiendra du code sur plusieurs lignes,
* et qui utilise la coloration syntaxique définie dans le fichier highlight.css.
*/
background-color: var(--primaire);
color: var(--fond);
padding: .3em;
}
2024-03-13 18:00:24 +01:00
.highlight {
2024-03-19 12:07:00 +01:00
/* Permettre les retours à la ligne automatiques quand on affiche du code, peut le rendre difficile à lire.
* Pour éviter cela le défillement en cas de débordement (overflow) dans les zones affichant du code est activé.
*/
2024-03-13 18:00:24 +01:00
margin-left: 2em;
width: auto;
height: auto;
overflow: auto;
}
.highlighttable {
/* Sinon le code avec numérotation des lignes
* se retrouve centré parcequ'il est fait avec une table.
*/
margin-left: unset;
margin-right: unset;
}
/* notes en bas de page
*/
.footnote hr {
color: var(--fond);
}
.footnote p {
font-size: 1em;
line-height: 1em;
}
2024-04-01 16:38:13 +02:00
/* Pour la table des matières si [TOC] est utilisé dans un article ou une page.
*/
article {
/* 3fr = 3/4 de l'affichage pour le contenu de l'article ou de la page.
* 1fr = 1/4 de l'affichage pour la table des matière (ou une zone vide si elle n'est pas activée).
*/
display: grid;
grid-template-columns: repeat(auto-fill, minmax(75vw, 1fr));
padding-right: 2em;
}
article * {
/* Pour que tout les éléments SAUF la table des matières, se trouvent dans la première colone.
*/
grid-column: 1;
}
.toc {
/* Pour la table des matières d'un article (ou d'une page).
*/
grid-column: 2;
padding: 0em 1.5em;
background-color: var(--primaire);
margin-left: 2em;
margin-right: -2em; /* pour couvrir de couleur la marge du <main></main> */
grid-row: span 1000; /* un nombre arbitrairement grand */
}
.toc ul {
position: -webkit-sticky;
position: sticky;
top: 4em;
padding-left: .5em;
}
.toc li::marker {
color: var(--deco);
content: unset;
}
.toc a {
color: var(--fond);
}
.toc a:hover {
color: var(--deco);
}
2024-03-13 18:00:24 +01:00
/* Pied de page
*/
footer {
text-align: center;
font-size: smaller;
border-top: .1em dashed color-mix(in srgb, var(--primaire), transparent);;
padding: .5em;
}
footer a {
text-decoration: none;
}
footer a:hover {
color: var(--deco);
}
/* Pour ne pas imprimer le menu.
*/
@media print {
2024-04-01 16:38:13 +02:00
header, .toc {
2024-03-13 18:00:24 +01:00
display: none !important;
}
}
/* Pour un minimum de responsivenessitude
*/
@media screen and (max-width: 800px) {
img {
min-width: 30vw;
}
header {
position: unset;
top: unset;
}
nav:last-child {
width: min-content;
}
main {
margin-left: unset;
margin-right: unset;
}
hgroup, article, article>div.highlight, blockquote, table {
margin-left: .5em;
margin-right: .5em;
}
ul {
padding-left: 1em;
}
hgroup {
border-bottom: dashed var(--deco) 10px;
border-width: 50%;
}
footer {
color: var(--fond);
background-color: var(--primaire);
border-top: unset;
}
footer a {
color: var(--deco);
}
.pagination p {
margin: 0em;
}
.pagination a {
2024-03-19 12:07:00 +01:00
padding-left: 1.5em;
padding-right: 1.5em;
font-size: 1em;
2024-03-13 18:00:24 +01:00
}
2024-04-01 16:38:13 +02:00
.toc {
visibility: hidden;
height: 0em;
}
article {
display: block;
padding-right: unset;
}
2024-03-13 18:00:24 +01:00
}