Réorganisation de la structure des fichiers front-end
All checks were successful
SSH Frontend Deploy / ssh-deploy (push) Successful in 59s
All checks were successful
SSH Frontend Deploy / ssh-deploy (push) Successful in 59s
Cette modification restructure l'architecture des fichiers du projet pour améliorer la maintenabilité: - JavaScript: création d'une structure en sous-dossiers - core/ pour les utilitaires et fonctions essentielles - components/ pour les composants réutilisables - libs/ pour les bibliothèques externes (jQuery) - pages/ pour les scripts spécifiques aux pages - CSS: séparation des styles en catégories - base/ pour les styles fondamentaux - components/ pour les styles des composants d'interface - pages/ pour les styles spécifiques aux pages - HTML: création d'un dossier pages/ pour les templates HTML (hors index.html) Tous les chemins dans les fichiers HTML ont été mis à jour pour refléter cette nouvelle structure. Cette réorganisation n'apporte aucune modification fonctionnelle, uniquement une amélioration structurelle.
This commit is contained in:
446
css/base/style.css
Normal file
446
css/base/style.css
Normal file
@@ -0,0 +1,446 @@
|
||||
body::before {
|
||||
content: "";
|
||||
position: fixed; /* Use fixed positioning to keep the image in place */
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-image: url("../image/camera-image");
|
||||
background-position: center;
|
||||
background-size: cover;
|
||||
filter: blur(1px) brightness(0.3);
|
||||
z-index: -100; /* Ensure the background image stays behind other content */
|
||||
}
|
||||
|
||||
* {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
|
||||
.container {
|
||||
position: absolute;
|
||||
top: 28vh;
|
||||
max-width: 1140px;
|
||||
margin: auto;
|
||||
padding: 15px;
|
||||
}
|
||||
|
||||
.mt-5 {
|
||||
margin-top: 5rem;
|
||||
}
|
||||
|
||||
.mb-4 {
|
||||
margin-bottom: 4rem;
|
||||
}
|
||||
|
||||
.text-center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.modal,
|
||||
.form-container {
|
||||
display: none;
|
||||
position: fixed;
|
||||
z-index: 20;
|
||||
left: 0;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: rgba(0, 0, 0, 0.8);
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.modal-content,
|
||||
.form-content {
|
||||
background-color: #1e1e1e;
|
||||
padding: 20px;
|
||||
border-radius: 8px;
|
||||
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
|
||||
width: 80%;
|
||||
max-width: 600px;
|
||||
margin: auto;
|
||||
color: #e0e0e0;
|
||||
}
|
||||
|
||||
.form-content {
|
||||
padding: 30px;
|
||||
border-radius: 12px;
|
||||
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.5);
|
||||
text-align: left;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
max-height: 90vh;
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.modal-buttons {
|
||||
text-align: center;
|
||||
margin-top: 20px;
|
||||
}
|
||||
.default-button {
|
||||
background-color: #248f99;
|
||||
z-index: 15;
|
||||
color: white;
|
||||
border: none;
|
||||
padding: 10px;
|
||||
cursor: pointer;
|
||||
border-radius: 5px;
|
||||
font-size: 18px;
|
||||
margin-bottom: 15px;
|
||||
white-space: nowrap;
|
||||
transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth transition */
|
||||
}
|
||||
|
||||
.default-button:hover {
|
||||
transform: translateY(-4px); /* Lift the button more on hover */
|
||||
box-shadow: 0 6px 8px rgba(0, 0, 0, 1); /* Increase shadow on hover */
|
||||
}
|
||||
|
||||
.default-button:active {
|
||||
transform: translateY(0); /* Remove lift on click */
|
||||
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); /* Reduce shadow on click */
|
||||
}
|
||||
|
||||
.buttons-container {
|
||||
display: flex;
|
||||
gap: 10px; /* Space between buttons */
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.form-content h1 {
|
||||
margin-bottom: 20px;
|
||||
font-size: 1.5rem;
|
||||
color: #f0f0f0;
|
||||
}
|
||||
|
||||
.form-content label {
|
||||
margin-bottom: 10px;
|
||||
font-weight: bold;
|
||||
color: #cccccc;
|
||||
}
|
||||
|
||||
.form-content input,
|
||||
.form-content select {
|
||||
margin-bottom: 20px;
|
||||
padding: 12px;
|
||||
font-size: 1rem;
|
||||
border: 1px solid #555;
|
||||
border-radius: 4px;
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
background-color: #333;
|
||||
color: #e0e0e0;
|
||||
}
|
||||
|
||||
.duration-input,
|
||||
.fraction-input {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.duration-input button,
|
||||
.fraction-input button {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
margin: 0 10px;
|
||||
background-color: #007bff;
|
||||
color: #fff;
|
||||
border: none;
|
||||
border-radius: 4px;
|
||||
cursor: pointer;
|
||||
transition: background-color 0.3s;
|
||||
}
|
||||
|
||||
.duration-input button:hover,
|
||||
.fraction-input button:hover {
|
||||
background-color: #0056b3;
|
||||
}
|
||||
|
||||
.duration-input input {
|
||||
width: 60px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.frequency-control {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.frequency-control label {
|
||||
margin-right: 10px;
|
||||
color: #e0e0e0;
|
||||
}
|
||||
|
||||
.frequency-control input[type="number"] {
|
||||
width: 10vw;
|
||||
text-align: center;
|
||||
background-color: #333;
|
||||
border: 1px solid #555;
|
||||
color: #e0e0e0;
|
||||
}
|
||||
|
||||
.hiddenTable {
|
||||
max-height: 50vh;
|
||||
overflow-y: hidden;
|
||||
}
|
||||
|
||||
.full-view {
|
||||
max-height: none;
|
||||
overflow-y: visible;
|
||||
}
|
||||
|
||||
footer {
|
||||
text-align: center;
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
background-color: #1e1e1e;
|
||||
padding: 1vh;
|
||||
border-top: 1px solid #333;
|
||||
color: #e0e0e0;
|
||||
font-size: 2vh;
|
||||
}
|
||||
|
||||
#metric_viewer {
|
||||
margin-left: 3vw;
|
||||
background-color: #444;
|
||||
font-size: bold;
|
||||
opacity: 0.79;
|
||||
}
|
||||
|
||||
.default-access-button {
|
||||
background-color: #182b3f;
|
||||
z-index: 15;
|
||||
color: white;
|
||||
border: 1px solid yellow;
|
||||
padding: 10px;
|
||||
cursor: pointer;
|
||||
border-radius: 5px;
|
||||
font-size: 18px;
|
||||
margin-bottom: 15px;
|
||||
transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth transition */
|
||||
}
|
||||
|
||||
.default-access-button:hover {
|
||||
transform: translateY(-4px); /* Lift the button more on hover */
|
||||
box-shadow: 0 6px 8px rgba(0, 0, 0, 0.8); /* Increase shadow on hover */
|
||||
}
|
||||
|
||||
.default-access-button:active {
|
||||
transform: translateY(0); /* Remove lift on click */
|
||||
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); /* Reduce shadow on click */
|
||||
}
|
||||
|
||||
.default-delete-button {
|
||||
background-color: #7e2416;
|
||||
z-index: 15;
|
||||
color: white;
|
||||
border: none;
|
||||
padding: 10px;
|
||||
cursor: pointer;
|
||||
border-radius: 5px;
|
||||
font-size: 18px;
|
||||
transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth transition */
|
||||
}
|
||||
|
||||
.default-delete-button:hover {
|
||||
transform: translateY(-4px); /* Lift the button more on hover */
|
||||
box-shadow: 0 6px 8px rgba(0, 0, 0, 1); /* Increase shadow on hover */
|
||||
}
|
||||
|
||||
.default-delete-button:active {
|
||||
transform: translateY(0); /* Remove lift on click */
|
||||
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); /* Reduce shadow on click */
|
||||
}
|
||||
|
||||
@keyframes glitch {
|
||||
0% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
|
||||
1% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
|
||||
2% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
|
||||
3% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
|
||||
4% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
|
||||
5% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
6% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
7% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
8% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
9% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
10% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
11% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0.5px);}
|
||||
12% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0.5px);}
|
||||
13% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0.5px);}
|
||||
14% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0);}
|
||||
15% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0);}
|
||||
16% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
|
||||
17% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
|
||||
18% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
|
||||
19% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
|
||||
20% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
|
||||
21% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
|
||||
22% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
|
||||
23% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
|
||||
24% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
|
||||
25% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
|
||||
26% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0.5px);}
|
||||
27% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0.5px);}
|
||||
28% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
|
||||
29% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
|
||||
30% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
|
||||
31% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
|
||||
32% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
|
||||
33% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
|
||||
34% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
|
||||
35% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0.5px);}
|
||||
36% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0.5px);}
|
||||
37% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0.5px);}
|
||||
38% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
|
||||
39% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
|
||||
40% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
|
||||
41% { text-shadow: 45px 0 0 #0c33f5, -45px 0 0 lime; filter: blur(0);}
|
||||
42% { text-shadow: 0 0 0 #0c33f5, 0 0 0 lime; filter: blur(0);}
|
||||
43% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0);}
|
||||
44% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0);}
|
||||
45% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0);}
|
||||
46% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0.5px);}
|
||||
47% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0.5px);}
|
||||
48% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
|
||||
49% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
|
||||
50% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
|
||||
51% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
|
||||
52% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
|
||||
53% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
|
||||
54% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
|
||||
55% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0.5px);}
|
||||
56% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0.5px);}
|
||||
57% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0.5px);}
|
||||
58% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
59% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
60% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
61% { text-shadow: 30px 0 0 red, -30px 0 0 lime; filter: blur(0);}
|
||||
62% { text-shadow: 0 0 0 red, 0 0 0 lime; filter: blur(0);}
|
||||
63% { text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5; filter: blur(0);}
|
||||
64% { text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5; filter: blur(0);}
|
||||
65% { text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5; filter: blur(0);}
|
||||
66% { text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5; filter: blur(0.5px);}
|
||||
67% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0.5px);}
|
||||
68% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
69% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
70% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
71% { text-shadow: 50px 0 0 red, -50px 0 0 #0c33f5; filter: blur(0);}
|
||||
72% { text-shadow: 0 0 0 red, 0 0 0 #0c33f5; filter: blur(0);}
|
||||
73% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
|
||||
74% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
|
||||
75% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
|
||||
76% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
|
||||
77% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
78% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
79% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
80% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
|
||||
81% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0);}
|
||||
82% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0);}
|
||||
83% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0.5px);}
|
||||
84% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0.5px);}
|
||||
85% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0.5px);}
|
||||
86% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0.5px);}
|
||||
87% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0.5px);}
|
||||
88% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
|
||||
89% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
|
||||
90% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
|
||||
91% { text-shadow: 60px 0 0 lime, -60px 0 0 #0c33f5; filter: blur(0);}
|
||||
92% { text-shadow: 0 0 0 lime, 0 0 0 #0c33f5; filter: blur(0);}
|
||||
92% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
|
||||
93% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
|
||||
94% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
|
||||
95% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
|
||||
96% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
|
||||
97% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
|
||||
98% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
|
||||
99% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
|
||||
100% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
|
||||
}
|
||||
|
||||
.form-header {
|
||||
display: flex;
|
||||
justify-content: right; /* Aligns items with space between them */
|
||||
}
|
||||
|
||||
#close-form-button-project, #close-form-button-{
|
||||
width: 35px;
|
||||
}
|
||||
|
||||
.container-title {
|
||||
text-align: center;
|
||||
position: absolute;
|
||||
top:5vh
|
||||
}
|
||||
.container-title #xyz {
|
||||
left: 29vw;
|
||||
font-family: 'Cabin Condensed', sans-serif;
|
||||
position: relative;
|
||||
white-space: nowrap;
|
||||
font-size: 4.5vw;
|
||||
max-width: 40vw;
|
||||
font-weight: bold;
|
||||
overflow: hidden;
|
||||
color: #f6f6f6;
|
||||
animation: textreveal 4s infinite alternate;
|
||||
}
|
||||
.container-title #ball {
|
||||
top: 4vh;
|
||||
position: absolute;
|
||||
height: 10vw;
|
||||
width: 10vw;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
background-color: #f57724;
|
||||
border-radius: 50%;
|
||||
animation: ballmove 4s infinite alternate;
|
||||
z-index: 1;
|
||||
box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
@keyframes ballmove {
|
||||
0% {
|
||||
transform: translate(25vw, 5vh) scale(0.1);
|
||||
}
|
||||
10% {
|
||||
transform: translateX(25vw) scale(0.5);
|
||||
}
|
||||
40% {
|
||||
transform: translateX(70vw) scale(0.5);
|
||||
}
|
||||
60% {
|
||||
transform: translate(66vw, 5vh) scale(0.1);
|
||||
}
|
||||
70% {
|
||||
transform: translate(66vw, 5vh) scale(0.15);
|
||||
}
|
||||
80% {
|
||||
transform: translate(66vw, 5vh) scale(0.1);
|
||||
}
|
||||
90% {
|
||||
transform: translate(66vw, 5vh) scale(0.15);
|
||||
}
|
||||
100% {
|
||||
transform: translate(66vw, 5vh) scale(0.1);
|
||||
}
|
||||
}
|
||||
@keyframes textreveal {
|
||||
0% {
|
||||
width: 0;
|
||||
}
|
||||
10% {
|
||||
width: 0;
|
||||
}
|
||||
40% {
|
||||
width: 40vw;
|
||||
}
|
||||
100% {
|
||||
width: 40vw;
|
||||
}
|
||||
}
|
||||
|
||||
.global_title_h1 {
|
||||
color: white;
|
||||
font-size: 10vh;
|
||||
}
|
||||
Reference in New Issue
Block a user