« Modèle:Header/styles.css » : différence entre les versions
De Nefald
Autres actions
Page créée avec « →============================================================================= HEADER COMPONENT Composant d'en-tête stylisé pour affichage de contenu Compatible dark/light mode avec Citizen skin ============================================================================= : /* ----------------------------------------------------------------------------- STRUCTURE DE BASE ---------------------------------------------------------------------... » |
Aucun résumé des modifications |
||
| Ligne 13 : | Ligne 13 : | ||
display: flex; | display: flex; | ||
width: 100%; | width: 100%; | ||
height: 60px; | height: 60px; | ||
overflow: hidden; | overflow: hidden; | ||
| Ligne 28 : | Ligne 28 : | ||
transform: translateY(0); | transform: translateY(0); | ||
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15); | box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15); | ||
} | |||
/* Header cliquable */ | |||
.home-header--clickable { | |||
cursor: pointer; | |||
} | |||
.home-header--clickable:hover { | |||
transform: translateY(-2px); | |||
} | |||
/* Lien wrapper pour header cliquable */ | |||
.home-header--clickable > a { | |||
display: flex; | |||
width: 100%; | |||
height: 100%; | |||
text-decoration: none; | |||
color: inherit; | |||
} | |||
.home-header__wrapper { | |||
display: flex; | |||
width: 100%; | |||
height: 100%; | |||
} | } | ||
| Ligne 48 : | Ligne 72 : | ||
display: flex; | display: flex; | ||
align-items: center; | align-items: center; | ||
gap: | gap: 16px; | ||
width: 100%; | width: 100%; | ||
padding: 0 24px; | padding: 0 24px; | ||
} | } | ||
| Ligne 67 : | Ligne 82 : | ||
.home-header__badge { | .home-header__badge { | ||
/* Style */ | /* Style */ | ||
display: inline-block; | |||
background: var(--color-progressive, #36c); | background: var(--color-progressive, #36c); | ||
color: #fff; | color: #fff; | ||
padding: | padding: 4px 10px; | ||
border-radius: | border-radius: 4px; | ||
flex-shrink: 0; | |||
/* Typography */ | /* Typography */ | ||
font-size: 0. | font-size: 0.7rem; | ||
font-weight: 600; | font-weight: 600; | ||
text-transform: uppercase; | text-transform: uppercase; | ||
letter-spacing: 0.5px; | letter-spacing: 0.5px; | ||
line-height: 1.2; | |||
} | } | ||
| Ligne 89 : | Ligne 101 : | ||
.skin-theme-clientpref-night .home-header__badge { | .skin-theme-clientpref-night .home-header__badge { | ||
background: var(--color-progressive, #4d90fe); | background: var(--color-progressive, #4d90fe); | ||
} | } | ||
| Ligne 97 : | Ligne 108 : | ||
.home-header__title { | .home-header__title { | ||
display: inline-block; | |||
margin: 0; | margin: 0; | ||
font-size: 1.1rem; | font-size: 1.1rem; | ||
| Ligne 102 : | Ligne 114 : | ||
line-height: 1.3; | line-height: 1.3; | ||
color: var(--color-emphasized, #000); | color: var(--color-emphasized, #000); | ||
flex-shrink: 0; | |||
} | } | ||
| Ligne 124 : | Ligne 127 : | ||
.home-header__subtitle { | .home-header__subtitle { | ||
display: inline-block; | |||
margin: 0; | margin: 0; | ||
font-size: 0.85rem; | font-size: 0.85rem; | ||
| Ligne 140 : | Ligne 144 : | ||
.home-header__text { | .home-header__text { | ||
display: inline-block; | |||
margin: 0; | margin: 0; | ||
font-size: 0.85rem; | font-size: 0.85rem; | ||
| Ligne 156 : | Ligne 161 : | ||
.home-header__link { | .home-header__link { | ||
display: inline-block; | |||
margin-left: auto; | margin-left: auto; | ||
font-size: 0.85rem; | font-size: 0.85rem; | ||
| Ligne 161 : | Ligne 167 : | ||
text-decoration: none; | text-decoration: none; | ||
transition: color 0.2s ease; | transition: color 0.2s ease; | ||
flex-shrink: 0; | |||
} | } | ||
.home- | .home-header--clickable:hover .home-header__link { | ||
color: var(--color-progressive-hover, #2a9); | color: var(--color-progressive-hover, #2a9); | ||
text-decoration: underline; | text-decoration: underline; | ||
| Ligne 173 : | Ligne 180 : | ||
} | } | ||
.skin-theme-clientpref-night .home- | .skin-theme-clientpref-night .home-header--clickable:hover .home-header__link { | ||
color: var(--color-progressive-hover, #3d8dfe); | color: var(--color-progressive-hover, #3d8dfe); | ||
} | } | ||
| Ligne 205 : | Ligne 212 : | ||
.home-header { | .home-header { | ||
height: 100px; | height: 100px; | ||
} | } | ||
.home-header__content { | .home-header__content { | ||
flex- | flex-wrap: wrap; | ||
gap: 8px; | |||
padding: 12px; | padding: 12px; | ||
} | } | ||
| Ligne 216 : | Ligne 222 : | ||
.home-header__title { | .home-header__title { | ||
font-size: 1rem; | font-size: 1rem; | ||
flex-basis: 100%; | |||
} | } | ||
| Ligne 226 : | Ligne 232 : | ||
.home-header__link { | .home-header__link { | ||
margin-left: 0; | margin-left: 0; | ||
flex-basis: 100%; | |||
align | text-align: right; | ||
} | } | ||
} | } | ||
Version du 1 novembre 2025 à 10:51
/* =============================================================================
HEADER COMPONENT
Composant d'en-tête stylisé pour affichage de contenu
Compatible dark/light mode avec Citizen skin
============================================================================= */
/* -----------------------------------------------------------------------------
STRUCTURE DE BASE
----------------------------------------------------------------------------- */
.home-header {
/* Layout */
display: flex;
width: 100%;
height: 60px;
overflow: hidden;
/* Style */
background: var(--color-surface-1);
border-radius: 0;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
/* Animation */
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.home-header:hover {
transform: translateY(0);
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}
/* Header cliquable */
.home-header--clickable {
cursor: pointer;
}
.home-header--clickable:hover {
transform: translateY(-2px);
}
/* Lien wrapper pour header cliquable */
.home-header--clickable > a {
display: flex;
width: 100%;
height: 100%;
text-decoration: none;
color: inherit;
}
.home-header__wrapper {
display: flex;
width: 100%;
height: 100%;
}
/* Dark mode - Header base */
.skin-theme-clientpref-night .home-header {
border-color: var(--border-color-subtle, rgba(255, 255, 255, 0.1));
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}
.skin-theme-clientpref-night .home-header:hover {
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.7);
}
/* -----------------------------------------------------------------------------
CONTENT - Zone de texte
----------------------------------------------------------------------------- */
.home-header__content {
/* Layout */
display: flex;
align-items: center;
gap: 16px;
width: 100%;
padding: 0 24px;
}
/* -----------------------------------------------------------------------------
BADGE - Badge d'information
----------------------------------------------------------------------------- */
.home-header__badge {
/* Style */
display: inline-block;
background: var(--color-progressive, #36c);
color: #fff;
padding: 4px 10px;
border-radius: 4px;
flex-shrink: 0;
/* Typography */
font-size: 0.7rem;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.5px;
line-height: 1.2;
}
/* Dark mode - Badge */
.skin-theme-clientpref-night .home-header__badge {
background: var(--color-progressive, #4d90fe);
}
/* -----------------------------------------------------------------------------
TITLE - Titre principal
----------------------------------------------------------------------------- */
.home-header__title {
display: inline-block;
margin: 0;
font-size: 1.1rem;
font-weight: 600;
line-height: 1.3;
color: var(--color-emphasized, #000);
flex-shrink: 0;
}
/* Dark mode - Title */
.skin-theme-clientpref-night .home-header__title {
color: var(--color-emphasized, #fff);
}
/* -----------------------------------------------------------------------------
SUBTITLE - Sous-titre
----------------------------------------------------------------------------- */
.home-header__subtitle {
display: inline-block;
margin: 0;
font-size: 0.85rem;
line-height: 1.5;
color: var(--color-subtle, #666);
}
/* Dark mode - Subtitle */
.skin-theme-clientpref-night .home-header__subtitle {
color: var(--color-subtle, #aaa);
}
/* -----------------------------------------------------------------------------
TEXT - Corps de texte
----------------------------------------------------------------------------- */
.home-header__text {
display: inline-block;
margin: 0;
font-size: 0.85rem;
line-height: 1.5;
color: var(--color-base, #202122);
}
/* Dark mode - Text */
.skin-theme-clientpref-night .home-header__text {
color: var(--color-base, #eee);
}
/* -----------------------------------------------------------------------------
LINK - Lien "En savoir plus"
----------------------------------------------------------------------------- */
.home-header__link {
display: inline-block;
margin-left: auto;
font-size: 0.85rem;
color: var(--color-progressive, #36c);
text-decoration: none;
transition: color 0.2s ease;
flex-shrink: 0;
}
.home-header--clickable:hover .home-header__link {
color: var(--color-progressive-hover, #2a9);
text-decoration: underline;
}
/* Dark mode - Link */
.skin-theme-clientpref-night .home-header__link {
color: var(--color-progressive, #4d90fe);
}
.skin-theme-clientpref-night .home-header--clickable:hover .home-header__link {
color: var(--color-progressive-hover, #3d8dfe);
}
/* =============================================================================
RESPONSIVE - Adaptation mobile
============================================================================= */
@media (max-width: 768px) {
.home-header {
height: 80px;
}
.home-header__content {
gap: 12px;
padding: 0 12px;
}
.home-header__title {
font-size: 1rem;
}
.home-header__subtitle,
.home-header__text,
.home-header__link {
font-size: 0.8rem;
}
}
@media (max-width: 480px) {
.home-header {
height: 100px;
}
.home-header__content {
flex-wrap: wrap;
gap: 8px;
padding: 12px;
}
.home-header__title {
font-size: 1rem;
flex-basis: 100%;
}
.home-header__subtitle,
.home-header__text {
display: none;
}
.home-header__link {
margin-left: 0;
flex-basis: 100%;
text-align: right;
}
}