Signes
Le tiret, le carré allumé, le surlignage, la flèche qui sort, le trait d’attache.
Le tiret pointillé
Un trait de 4 px, un vide de 4 px, sur 1 px d’épaisseur. C’est lui qui dessine le plan : il délimite, et il ne ferme jamais rien.
- Emploi
- Les rails, la ligne de section, les cellules, le formulaire, le bas de l’en-tête, le haut du pied, et toutes les lignes de ces pages.
- Moment
- Partout où deux zones se touchent. Il remplace la bordure pleine, l’ombre et l’arrondi, qui n’existent pas sur la trame.
- Jamais
- En bordure pleine, en cadre fermé autour d’un bloc de texte, en double épaisseur. La seule bordure pleine est celle de la carte de citation et de l’annotation.
| Classe | Zone | Valeur |
|---|---|---|
| --th | le trait horizontal | repeating-linear-gradient(90deg, var(--trait) 0 4px, transparent 4px 8px) : 4 px de trait, 4 px de vide, 1 px de haut |
| --tv | le trait vertical | la même chose à 180deg, 1 px de large |
| --trait | sa couleur | var(--line) : sur la trame, le vert Grinn #98D1CB depuis le 12 octobre (les verts en relief) ; #D6D3D1, gris chaud, ailleurs |
| .tr-in, .tr-sec, .tr-grille, .tr-cel, .tr-form, .tr-hdr, .tr-pied | où il passe | les rails, la ligne de section, le haut d’une grille, le bas et la droite d’une cellule, les quatre côtés du formulaire, le bas de l’en-tête, le haut du pied |
| .sys-rub, .sys-tab, .sys-emploi, .sys-regle | dans ces pages | le haut d’une rubrique, les lignes d’un tableau, les trois colonnes d’Emploi, la règle |
5 ans, à Nantes et à Paris
Autour de quinze personnes
Un mois de suivi offert après la mise en ligne
Le carré allumé
La cellule de la trame qui s’éclaire. Petit devant un fait, grand dans la cellule allumée, à 48 px dans les bandes.
- Emploi
- Devant un fait (.tr-carre), dans la cellule qui finit une grille (CelluleAllumee), dans les bandes entre deux sections (Bande), devant un élément de liste dans la prose.
- Moment
- Quand une case de la grille serait vide, ou quand une liste a besoin d’un repère. Il s’allume à l’arrivée, puis respire.
- Jamais
- En puce de texte courant hors prose, en icône, en bouton. Sous 600 px, la cellule allumée d’une grille disparaît.
| Classe | Zone | Valeur |
|---|---|---|
| .tr-carre | devant un fait | 10 × 10 px, inline-block, fond --grinn, ne rétrécit pas ; dans .tr-faits, le premier en vert moyen (#60B8AF), le deuxième en --grinn-deep |
| .tr-carre--grand | défini, inemployé | 14 × 14 px, en bloc, 16 px dessous ; aucun composant ne l’appelle |
| .tr-cel--allume i | la cellule allumée | cinq carrés de 16 % de la cellule, posés à des places fixes ; le premier, le troisième et le cinquième en --grinn-deep ; la cellule fait 120 px au moins |
| .tr-bande i | les bandes | cellules de 47 px de haut sur la grille de 48, en vert, vert moyen, vert profond, ou en dégradé du vert moyen au vert clair |
| .tr-prose ul li::marker | les listes | ■ en --grinn, à 0,7 em |
- 5 ans, à Nantes et à Paris
- Autour de quinze personnes
- Un mois de suivi offert après la mise en ligne
-
Une seule personne à appeler
Votre chef de projet vous suit du premier échange au suivi. Vous n’avez rien à coordonner.
-
Un délai annoncé d’avance, et tenu
Vous connaissez le délai de mise en ligne avant qu’on commence. Vous pouvez caler votre lancement ou votre saison dessus.
-
Un devis écrit, et pas de facture surprise
Le devis dit ce qui est compris et ce qui ne l’est pas. Si le projet change en route, on chiffre l’écart avant de s’y mettre.
Le surlignage
Un passage du titre est posé sur le vert ; le surlignage s’étend quand le titre apparaît. Le fond couvre le mot seul, sans l’espace avant ni l’espace après, et suit le titre s’il passe à la ligne. Au plus un passage par titre.
- Emploi
- Le mot du titre qui porte le gain : « grandir », « sous le même toit », « compter », « dès la première ligne », « mise en ligne ».
- Moment
- Sur le h2 d’une tête de section, par la prop surligne de Tete ; sur le h1 d’une page intérieure seulement si la page a une raison.
- Jamais
- Deux passages dans un titre, un titre entier, du corps de texte, un bouton. Ni l’espace avant ou après le mot : le fond s’arrête à ses lettres. Ni hors d’un h1 ou d’un h2 sans isoler le parent : le fond passerait sous la cellule.
| Classe | Zone | Valeur |
|---|---|---|
| .tr-surligne | le passage surligné | en ligne (display: inline) ; fond --grinn ; padding 0,02 em en haut et en bas, 0 sur les côtés ; margin 0 : le fond couvre le mot seul, ni l’espace avant ni l’espace après (JB, 12 octobre) |
| box-decoration-break: clone | sur deux lignes | le passage peut passer à la ligne avec le titre : chaque morceau garde son fond, au lieu de déborder de sa colonne |
| .tr-surligne (animé) | quand le titre apparaît | background-size de 0 % à 100 %, 760 ms, après 320 ms, courbe --ease ; sur deux lignes, chaque morceau s’étend en même temps ; sans script, plein d’emblée |
| .tr :is(h1, h2) .tr-surligne | sous la ligne du dessus | position relative, z-index -1, dans un h1 ou un h2 de la trame isolé (isolation: isolate) : le fond passe sous les lettres de la ligne du dessus et ne mord plus les jambages ; hors d’un h1 ou d’un h2, le parent doit être isolé de même, sinon le fond passe sous celui de la cellule et le passage disparaît |
| Tete, EnTetePage | qui le pose | la prop surligne, avec le passage tel qu’il figure dans le titre, sans espace au bord ; un seul passage ; le titre de l’IA, sur l’accueil, le pose à la main |
Pour lancer, puis pour grandir.
Les grinners, sous le même toit.
<Tete variante="cellule" etiquette={ V3.offres.surtitre } titre={ V3.offres.titre } surligne={ V3.offres.surligne } sousTitre={ V3.offres.sousTitre } id="tr-offres" /> La flèche qui sort
Un ↗ après le libellé de tout bouton et de tout lien de carte : l’action mène quelque part. Au survol, la flèche part de 3 px vers le haut et la droite.
- Emploi
- Tout bouton (Bouton, le bouton du formulaire, celui de l’en-tête), le nom d’un cas qui a sa page, les cases du sommaire, le lien vers le groupe.
- Moment
- Chaque fois qu’on quitte l’endroit où on est : une autre page, un autre site, l’envoi du formulaire.
- Jamais
- Sur un lien dans le texte courant, sur un maillon du fil d’Ariane, sur le rail, deux fois dans le même bouton.
| Classe | Zone | Valeur |
|---|---|---|
| .ar | le signe | ↗, aria-hidden, à droite du libellé |
| .btn .ar | tout bouton | gap 12 px (10 px hors trame) ; transition transform --mid (380 ms) ; translate(3px, -3px) au survol du bouton |
| .tr-cas__it .ar | la carte de réalisation | après le nom du client quand le cas a sa page ; même mouvement au survol de la carte |
| .sys-sommaire__titre .ar | le sommaire de ces pages | même mouvement au survol de la case |
| .lk .ar | le pied | après hepixgroup.com ; le lien sort du site |
<Bouton href="/contact/">{ V3.cta }</Bouton>
<Bouton href="/offres/" variante="trait">{ V3.ouverture.boutonOffres }</Bouton>
<Bouton href="/offres/site-internet/" variante="trait" petit>{ V3.offres.bouton }</Bouton> Le trait d’attache
Une annotation touche ce qu’elle nomme : un trait de 1 px part de son bord et se trace quand elle apparaît. Sur le premier écran de l’accueil, depuis le 12 octobre, chaque offre touche de même l’objet qu’elle nomme dans la scène : un trait pointillé, en ligne droite, de sa case à l’objet, qui s’allume avec elle.
- Emploi
- Sous (ou sur) chaque annotation d’une scène : 16 px, ou, ancrée sur une illustration v2, la longueur qui atteint l’objet ; et, sur l’accueil, entre chaque offre de la démonstration et l’objet qu’elle nomme dans la scène.
- Moment
- Dès qu’une annotation est posée sur une scène, en pourcentage ou ancrée sur un objet : le trait part du haut, ou du bas avec haut. Dans la démonstration, dès 1000 px, quand les offres entourent la scène.
- Jamais
- Sans annotation ni offre, entre deux blocs de texte, en flèche. Sous 700 px, l’annotation et son trait disparaissent ; sous 1000 px, les traits de la démonstration aussi.
| Classe | Zone | Valeur |
|---|---|---|
| .tr-puce::after | le trait d’attache | 1 px × 16 px, fond --grinn-deep (les verts en relief, 12 octobre ; --ink-3 avant), à 12 px du bord gauche, part du haut de l’annotation (bottom: 100%) |
| .tr-puce--haut::after | l’annotation accrochée par le bas | le trait part du bas (top: 100%) |
| .tr-puce--trait::after, .tr-puce--ancre::after | un trait plus long | height var(--trait), posée par la prop trait de Puce ; ancrée sur une illustration v2, max(8px, la longueur écrite dans trame/annotations.ts × l’échelle du dessin), pour que le bout du trait touche l’objet à toutes les largeurs |
| .tr-puce--ancre | l’annotation ancrée | --x et --y sont le bout du trait, sur l’objet, en cqw / cqh de la boîte du dessin (un conteneur de taille) ; l’annotation se range au bout du trait, dessous, ou dessus avec haut ; droite la fait s’étendre à gauche du trait |
| .tr-une__dessin .tr-puce:nth-of-type(2)::after | la deuxième annotation de la variante « cote » du Hero | 48 px, pour atteindre ce qu’elle nomme ; aucune page n’emploie plus cette variante depuis le 12 octobre |
| .tr-puce--doc | retiré le 13 octobre | ancrée à droite dans l’ancienne scène IA, trait à droite, 36 px ; jamais appelée, partie avec elle (les annotations du schéma v2 sont ancrées) |
| .tr-puce[data-reveal]::after (animé) | quand l’annotation apparaît | scaleY de 0 à 1, 480 ms, après 380 ms, depuis le point d’attache |
| .tr-demo__trait | le trait de la démonstration (accueil) | tracé par trame.ts (partie 10) dans un svg posé sur la démonstration : une ligne droite du bord de la case tourné vers la scène, à mi-hauteur, jusqu’à l’objet nommé ; 1 px, tirets de 4 px tous les 8, vert moyen (#60B8AF) à 75 % |
| .tr-demo__port, .tr-demo__cible | ses deux bouts | un carré de 7 px à chaque bout : côté case, blanc bordé de vert moyen ; côté scène, plein, en vert moyen |
| .tr-demo__halo | sur l’objet nommé (anciennes scènes) | un disque de 26 px de rayon, --grinn, en multiply : éteint (opacité 0, réduit à .4), il monte à .45 et à sa taille quand l’offre s’allume ; plus tracé sur une illustration v2, où il tachait le schéma au trait : la scène hero n’en a plus |
| .tr-demo__voisins, .tr-demo__flux | l’anneau de la scène hero (accueil) | chaque objet relié à ses deux voisins : 1,5 px, tirets de 4 px tous les 8, vert ; un carré vert profond de 6 px circule sur chaque côté ; à toutes les largeurs |
| .tr-demo__lien.is-allumee | quand l’offre s’allume | le trait et ses deux carrés passent au vert profond ; les tirets courent de l’offre vers l’objet (stroke-dashoffset de 0 à -16 en 0,9 s, sans fin) ; au tour, au survol, au focus |
| sous 1000 px | sans trait | les offres passent sous la scène : le script ne trace que l’anneau, les traits sont masqués |
<Puce x="2%" y="84%" n={0}>Hébergement</Puce>
<Puce x="4%" y="10%" haut vert n={1}>Sécurité</Puce> Le point et le chevron
Deux signes de ces pages et des pages intérieures : le point final vert profond des titres du design system, et le chevron qui sépare les maillons du fil d’Ariane.
| Classe | Zone | Valeur |
|---|---|---|
| .sys-point | le point final | couleur --grinn-deep, aria-hidden ; posé par Design.astro sur le h1 et par Rubrique sur chaque h2 de ces pages |
| .tr-fil li + li::before | le chevron | content "›", 10 px à sa droite, dans l’encre troisième du fil ; les maillons espacés de 6 px / 10 px |
| .tr-fil a | un maillon | encre seconde, souligné en --line ; au survol, encre et soulignement vert profond |
| .tr-fil [aria-current] | la page | vert profond, sans lien |
Le point final
<FilAriane chemin={[{ href: '/offres/', libelle: 'Offres' }, { href: '/offres/site-internet/', libelle: 'Site internet' }]} /> RègleChaque signe a un sens : le tiret délimite, le carré allume, le surlignage désigne, la flèche sort, le trait attache. Aucun ne décore.