Découvrir un framework CSS : Pico.CSS

Découverte d'un framewok Css : Pico

Un framework CSS permet dans un cadre éprouvé, et d’appliquer un certain nombre de règles prédéfinies associées à une sémantique html et un système de class structuré.

À la recherche d’un framework minimal

Dans le cadre de certains projets, visant la performance maximale, ou dans certains cadres particuliers on peut être amené à utiliser différents frameworks malgré le fait que l’un d’eux domine très largement. Il existe donc des frameworks très complets, mais forcément plus lourds, pour découvrir les frameworks notre choix s’est porté sur Picoss un framework minimal d’à peine 10kb.

https://picocss.com/

Installer / Utiliser Pico CSS


À télécharger et dézipper

https://github.com/picocss/pico/archive/refs/heads/master.zip

Code à intégrer dans le head du html (fichier en local)

<link rel="stylesheet" href="/css/pico.min.css">

Code à intégrer dans le head du html (avec un CDN)

<link rel="stylesheet" href="https://unpkg.com/@picocss/pico@1.*/css/pico.min.css">

Html complet pour commencer

        <!doctype html>
        <html lang="en">
        <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel="stylesheet" href="/css/pico.min.css">
        <link rel="stylesheet" href="https://unpkg.com/@picocss/pico@1.*/css/pico.min.css">
        <title>Premier essai avec Pico CSS</title> 
        </head>
        <body>
        <main class="container">
        <h1>Vous utilisez un framework CSS</h1>
        </main>
        </body>
        </html>
    
 

La responsivité avec Pico

Device Extra small Small Medium Large Extra large
Breakpoint <576px ≥576px ≥768px ≥992px ≥1200px
Viewport 100% 540px 720px 960px 1140px
 

Les thèmes

Pico est livré avec deux thèmes Light & Dark.

Les thèmes peuvent être forcés dès le document

<html data-theme="light">

ou sur un élément html spécifique

<article data-theme="dark"></article>
 

Les containers

Les conteneurs sont là pour encadrer le contenu dans le cadre du framework
.container active un conteneur centré .container-fluid active un affichage à 100% de la largeur

Code à intégrer

    ​​<body>
    <main class="container"></main>
    </body>
 

Les grilles

Pico contient un système de grille minimaliste et automatique

Code à intégrer

        <div class="grid">
            <div>1</div>
            <div>2</div>
            <div>3</div>
            <div>4</div>
            <div>5</div>
        </div>
    
 

Une grille en html / css : qu’est-ce que c’est ?

Une trame est simplement un ensemble de lignes horizontales et verticales créant un quadrillage dans lequel nous pouvons agencer les éléments à afficher. Elles nous aident à créer des compositions dans lesquelles les éléments ne sautent pas ou ne changent pas de largeur au fur et à mesure que nous nous déplaçons d'une page à l'autre, ce qui assure une plus grande cohérence des sites Web. La trame est constituée généralement de rangées (colonnes ou lignes). L'espace entre chaque ligne ou colonne est communément gouttière.

 

Typographie

Tous les éléments de typographie sont responsives automatiquement.

Device Extra small Small Medium Large Extra large
Base font 16px 17px 18px 19px 20px
<h1> 32px 34px 36px 38px 40px
<h2> 28px 29px 31.5px 33.25px 35px
<h3> 24px 25.5px 27px 28.5px 30px
<h4> 20px 21.25px 22.5px 23.75px 25px
<h5> 18px 19.125px 20.25px 21.375px 22.5px
<h6> 16px 17px 18px 19px 20px
<small> 14px 14.875px 15.75px 16.625px 17.5px

Code à intégrer

    <div class="headings">
    <h2>Titre 2</h2>
    <h3>Sous-titre de niveau 3</h3>
    </div>
 

Boutons & Forms

Tous les éléments sont pré-stylisés

Code html à intégrer

<button>Button</button> <input type="submit">

Lien HTML a

Code html à intégrer

    <a href="#" role="button">Lien inline</a>
    <a href="#" role="button">Lien inline</a>
    <a href="#" role="button" class="secondary">Couleur secondaire</a>
    <a href="#" role="button" class="contrast">Niveau de contraste</a>

Formulaire complet

Code html à intégrer

    <form>
    <!-- Grille automatique Pico CSS -->
    <div class="grid">
    <!-- Label du champs -->
    <label for="firstname">
    Prénom <input type="text" id="firstname" name="firstname" placeholder="First name" required>
    </label>
    <!-- Label du champs -->
    <label for="lastname">
    Nom <input type="text" id="lastname" name="lastname" placeholder="Last name" required>
    </label>
    </div>
    <label for="email">
    Courriel</label>
    <input type="email" id="email" name="email" placeholder="Adresse de courriel" required>
    <!-- Légende -->
    <small>
    Politique de confidentialité</small>
    <!-- Bouton -->
    <button type="submit">
    transmettre</button>
    </form>
    

Encore plus loin


Comprendre ce qu'est un CSS reset

Le reset CSS permet de réinitialiser à 0 la valeur de certains éléments HTML de base afin d'éviter les différences d'affichage sur les divers navigateurs du marché.

Plus de framework à tester

Minimalistes (pas de class CSS)

Ultra légers