Home >Web Front-end >CSS Tutorial >Ruby on Rails Frontend Rápido com Frameworks CSS Classless ou Class-Light
If you are starting out in web development and your focus is not to specialize in the frontend, one of the barriers that can be most painful is being able to easily style your ugly HTML.
For those who have first contact, it seems enigmatic and confusing to try to understand HTML that has a sequence of letters and numbers with predefined utility classes to apply styles to HTML, for example:
<div> <p><small>Copiado do site https://picocss.com</small></p> <p>Os frameworks CSS que utilizam classes utilitárias são excelentes, versáteis, responsivos, elegantes e possuem muitas outras qualidades, mas o Tailwind CSS não é a única solução. <strong>Se você precisa de algo rápido e mais simples, usar um framework CSS classless ou class-light será uma solução melhor.</strong></p> <p>Frameworks CSS classless estilizam elementos HTML diretamente, sem classes. Frameworks class-light combinam estilos automáticos com algumas classes utilitárias opcionais para personalização, o que adicionar maior versatilidade com seu uso.</p> <p>Usando uma abordagem classless ou class-light você pode resolver a estilização do HTML de forma rápida com uma, duas ou três linhas.</p> <h2> Veremos nesta série de artigos: </h2> <ul> <li>A utilização do framework Ruby on Rails na versão 8, com Propshaft e Importmap;</li> <li>Conheceremos brevemente o arquivo com o layout padrão das páginas HTML;</li> <li>Criaremos 4 páginas HTML com vários elementos para testar a estilização com CSS;</li> <li>Faremos um breve resumo sobre as rotas criadas para as páginas;</li> <li>Vamos alterar o layout padrão para incluir o link para as páginas HTML criadas;</li> <li>Saberemos como identificar se o frameworks CSS possui o modo light e dark configurados automaticamente por padrão;</li> <li>Na parte 2, criaremos um projeto com 12 frameworks CSS via CDN ao layout padrão;</li> <li>Na parte 3, criaremos um projeto com 12 frameworks CSS copiando os arquivos para o projeto;</li> <li>Veremos também sugestões e novos desafios;</li> </ul> <h2> Conhecendo o layout padrão do Rails app/views/layouts/application.html.erb. </h2> <p><details> <summary>Exibir mais …</summary> <ul> <li>Por Convenção sobre Configuração (CoC - Convention over Configuration), o Rails utiliza o application.html.erb como layout padrão para renderizar todas as páginas;</li> <li>O Arquivo original no Rails 8 deve ter um conteúdo igual ou parecido com o copiado abaixo: </li> </ul> <pre class="brush:php;toolbar:false"><!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>
Some steps are common to all articles in the series and are here to simplify. Don't worry, we will make it clear in the next articles when the following steps should be followed.
Show more…
$ 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
Open the config/routes.rb file in VSCode
root "pages#html_test_1"
Using the terminal you can display the routes by specifying a controller (with -c), for example from controller pages Or you can display all routes withShow more…
<div>
<p><small>Copiado do site https://picocss.com</small></p>
<p>Os frameworks CSS que utilizam classes utilitárias são excelentes, versáteis, responsivos, elegantes e possuem muitas outras qualidades, mas o Tailwind CSS não é a única solução. <strong>Se você precisa de algo rápido e mais simples, usar um framework CSS classless ou class-light será uma solução melhor.</strong></p>
<p>Frameworks CSS classless estilizam elementos HTML diretamente, sem classes. Frameworks class-light combinam estilos automáticos com algumas classes utilitárias opcionais para personalização, o que adicionar maior versatilidade com seu uso.</p>
<p>Usando uma abordagem classless ou class-light você pode resolver a estilização do HTML de forma rápida com uma, duas ou três linhas.</p>
<h2>
Veremos nesta série de artigos:
</h2>
<ul>
<li>A utilização do framework Ruby on Rails na versão 8, com Propshaft e Importmap;</li>
<li>Conheceremos brevemente o arquivo com o layout padrão das páginas HTML;</li>
<li>Criaremos 4 páginas HTML com vários elementos para testar a estilização com CSS;</li>
<li>Faremos um breve resumo sobre as rotas criadas para as páginas;</li>
<li>Vamos alterar o layout padrão para incluir o link para as páginas HTML criadas;</li>
<li>Saberemos como identificar se o frameworks CSS possui o modo light e dark configurados automaticamente por padrão;</li>
<li>Na parte 2, criaremos um projeto com 12 frameworks CSS via CDN ao layout padrão;</li>
<li>Na parte 3, criaremos um projeto com 12 frameworks CSS copiando os arquivos para o projeto;</li>
<li>Veremos também sugestões e novos desafios;</li>
</ul>
<h2>
Conhecendo o layout padrão do Rails app/views/layouts/application.html.erb.
</h2>
<p><details>
<summary>Exibir mais …</summary>
<ul>
<li>Por Convenção sobre Configuração (CoC - Convention over Configuration), o Rails utiliza o application.html.erb como layout padrão para renderizar todas as páginas;</li>
<li>O Arquivo original no Rails 8 deve ter um conteúdo igual ou parecido com o copiado abaixo:
</li>
</ul>
<pre class="brush:php;toolbar:false"><!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
Ruby on Rails uses the MVC (Model-View-Controller) architecture by default to start organizing your project. Much of your code is organized in the following folders:
Show more…
root "pages#html_test_1"
Show more…
$ rails routes -c pages
Prefix Verb URI Pattern Controller#Action
pages_html_test_1 GET /pages/html_test_1(.:format) pages#html_test_1
pages_html_test_2 GET /pages/html_test_2(.:format) pages#html_test_2
pages_html_test_3 GET /pages/html_test_3(.:format) pages#html_test_3
pages_html_test_4 GET /pages/html_test_4(.:format) pages#html_test_4
The above is the detailed content of Ruby on Rails Frontend Rápido com Frameworks CSS Classless ou Class-Light. For more information, please follow other related articles on the PHP Chinese website!