/* Basic grid container */
.grid-container {
display: grid;
/* Define columns: 3 equal columns */
grid-template-columns: 1fr 1fr 1fr;
/* Specificity: 0,0,0,1 - Element selector */
p {
color: black;
}
/* Specificity: 0,0,1,0 - Class selector */
<%= form_with model: @profile do |form| %>
<div
class="field"
data-controller="character-count"
data-character-count-max-value="280"
>
/* Mobile-first base styles (no media query needed) */
.container {
width: 100%;
padding: 1rem;
margin: 0 auto;
}
/* BEM - Block Element Modifier */
/* BLOCK - Independent component */
.card {
padding: 1rem;
border: 1px solid #ddd;
/* 1. Mobile-first approach */
/* Base styles for mobile */
.container {
width: 100%;
padding: 1rem;
}
/* Static positioning (default) */
.static {
position: static; /* Normal document flow */
}
/* Relative positioning */