PageTree démo by

Développeurs

Styles des blocs

Les blocs intégrés ont une feuille de style légère, conçue pour être surchargée par votre thème sans effort.

Comment les styles sont chargés

Chaque bloc intégré charge, avec son HTML, une feuille de style commune (base.css) et sa propre feuille, situées dans plugins/lucaspalomba/pagetree/assets/css/blocks/. Sur le site, chaque fichier n’est inclus qu’une fois par page. Ces styles fonctionnent donc avec n’importe quel layout, dans l’aperçu comme sur le site.

Une spécificité nulle avec :where()

Toutes les règles sont écrites dans :where(). Leur spécificité est nulle : n’importe quelle règle de votre thème, même un simple sélecteur de classe, l’emporte.

/* Dans PageTree */
:where(.ptb-btn) { border-radius: var(--ptb-radius); }

/* Dans votre thème : gagne sans !important */
.ptb-btn { border-radius: 0; }

Les variables --ptb-*

Les couleurs et les tailles viennent de propriétés personnalisées CSS. Redéfinissez-les dans votre thème pour adapter tous les blocs d’un coup :

:root {
    --ptb-primary: #0f766e;        /* boutons, fonds « Couleur principale » */
    --ptb-primary-contrast: #fff;
    --ptb-secondary: #475569;
    --ptb-light: #f3f4f6;          /* fonds clairs */
    --ptb-dark: #1f2937;           /* fonds sombres */
    --ptb-radius: 0.5rem;
    --ptb-gap: 1.5rem;
    --ptb-space-s: 1rem;           /* espacements Petite / Moyenne / Grande / Très grande */
    --ptb-space-m: 2rem;
    --ptb-space-l: 4rem;
    --ptb-space-xl: 6rem;
    --ptb-container: 1200px;       /* largeur d’une section « Centrée » */
}

Liste complète des variables et valeurs par défaut :

VariableDéfautUsage
--ptb-primary#2563ebCouleur principale (boutons, fonds)
--ptb-primary-contrast#ffffffTexte sur la couleur principale
--ptb-secondary#475569Couleur secondaire
--ptb-secondary-contrast#ffffffTexte sur la couleur secondaire
--ptb-light#f3f4f6Fond « Clair »
--ptb-light-contrastinheritTexte sur fond clair
--ptb-dark#1f2937Fond « Sombre »
--ptb-dark-contrast#ffffffTexte sur fond sombre
--ptb-borderrgba(0, 0, 0, 0.12)Bordures
--ptb-mutedrgba(0, 0, 0, 0.6)Textes secondaires
--ptb-radius0.5remArrondi des angles
--ptb-gap1.5remEspace entre éléments
--ptb-space-s à --ptb-space-xl1rem, 2rem, 4rem, 6remTailles d’espacement
--ptb-container1200pxLargeur d’une section « Centrée »

La galerie utilise en plus --ptb-gallery-columns et --ptb-gallery-gap.

Les classes ptb-*

Le HTML des blocs utilise des classes préfixées ptb-, au format bloc / élément / modificateur. Vous pouvez les cibler directement :

ClasseÉlément
.ptbEnveloppe commune des blocs
.ptb-btn, .ptb-btn--primary, .ptb-btn--secondary, .ptb-btn--outline, .ptb-btn--linkBoutons et leurs styles
.ptb-btn--s, .ptb-btn--m, .ptb-btn--lTailles de bouton
.ptb-theme--light, .ptb-theme--dark, .ptb-theme--primaryFonds colorés
.ptb-align--left, --center, --rightAlignement du texte
.ptb-section, .ptb-section__inner, .ptb-section__grid, .ptb-section__cellSection et ses colonnes
.ptb-hero, .ptb-hero__title, .ptb-hero__subtitleBannière
.ptb-card, .ptb-cardsCartes
.ptb-gallery, .ptb-lightboxGalerie et agrandissement
.ptb-accordion__item, .ptb-accordion__questionQuestions / réponses

Chaque bloc a ses propres classes (.ptb-quote, .ptb-files__list, .ptb-mediatext, .ptb-video…). Pour la liste exacte, consultez les fichiers de assets/css/blocks/ du plugin.

Les boutons sont des liens. Une règle de votre thème comme a { color: … } l’emporte sur les styles des blocs, qui n’ont aucune spécificité : le texte d’un bouton peut alors prendre la couleur de vos liens. Donnez à .ptb-btn--primary et aux autres styles leurs propres couleurs dans le thème.

.ptb-btn--primary,
.ptb-btn--primary:hover {
    color: var(--ptb-primary-contrast);
}

Exemple : aligner les blocs sur la charte

:root {
    --ptb-primary: #b91c1c;
    --ptb-radius: 0;
    --ptb-container: 1080px;
}

.ptb-hero__title {
    font-family: var(--font-display);
    letter-spacing: -0.02em;
}