Maison interface Web tutoriel CSS Ruby on Rails Front-end Rapide avec Frameworks CSS Classless ou Class-Light en utilisant CDN

Ruby on Rails Front-end Rapide avec Frameworks CSS Classless ou Class-Light en utilisant CDN

Jan 04, 2025 pm 04:40 PM

Ruby on Rails  Front-end Rápido com Frameworks CSS Classless ou Class-Light Usando CDN

Si vous commencez à développer pour le Web et que votre objectif n'est pas de vous spécialiser dans le front-end, l'un des obstacles les plus douloureux est de pouvoir facilement styliser votre HTML moche.

Pour ceux qui ont le premier contact, c'est quelque chose d'énigmatique, de mystique, de surnaturel d'essayer de comprendre le HTML qui a une séquence de lettres et de chiffres avec des classes utilitaires prédéfinies pour appliquer des styles au HTML, par exemple :

<summary
class="flex cursor-pointer items-center justify-between rounded-lg px-4 py-2 text-gray-500 hover:bg-gray-100 hover:text-gray-700"
>
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

Les frameworks CSS qui utilisent des classes utilitaires sont excellents, polyvalents, réactifs, élégants et possèdent de nombreuses autres qualités, mais Tailwind CSS n'est pas la seule solution. Si vous avez besoin de quelque chose de rapide et de plus simple, utiliser un framework CSS sans classe ou léger en classe sera une meilleure solution.

Les frameworks CSS sans classes stylisent les éléments HTML directement, sans classes. Les frameworks Class-light combinent des styles automatiques avec certaines classes utilitaires facultatives pour la personnalisation, ce qui ajoute une plus grande polyvalence à leur utilisation.

En utilisant une approche sans classe ou légère, vous pouvez rapidement résoudre le style HTML avec une, deux ou trois lignes.

Nous verrons ci-dessous :

  • Utilisation du framework Ruby on Rails en version 8, avec Prop Shaft et Importmap ;
  • Apprendre à connaître le fichier avec la mise en page standard des pages HTML ;
  • Création et ajout de contenu à 4 pages HTML pour tester le style avec CSS ;
  • Une brève mention des itinéraires créés pour les pages;
  • Modifiez la mise en page par défaut pour inclure le lien vers les pages créées ;
  • Ajoutez 12 frameworks CSS via CDN à la mise en page par défaut ;
  • Savoir identifier si les frameworks CSS ont les modes clair et sombre configurés par défaut ;
  • Suggestions pour les prochaines étapes ;

Démarrer une nouvelle application Rails

  • Le temps avant la commande rails est utilisé pour afficher son temps d'exécution à la fin de l'exécution de la commande. Dans l'exemple ci-dessous, cela a pris 47 secondes.
$ rails -v
Rails 8.0.0

$ time rails new classless-css-cdn --skip-test
...
real    0m47.500s
user    0m33.052s
sys     0m4.249s
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion

Rails 8, dans sa philosophie No Build, utilisera par défaut Prop Shaft comme bibliothèque de pipeline d'actifs et Importmap comme bibliothèque JavaScript. Nous vous demandons d'ignorer la bibliothèque de test avec --skip-test.
Si nécessaire, vous pouvez traiter votre JavaScript à l'aide d'esbuild en passant le paramètre --javascript esbuild. Importmap n'effectue aucune construction ni aucun type de traitement sur JavaScript.

Ouvrez le projet avec VSCode ou votre éditeur préféré

$ cd classless-css-cdn && code .
Copier après la connexion
Copier après la connexion
Copier après la connexion

 

Connaître la mise en page Rails par défaut app/views/layouts/application.html.erb.

Afficher plus…
  • Par convention sur la configuration (CoC), Rails utilise application.html.erb comme mise en page par défaut pour afficher toutes les pages ;
  • Le fichier original dans Rails 8 doit avoir un contenu identique ou similaire à celui copié ci-dessous :
<summary
class="flex cursor-pointer items-center justify-between rounded-lg px-4 py-2 text-gray-500 hover:bg-gray-100 hover:text-gray-700"
>
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
  • La partie supérieure de la ils possèdent les éléments structurels importants pour que la page soit rendue et fonctionne correctement. La balise head est utilisée pour inclure des métadonnées et des ressources importantes qui aident à configurer le comportement de la page (avec javascript), son apparence (avec CSS), sa relation avec d'autres systèmes et services et les paramètres de sécurité tels que la protection contre CSRF et CSP ;
  • Le contenu principal des pages sera rendu dans , via la balise ERB <%= rendement %>. Cette balise sert de point d'intégration pour inclure le contenu d'une vue rendue dynamiquement par Rails ;

 

Générer des pages de test, avec un contrôleur de pages et les actions html_test_1, html_test_2, html_test_3 et html_test_4

Afficher plus…
$ rails -v
Rails 8.0.0

$ time rails new classless-css-cdn --skip-test
...
real    0m47.500s
user    0m33.052s
sys     0m4.249s
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
  • Comme lors de la création du contrôleur et des actions ci-dessus, les itinéraires ont également été ajoutés, permettant d'accéder à n'importe quelle action créée à partir des liens
    • localhost:3000/pages/html_test_1
    • localhost:3000/pages/html_test_2
    • localhost:3000/pages/html_test_3
    • localhost:3000/pages/html_test_4

 

Ouvrez le fichier config/routes.rb dans VSCode

  • Incluez la ligne ci-dessous à la fin du fichier pour diriger la racine de la page vers les pages du contrôleur précédemment créées et l'action html_test_1. Ainsi, la première page à afficher lors de l'accès à votre site Web ou système sera la page html_test_1, issue des pages du contrôleur. Sinon, il afficherait la page des rails par défaut.
$ cd classless-css-cdn && code .
Copier après la connexion
Copier après la connexion
Copier après la connexion
  • Vous auriez pu ignorer l'ajout des routes aux actions créées si vous aviez passé le paramètre --skip-routes lors de la création du contrôleur. La commande complète deviendrait les pages du contrôleur Rails G html_test_1 html_test_2 html_test_3 html_test_4 --skip-routes

 

Affichage des itinéraires Rails

Afficher plus…

A l'aide du terminal vous pouvez afficher les routes en spécifiant un contrôleur (avec -c), par exemple depuis les pages du contrôleur

<!DOCTYPE html>
<html>
  <head>
    <title><%= content_for(:title) || "Classless Css" %></title>
    <meta name="viewport" content="width=device-width,initial-scale=1">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="mobile-web-app-capable" content="yes">
    <%= csrf_meta_tags %>
    <%= csp_meta_tag %>

    <%= yield :head %>

    <%# Enable PWA manifest for installable apps (make sure to enable in config/routes.rb too!) %>
    <%#= tag.link rel: "manifest", href: pwa_manifest_path(format: :json) %>

    <link rel="icon" href="/icon.png" type="image/png">
    <link rel="icon" href="/icon.svg" type="image/svg+xml">
    <link rel="apple-touch-icon" href="/icon.png">

    <%# Includes all stylesheet files in app/assets/stylesheets %>
    <%= stylesheet_link_tag :app, "data-turbo-track": "reload" %>
    <%= javascript_importmap_tags %>
  </head>

  <body>
    <%= yield %>
  </body>
</html>

Copier après la connexion

Ou vous pouvez afficher tous les itinéraires avec

<summary
class="flex cursor-pointer items-center justify-between rounded-lg px-4 py-2 text-gray-500 hover:bg-gray-100 hover:text-gray-700"
>
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
  • Il est également possible d'accéder aux itinéraires via le navigateur en utilisant l'adresse http://127.0.0.1:3000/rails/info/routes. N'oubliez pas de démarrer le serveur de développement avec bin/dev ou le serveur rails standard avec le serveur rails depuis le répertoire racine de votre projet. Le serveur de développement « écoute » les modifications des fichiers javascript et des fichiers css pour effectuer les traitements nécessaires pour les mettre à disposition des utilisateurs.
  • Pour que les modifications de ces fichiers soient apportées et visualisées instantanément dans le navigateur, il est nécessaire d'installer une gemme comme Rails Livre Reload.

Créons quatre pages avec du contenu HTML pour tester les styles CSS.

Ruby on Rails utilise l'architecture MVC (Model-View-Controller) par défaut pour commencer à organiser votre projet. Une grande partie de votre code est organisée dans les dossiers suivants :

  • Lorsque le code est lié à la logique et aux données du domaine/métier, conservez-le dans le dossier app/models ;
  • Le code lié à la vue (HTML, JSON, XML, etc...) sera dans app/views ;
  • Le code lié au cycle de vie de la requête sera dans app/controllers ;

 

Insérer le contenu de la page html_test_1

Afficher plus…
  • Accédez au lien https://github.com/dbohdan/classless-css/blob/master/screenshot-page.html et copiez tout le contenu de la balise principale, comme indiqué ci-dessous
$ rails -v
Rails 8.0.0

$ time rails new classless-css-cdn --skip-test
...
real    0m47.500s
user    0m33.052s
sys     0m4.249s
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion


Démarrez le serveur Rails et voyez le vilain HTML simple ?

Afficher plus…
  • Démarrez le serveur de développement Rails avec bin/dev ou le serveur standard avec le serveur Rails et ouvrez le navigateur à 127.0.0.1:3000
$ cd classless-css-cdn && code .
Copier après la connexion
Copier après la connexion
Copier après la connexion
  • Après avoir ouvert la page, vous verrez en haut les quatre liens que nous avons ajoutés aux pages html_test_1, html_test_2, html_test_3 et html_test_4 que nous avons créées précédemment.
  • Tant de travail jusqu'à présent. Ouvrez chacun d'eux et vous remarquerez que le HTML n'a pas encore été stylisé avec du CSS, ce que nous ferons ensuite.


Rouvrez la page app/views/layouts/application.html.erb pour inclure les styles CSS sans classe via CDN

Afficher plus…
  • Après le contenu ci-dessous
<summary
class="flex cursor-pointer items-center justify-between rounded-lg px-4 py-2 text-gray-500 hover:bg-gray-100 hover:text-gray-700"
>
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
  • Et avant , collez le contenu suivant. Vous n'avez pas besoin de tous ces styles, ils ont été insérés pour que vous puissiez tester différentes options.
$ rails -v
Rails 8.0.0

$ time rails new classless-css-cdn --skip-test
...
real    0m47.500s
user    0m33.052s
sys     0m4.249s
Copier après la connexion
Copier après la connexion
Copier après la connexion
Copier après la connexion
  • La plupart des styles sont commentés, à l'exception de Normalize CSS et Pico CSS
  • Enregistrez le fichier et actualisez la page ou redémarrez le serveur
  • Pour tester un style autre que Pico CSS, commentez la ligne qui configure le CDN du style, en l'occurrence la ligne et décommentez la ligne d'un autre style, par exemple, la ligne Simple CSS.
  • Pour commenter et décommenter une ligne avec VSCode, utilisez la combinaison de touches Ctrl K C.


Maintenant oui, du HTML élégant ?

Après avoir enregistré les feuilles de style ci-dessus et démarré le serveur Rails, vous verrez votre HTML stylisé avec les frameworks CSS choisis.

Mode sombre

Certains styles ont l'option du mode sombre. Pour confirmer, changez le thème de votre ordinateur dans les options de personnalisation des couleurs. Recherchez dans Windows Activer le mode sombre pour les applications et basculez entre le mode sombre ou clair et la page HTML change automatiquement après le changement de système d'exploitation al.

Prochaines étapes

  • Organisez les styles selon vos préférences ;
  • Si vous souhaitez passer un peu plus de temps sur le frontend, consultez les options de personnalisation de votre style préféré ;
  • Mettre à jour dynamiquement les modifications apportées au projet dans le navigateur à l'aide de Rails Live Reload ;
  • Utiliser le style des fichiers CSS du projet, sans utiliser CDN ;
  • Répliquer la capacité du framework CSS sans classe à l'aide de Tailwind ;

Références

  • https://dev.to/leonardorafael/the-classless-and-class-light-css-aproaches-2b98
  • https://prismic.io/blog/best-css-frameworks
  • https://saeedesmaili.com/notes/classless-css-libraries/
  • https://dev.to/logrocket/comparing-classless-css-frameworks-3267
  • https://github.com/dbohdan/classless-css
  • https://github.com/troxler/awesome-css-frameworks

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 de ce site Web
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

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

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

<🎜>: Grow A Garden - Guide de mutation complet
3 Il y a quelques semaines By DDD
<🎜>: Bubble Gum Simulator Infinity - Comment obtenir et utiliser les clés royales
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Système de fusion, expliqué
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Comment déverrouiller le grappin
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

Sujets chauds

Tutoriel Java
1664
14
Tutoriel PHP
1269
29
Tutoriel C#
1249
24
Une preuve de concept pour rendre Sass plus rapidement Une preuve de concept pour rendre Sass plus rapidement Apr 16, 2025 am 10:38 AM

Au début d'un nouveau projet, la compilation SASS se produit en un clin d'œil. Cela se sent bien, surtout quand il est associé à BrowSersync, qui recharge

Une comparaison des fournisseurs de formulaires statiques Une comparaison des fournisseurs de formulaires statiques Apr 16, 2025 am 11:20 AM

Essayons de savoir un terme ici: "fournisseur de formulaire statique". Vous apportez votre HTML

Actualités hebdomadaires de la plate-forme: attribut HTML Loading, les principales spécifications Aria et le passage de iframe à Shadow Dom Actualités hebdomadaires de la plate-forme: attribut HTML Loading, les principales spécifications Aria et le passage de iframe à Shadow Dom Apr 17, 2025 am 10:55 AM

Dans cette semaine, le Roundup des nouvelles de la plate-forme, Chrome présente un nouvel attribut pour le chargement, les spécifications d'accessibilité pour les développeurs Web et la BBC Moves

L'accord avec l'élément de section L'accord avec l'élément de section Apr 12, 2025 am 11:39 AM

Deux articles ont publié exactement le même jour:

Multipliers multiples: cas général Multipliers multiples: cas général Apr 12, 2025 am 10:52 AM

La première partie de cette série en deux parties a expliqué comment nous pouvons obtenir un curseur à deux pouces. Maintenant, nous examinerons un cas multi-tronçon général, mais avec un autre et

Certains pratiques avec l'élément de dialogue HTML Certains pratiques avec l'élément de dialogue HTML Apr 16, 2025 am 11:33 AM

C'est moi qui regarde l'élément HTML pour la première fois. J'en ai été conscient depuis un certain temps, mais il ne l'a pas encore pris pour un tour. Il a un peu cool et

Comment nous avons tagué Google Fonts et créé des goofont.com Comment nous avons tagué Google Fonts et créé des goofont.com Apr 12, 2025 pm 12:02 PM

Goofonts est un projet parallèle signé par un développeur-femme et un concepteur-mari, tous deux de grands fans de typographie. Nous avons marqué Google

C'est tout dans la tête: gérer la tête de document d'un site alimenté par réact avec un casque React C'est tout dans la tête: gérer la tête de document d'un site alimenté par réact avec un casque React Apr 15, 2025 am 11:01 AM

Le chef de document n'est peut-être pas la partie la plus glamour d'un site Web, mais ce qui y va est sans doute tout aussi important pour le succès de votre site Web que son

See all articles