discourse-offline-page/html/error_page.html

97 lines
2.6 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="refresh" content="15">
<title>Site undergoing maintenance</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="icon" type="image/png" href="error-page-favicon.png">
<style>
:root {
--background-color: #ffffff;
--background-color-base: #f8f8f8;
--color: #434343;
--border-color: #e9e9e9;
@media (prefers-color-scheme: dark) {
--color: #dddddd;
--border-color: #444444;
--background-color-base: #282828;
--background-color: #222222;
}
}
body {
margin: 8px;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
Oxygen-Sans, Ubuntu, Cantarell, Arial, sans-serif;
color: var(--color);
background-color: var(--background-color-base);
}
#page {
height: 100vh;
background-image: url(error-page-bg.png)
}
main {
max-width: 800px;
margin-inline: auto;
background-color: var(--background-color);
box-shadow: 0 4px 19px 6px rgba(0,0,0,.05);
padding: 2em;
border: 1px solid var(--border-color);
border-radius: 8px;
}
#loading {
margin-top: 4em;
margin-bottom: 3em;
width: max-content;
margin-inline: auto;
}
#loading > *{
background-color: #3f6bfc;
margin: 3px;
border-radius: 50%;
width: 20px;
height: 20px;
display: inline-block;
animation: 1s infinite alternate loading;
}
#loading > *:nth-child(2) {
animation-delay: 0.15s;
background-color: #713ffc;
}
#loading > *:nth-child(3) {
animation-delay: 0.3s;
background-color: #3fc9fc;
}
#loading > *:nth-child(4) {
animation-delay: 0.45s;
background-color: #3f6bfc;
}
@keyframes loading {
from {transform: translateY(0px);}
50% {transform: translateY(0px);}
to {transform: translateY(-30px);}
}
</style>
</head>
<body>
<div id="page">
<main>
<picture>
<source srcset="error-page-dark.png" media="(prefers-color-scheme: dark)"/>
<img src="error-page.png"/>
</picture>
<h1>Site offline</h1>
<p>
Please wait while Discourse is being configured.
This page will refresh when everything is ready.
</p>
<div id="loading">
<div></div>
<div></div>
<div></div>
<div></div>
</div>
</main>
</div>
</body>
</html>