


Ruby on Rails Front-end Rapide avec Frameworks CSS Classless ou Class-Light - Sem CDN
Cet article est volontairement très similaire au précédent qui traite du même sujet, mais utilisait du CDN pour les frameworks CSS, cependant, dans cet article nous utiliserons des fichiers CSS localement, copiés dans le dossier du projet.
Si vous débutez dans le développement Web et que votre objectif n'est pas de vous spécialiser dans le front-end, l'un des obstacles qui peuvent être les plus douloureux est de pouvoir facilement styliser votre laid HTML.
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" >
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 en copiant les fichiers dans le projet ;
- 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-local ... real 0m47.500s user 0m33.052s sys 0m4.249s
Rails 8, dans le cadre de sa philosophie No Build, utilisera Prop Shaft comme bibliothèque de pipeline d'actifs par défaut et Importmap comme bibliothèque JavaScript. Importmap n'effectue aucun type de traitement JavaScript.
Ouvrez le projet avec VSCode ou votre éditeur préféré
$ cd classless-css-local && code .
Connaître la mise en page Rails par défaut app/views/layouts/application.html.erb.
Afficher plus…
<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"
>
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-local
...
real 0m47.500s
user 0m33.052s
sys 0m4.249s
Ouvrez le fichier config/routes.rb dans VSCode
$ cd classless-css-local && code .
Affichage des itinéraires Rails
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 Ou vous pouvez afficher tous les itinéraires avecAfficher plus…
<!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>
<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"
>
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…
$ rails -v
Rails 8.0.0
$ time rails new classless-css-local
...
real 0m47.500s
user 0m33.052s
sys 0m4.249s
Démarrez le serveur Rails et voyez le vilain HTML simple ?
Afficher plus…
$ cd classless-css-local && code .
Copiez vos fichiers CSS dans votre projet et collez-les dans app/assets/stylesheets/
Créons un sous-dossier sans classe dans app/assets/stylesheets pour copier les fichiers CSS téléchargés à partir des liens ci-dessous : CSS en bambou : https://github.com/rilwis/bamboo/blob/master/dist/bamboo.min.css Bamboo CSS n'a que le fichier minifié. Vous pouvez les formater pour les rendre plus faciles à comprendre à l'aide de services comme CSS Beautifier & Minifie. Collez le code à gauche et récupérez le fichier formaté à droite. Renommez le fichier en bambou.css. Conversion de Vanilla SCSS en Vanilla CSS :Afficher plus…
En consultant la documentation Rails sur les fichiers CSS, nous pouvons voir qu'il faut suivre quelques étapes pour styliser notre application web en copiant les fichiers CSS :
<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"
>
Rouvrez la page app/views/layouts/application.html.erb pour ajouter les styles CSS sans classe copiés dans le projet
POURAfficher plus…
$ rails -v
Rails 8.0.0
$ time rails new classless-css-local
...
real 0m47.500s
user 0m33.052s
sys 0m4.249s
$ cd classless-css-local && code .
<!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>
$ rails g controller pages html_test_1 html_test_2 html_test_3 html_test_4
create app/controllers/pages_controller.rb
route get "pages/html_test_1"
get "pages/html_test_2"
get "pages/html_test_3"
get "pages/html_test_4"
invoke erb
create app/views/pages
create app/views/pages/html_test_1.html.erb
create app/views/pages/html_test_2.html.erb
create app/views/pages/html_test_3.html.erb
create app/views/pages/html_test_4.html.erb
invoke helper
create app/helpers/pages_helper.rb
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. La page HTML devrait changer automatiquement après le changement de système d'exploitation, indiquant qu'elle prend en charge les modes clair et sombre.
Prochaines étapes
[x] Organisez les styles selon vos préférences ;
[x] Utiliser le style des fichiers CSS du projet, sans utiliser CDN ;
[-] Mettre à jour dynamiquement les modifications apportées au projet dans le navigateur à l'aide de Rails Live Reload ;
[-] Si vous souhaitez passer un peu plus de temps sur le frontend, consultez les options de personnalisation de votre style préféré ;
[-] Répliquer la capacité d'un framework CSS sans classe à l'aide de Tailwind ;
Références
- https://guides.rubyonrails.org/layouts_and_rendering.html
- 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!

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

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

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Sujets chauds

Il est sorti! Félicitations à l'équipe Vue pour l'avoir fait, je sais que ce fut un effort massif et une longue période à venir. Tous les nouveaux documents aussi.

J'ai eu quelqu'un qui écrivait avec cette question très légitime. Lea vient de bloguer sur la façon dont vous pouvez obtenir les propriétés CSS valides elles-mêmes du navigateur. C'est comme ça.

Je dirais que "Site Web" correspond mieux que "Application mobile" mais j'aime ce cadrage de Max Lynch:

L'autre jour, j'ai repéré ce morceau particulièrement charmant sur le site Web de Corey Ginnivan où une collection de cartes se cassent les uns sur les autres pendant que vous faites défiler.

Si nous devons afficher la documentation à l'utilisateur directement dans l'éditeur WordPress, quelle est la meilleure façon de le faire?

Il existe un certain nombre de ces applications de bureau où l'objectif montre votre site à différentes dimensions en même temps. Vous pouvez donc, par exemple, écrire

Questions sur les zones de slash violet dans les dispositions flexibles Lorsque vous utilisez des dispositions flexibles, vous pouvez rencontrer des phénomènes déroutants, comme dans les outils du développeur (D ...

CSS Grid est une collection de propriétés conçues pour faciliter la mise en page qu'elle ne l'a jamais été. Comme tout, il y a un peu une courbe d'apprentissage, mais Grid est
