recherche
Maisoninterface Webtutoriel CSSJump Start Sass: Architecture en SASS

Architecture SASS: une plongée profonde dans le développement modulaire CSS

Cet extrait de JUMP START SASS explore les complexités de l'architecture CSS et comment SASS améliore le processus. Nous examinerons diverses approches architecturales et meilleures pratiques pour construire des feuilles de style évolutives et maintenables.

Jump Start Sass: Architecture in Sass

L'architecture CSS a historiquement été un défi. SASS aborde cela avec des variables, des mixins et d'autres caractéristiques, mais l'approche optimale reste un point de discussion. Les méthodes populaires comprennent les OOCSS, les SMACS, la conception atomique, les ITCS et le BEM, chacun avec des forces et des faiblesses. La meilleure stratégie est souvent un hybride, combinant des éléments de plusieurs systèmes.

Concepts clés:

  • SASS AMHANDAND @import: Contrairement à CSS @import, la version de Sass combine plusieurs fichiers pendant la compilation, réduisant les demandes HTTP.
  • Architecture modulaire avec partiels: décomposer les CSS en unités logiques (partiels, indiqués par un préfixe de soulignement, comme _buttons.scss) organisé dans les dossiers. Ceux-ci sont ensuite importés dans un fichier principal de compilation.
  • CSS Méthodologies architecturales: Explorez les OOCSS, les SMACS, la conception atomique, les ITCS et BEM pour comprendre leurs principes et les adapter à votre projet.
  • Caractéristiques SASS: Variables, mixins et fonctions pour la cohérence, la lisibilité et la maintenabilité.
  • Considérations futures: Les importations modulaires de Sass 4 offrent un contrôle amélioré et une gestion des espaces de noms.
  • Structure de fichiers organisée: Catégrer les styles en dossiers comme base, components et utilities.

plusieurs fichiers et dossiers:

La division de votre code en plusieurs fichiers est un avantage essentiel des préprocesseurs. SASS permet une organisation granulaire. La règle @import consolide ces fichiers pendant la compilation dans un seul fichier CSS pour le navigateur.

CSS par rapport aux importations SASS:

CSS @import utilise la manipulation côté navigateur, encourant des demandes HTTP supplémentaires. SASS @import gère la compilation, résultant en un seul fichier de sortie. SASS retombe aux importations CSS standard pour les fichiers .css, http:// ou https:// URL, et url() fonctions.

Imports et partiels SASS:

Les importations SASS (.sass ou .scss) sont compilées dans le fichier principal. Les partiels (noms de fichiers commençant par _) ne sont pas compilés indépendamment mais sont importés dans d'autres fichiers. Les extensions peuvent être omises dans les importations pour la simplicité.

Exemple de structure de répertoire SASS:

<code>sass/
├── config/
│   ├── _colors.scss
│   └── _webfonts.scss
├── layout/
│   ├── _navigation.scss
│   └── _banner.scss
├── modules/
│   ├── _calendar.scss
│   └── _contact.scss
└── main.scss</code>

Composants et organisation:

Organisez des partiels dans des dossiers en fonction de la spécificité (par défaut globaux d'abord, puis des modèles, des composants et des remplacements à l'échelle du site). Importez-les dans un fichier maître (main.scss) dans le même ordre.

OOCSS (CSS orienté objet):

met l'accent sur les modèles de conception granulaires réutilisables dans divers contextes. Principes clés: structure et peau séparées, et conteneur et contenu séparés.

Conception atomique:

organise le CSS en atomes, molécules, organismes, modèles et pages. Fournit une approche structurée de la construction des composants.

bem (bloc, élément, modificateur):

utilise une convention de dénomination (block__element--modifier) pour créer des blocs réutilisables et indépendants. Fournit un système complet englobant CSS, HTML et JavaScript.

SMACSS (architecture évolutive et modulaire pour CSS):

catégorise CSS en base, mise en page, module, état et thème. Se concentre sur la profondeur de l'applicabilité et le maintien des composants petits et indépendants.

ITCSS (triangle inversé CSS):

organise CSS en fonction de la portée, de la spécificité et de l'explicitation, visualisée comme un triangle inversé. Les couches incluent les paramètres, les outils, les génériques, les éléments, les objets, les composants et les atouts.

MIRIAM'S MIX-N-MATCH:

Une approche flexible combinant des éléments de divers systèmes, priorisant la cascade CSS et utilisant un "système nerveux central SASS" pour la configuration et les outils réutilisables.

importations modulaires dans Sass 4:

Cette fonctionnalité à venir améliore le contrôle et la gestion des espaces de noms, en abordant les conflits mondiaux d'espace de noms. @use permet d'importer des parties spécifiques de modules et de les faire passer. @forward facilite le passage des API entre les modules.

Conclusion:

Choisir la bonne architecture SASS dépend des besoins du projet et des préférences d'équipe. Une approche hybride, incorporant les meilleures pratiques de divers systèmes, est souvent la solution la plus efficace. Les importations modulaires de SASS 4 promettent de nouvelles améliorations de la modularité et de la maintenabilité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Demystifier les lecteurs d'écran: formulaires accessibles et meilleures pratiquesDemystifier les lecteurs d'écran: formulaires accessibles et meilleures pratiquesMar 08, 2025 am 09:45 AM

Ceci est le 3ème article d'une petite série que nous avons faite sur l'accessibilité. Si vous avez manqué le deuxième article, consultez "Gestion de la mise au point des utilisateurs avec: Focus-visible". Dans

Ajout d'ombres de boîte aux blocs et éléments WordPressAjout d'ombres de boîte aux blocs et éléments WordPressMar 09, 2025 pm 12:53 PM

Le CSS Box-Shadow et les propriétés de contour ont gagné le thème. Laissez regarder quelques exemples de la façon dont cela fonctionne dans des thèmes réels et des options que nous devons appliquer ces styles aux blocs et éléments WordPress.

Créez un formulaire de contact JavaScript avec le cadre Smart FormsCréez un formulaire de contact JavaScript avec le cadre Smart FormsMar 07, 2025 am 11:33 AM

Ce tutoriel montre la création de formulaires JavaScript professionnels à l'aide du cadre Smart Forms (Remarque: non plus disponible). Bien que le cadre lui-même ne soit pas disponible, les principes et techniques restent pertinents pour d'autres constructeurs de formulaires.

Comparaison des 5 meilleurs constructeurs de formulaires PHP (et 3 scripts libres)Comparaison des 5 meilleurs constructeurs de formulaires PHP (et 3 scripts libres)Mar 04, 2025 am 10:22 AM

Cet article explore les meilleurs scripts de générateur de formulaires PHP disponibles sur le marché Envato, en comparant leurs fonctionnalités, leur flexibilité et leurs design. Avant de plonger dans des options spécifiques, comprenons ce qu'est un constructeur de formulaires PHP et pourquoi vous en utiliseriez un. Un formulaire PHP

Travailler avec GraphQL CachingTravailler avec GraphQL CachingMar 19, 2025 am 09:36 AM

Si vous avez récemment commencé à travailler avec GraphQL ou examiné ses avantages et ses inconvénients, vous avez sans aucun doute entendu des choses comme "GraphQL ne prend pas en charge la mise en cache" ou

Faire votre première transition Svelte personnaliséeFaire votre première transition Svelte personnaliséeMar 15, 2025 am 11:08 AM

L'API de transition Svelte fournit un moyen d'animer les composants lorsqu'ils entrent ou quittent le document, y compris les transitions Svelte personnalisées.

Show, ne dit pasShow, ne dit pasMar 16, 2025 am 11:49 AM

Combien de temps passez-vous à concevoir la présentation de contenu pour vos sites Web? Lorsque vous écrivez un nouveau blog ou créez une nouvelle page, pensez-vous à

Barbars CSS personnalisés chics et cool: une vitrineBarbars CSS personnalisés chics et cool: une vitrineMar 10, 2025 am 11:37 AM

Dans cet article, nous plongerons dans le monde des barres de défilement. Je sais, ça ne semble pas trop glamour, mais croyez-moi, une page bien conçue va de pair

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌

Outils chauds

PhpStorm version Mac

PhpStorm version Mac

Le dernier (2018.2.1) outil de développement intégré PHP professionnel

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

DVWA

DVWA

Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL très vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web à mieux comprendre le processus de sécurisation des applications Web et d'aider les enseignants/étudiants à enseigner/apprendre dans un environnement de classe. Application Web sécurité. L'objectif de DVWA est de mettre en pratique certaines des vulnérabilités Web les plus courantes via une interface simple et directe, avec différents degrés de difficulté. Veuillez noter que ce logiciel

mPDF

mPDF

mPDF est une bibliothèque PHP qui peut générer des fichiers PDF à partir de HTML encodé en UTF-8. L'auteur original, Ian Back, a écrit mPDF pour générer des fichiers PDF « à la volée » depuis son site Web et gérer différentes langues. Il est plus lent et produit des fichiers plus volumineux lors de l'utilisation de polices Unicode que les scripts originaux comme HTML2FPDF, mais prend en charge les styles CSS, etc. et présente de nombreuses améliorations. Prend en charge presque toutes les langues, y compris RTL (arabe et hébreu) ​​et CJK (chinois, japonais et coréen). Prend en charge les éléments imbriqués au niveau du bloc (tels que P, DIV),