


Ruby on Rails Front-End schnell mit Frameworks CSS Classless oder Class-Light – ohne CDN
Dieser Artikel ist absichtlich dem vorherigen sehr ähnlich, der sich mit demselben Thema befasst, aber CDN für die CSS-Frameworks verwendet. In diesem Artikel werden wir jedoch CSS-Dateien lokal verwenden, die in den Projektordner kopiert werden.
Wenn Sie mit der Webentwicklung beginnen und sich nicht auf die Spezialisierung auf das Frontend konzentrieren, besteht eine der Hürden, die am schmerzhaftesten sein kann, darin, Ihr hässliches HTML einfach formatieren zu können.
Für diejenigen, die den ersten Kontakt haben, ist es etwas Rätselhaftes, Mystisches, Übernatürliches, wenn man versucht, HTML zu verstehen, das eine Folge von Buchstaben und Zahlen mit vordefinierten Hilfsklassen hat, um Stile auf HTML anzuwenden, zum Beispiel:
<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"> </summary>
CSS-Frameworks, die Utility-Klassen verwenden, sind ausgezeichnet, vielseitig, reaktionsschnell, elegant und haben viele andere Eigenschaften, aber Tailwind CSS ist nicht die einzige Lösung. Wenn Sie etwas Schnelles und Einfacheres benötigen, ist die Verwendung eines klassenlosen oder klassenarmen CSS-Frameworks die bessere Lösung.
Klassenlose CSS-Frameworks formatieren HTML-Elemente direkt, ohne Klassen. Class-Light-Frameworks kombinieren automatische Stile mit einigen optionalen Utility-Klassen zur Anpassung, was ihre Verwendung vielseitiger macht.
Mit einem klassenlosen oder klassenleichten Ansatz können Sie das HTML-Styling schnell mit einer, zwei oder drei Zeilen lösen.
Wir werden unten sehen:
- Verwendung des Ruby on Rails-Frameworks in Version 8, mit Propshaft und Importmap;
- Kennenlernen der Datei mit dem Standardlayout von HTML-Seiten;
- Erstellen und Hinzufügen von Inhalten zu 4 HTML-Seiten, um das Styling mit CSS zu testen;
- Eine kurze Erwähnung der für die Seiten erstellten Routen;
- Ändern Sie das Standardlayout, um den Link zu den erstellten Seiten einzuschließen;
- Fügen Sie 12 CSS-Frameworks hinzu, indem Sie die Dateien in das Projekt kopieren;
- Wissen Sie, wie Sie feststellen können, ob in den CSS-Frameworks standardmäßig der Hell- und Dunkelmodus konfiguriert ist;
- Vorschläge für die nächsten Schritte;
Starten Sie eine neue Rails-Anwendung
- Die Zeit vor dem Rails-Befehl wird verwendet, um seine Ausführungszeit am Ende der Befehlsausführung anzuzeigen. Im Beispiel unten dauerte es 47 Sekunden.
$ rails -v Rails 8.0.0 $ time rails new classless-css-local ... real 0m47.500s user 0m33.052s sys 0m4.249s
Rails 8 verwendet im Rahmen seiner No-Build-Philosophie standardmäßig Propshaft als Asset-Pipeline-Bibliothek und Importmap als JavaScript-Bibliothek. Importmap führt keinerlei JavaScript-Verarbeitung durch.
Öffnen Sie das Projekt mit VSCode oder Ihrem bevorzugten Editor
$ cd classless-css-local && code .
Kennen des Standard-Rails-Layouts app/views/layouts/application.html.erb.
Mehr anzeigen…
<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">
</summary>
Testseiten generieren, mit einem Controller-Seiten und den Aktionen html_test_1, html_test_2, html_test_3 und html_test_4
Mehr anzeigen…
$ rails -v
Rails 8.0.0
$ time rails new classless-css-local
...
real 0m47.500s
user 0m33.052s
sys 0m4.249s
Öffnen Sie die Datei config/routes.rb in VSCode
$ cd classless-css-local && code .
Anzeige von Rails-Routen
Mit dem Terminal können Sie die Routen durch Angabe eines Controllers (mit -c) anzeigen, beispielsweise von Controller-Seiten aus Oder Sie können alle Routen anzeigen mitMehr anzeigen…
<title></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">
<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">
<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">
</summary>
Lassen Sie uns vier Seiten mit HTML-Inhalten erstellen, um die CSS-Stile zu testen.
Ruby on Rails verwendet standardmäßig die MVC-Architektur (Model-View-Controller), um mit der Organisation Ihres Projekts zu beginnen. Ein Großteil Ihres Codes ist in den folgenden Ordnern organisiert:
- Wenn sich der Code auf Domänen-/Geschäftslogik und Daten bezieht, bewahren Sie ihn im Ordner „app/models“ auf;
- Der mit der Ansicht verknüpfte Code (HTML, JSON, XML usw.) befindet sich in app/views;
- Code, der sich auf den Anforderungslebenszyklus bezieht, befindet sich in App/Controllern;
Fügen Sie den Inhalt der Seite html_test_1 ein
Mehr anzeigen…
$ rails -v
Rails 8.0.0
$ time rails new classless-css-local
...
real 0m47.500s
user 0m33.052s
sys 0m4.249s
Starten Sie den Rails-Server und sehen Sie das hässliche einfache HTML?
Mehr anzeigen…
$ cd classless-css-local && code .
Kopieren Sie Ihre CSS-Dateien in Ihr Projekt und fügen Sie sie in app/assets/stylesheets/ ein.
Lassen Sie uns einen klassenlosen Unterordner in app/assets/stylesheets erstellen, um die CSS-Dateien zu kopieren, die über die folgenden Links heruntergeladen wurden: Bamboo CSS: https://github.com/rilwis/bamboo/blob/master/dist/bamboo.min.css Bamboo CSS enthält nur die minimierte Datei. Sie können sie mithilfe von Diensten wie CSS Beautifier und Minifie formatieren, um sie leichter verständlich zu machen. Fügen Sie den Code links ein und erhalten Sie rechts die formatierte Datei. Benennen Sie die Datei in „bambus.css“ um. Vanilla SCSS in Vanilla CSS konvertieren:Mehr anzeigen…
Wenn wir die Rails-Dokumentation zu CSS-Dateien durchsehen, können wir erkennen, dass wir einige Schritte befolgen müssen, um unsere Webanwendung durch Kopieren der CSS-Dateien zu gestalten:
<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">
</summary>
Öffnen Sie die Seite app/views/layouts/application.html.erb erneut, um die in das Projekt kopierten klassenlosen CSS-Stile hinzuzufügen
FÜRMehr anzeigen…
$ 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 .
<title></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">
<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">
$ 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
Nun ja, stilvolles HTML?
Nachdem Sie die oben genannten Stylesheets gespeichert und den Rails-Server gestartet haben, wird Ihr HTML mit den ausgewählten CSS-Frameworks gestaltet.
Dunkler Modus
Einige Stile verfügen über die Option für den Dunkelmodus. Ändern Sie zur Bestätigung das Design Ihres Computers in den Farbanpassungsoptionen. Durchsuchen Sie Windows nach „Dunkelmodus für Apps aktivieren“ und wechseln Sie zwischen dunklem und hellem Modus. Die HTML-Seite sollte sich nach dem Wechsel des Betriebssystems automatisch ändern und anzeigen, dass sie den Hell- und Dunkelmodus unterstützt.
Nächste Schritte
[x] Ordnen Sie die Stile nach Ihren Wünschen an;
[x] Stil aus Projekt-CSS-Dateien verwenden, ohne CDN zu verwenden;
[-] Am Projekt im Browser vorgenommene Änderungen dynamisch mit Rails Live Reload aktualisieren;
[-] Wenn Sie etwas mehr Zeit mit dem Frontend verbringen möchten, schauen Sie sich die Anpassungsoptionen für Ihren Lieblingsstil an;
[-] Replizieren Sie die Fähigkeiten eines klassenlosen CSS-Frameworks mit Tailwind;
Referenzen
- 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
Das obige ist der detaillierte Inhalt vonRuby on Rails Front-End schnell mit Frameworks CSS Classless oder Class-Light – ohne CDN. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

CSS Grid ist ein leistungsstarkes Tool zum Erstellen komplexer, reaktionsschneller Weblayouts. Es vereinfacht das Design, verbessert die Zugänglichkeit und bietet mehr Kontrolle als ältere Methoden.

In Artikel wird CSS Flexbox erörtert, eine Layoutmethode zur effizienten Ausrichtung und Verteilung des Raums in reaktionsschnellen Designs. Es erklärt die Verwendung von Flexbox, vergleicht es mit CSS -Gitter und Details Browser -Unterstützung.

In dem Artikel werden Techniken zum Erstellen von reaktionsschnellen Websites mithilfe von CSS erörtert, einschließlich Ansichtsfenster -Meta -Tags, flexiblen Gitter, Flüssigkeitsmedien, Medienabfragen und relativen Einheiten. Es deckt auch mit CSS -Raster und Flexbox zusammen und empfiehlt CSS -Framework

In dem Artikel wird die CSS-Box-Größeneigenschaft erörtert, in der die Berechnung der Elementabmessungen steuert. Es erklärt Werte wie Inhaltsbox, Border-Box und Padding-Box sowie deren Auswirkungen auf das Layout-Design und die Form von Formularausrichtung.

In Artikel wird das Erstellen von Animationen mithilfe von CSS, Schlüsseleigenschaften und Kombination mit JavaScript erläutert. Hauptproblem ist die Browserkompatibilität.

In Artikel werden CSS für 3D -Transformationen, wichtige Eigenschaften, Browserkompatibilität und Leistungsüberlegungen für Webprojekte erläutert. (Charakterzahl: 159)

In dem Artikel werden CSS -Gradienten (linear, radial, wiederholt) beschrieben, um die Website -Visuals, das Hinzufügen von Tiefe, Fokus und moderne Ästhetik zu verbessern.

In Artikel werden Pseudoelemente in CSS, deren Verwendung bei der Verbesserung des HTML-Stylings und der Unterschiede zu Pseudoklassen erläutert. Bietet praktische Beispiele.


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

MantisBT
Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

SublimeText3 Linux neue Version
SublimeText3 Linux neueste Version

SecLists
SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.
