Nel CSS abbiamo la possibilità di definire, attraverso le media query, degli stili che verranno applicati in base alla dimensione della pagina. Ma possiamo rifarci anche a container, che così come le media query sono CSS at-rule: regole che impongono un determinato comportamento nel CSS.
Diversamente dalle media query, i container applicano regole sulla base della dimensione del container a cui sono applicati.
<div class="post">
<div class="card">
<h2>Card title</h2>
<p>Card content</p>
</div>
</div>
.post {
container-type: inline-size;
}
/* Quando la dimensione è inferiore ai 650px */
@container (width < 650px) {
.card {
width: 50%;
color: white;
background-color: black;
font-size: 0.8em;
}
}La proprietà container-type: inline-size permette al runtime di applicare ogni stile che intercetti una proprietà di tipo width. Se volessimo utilizzare sia l'altezza che la larghezza, dovremo invece scrivere container-type: size.
Una limitazione alla propagazione delle regole consiste nel nominare il container e richiamarlo all'interno della classe a cui andrà applicato tramite la proprietà container-name.
.post {
container-name: mycard;
container-type: inline-size;
}
.post1 {
container-type: inline-size;
}
@container mycard (width < 650px) {
.card {
width: 50%;
color: white;
background-color: black;
font-size: 0.8em;
}
}Anche se la classe .post1 è abilitata a ricevere le modifiche provenienti da @container, sull'interfaccia non verrà applicata alcuna modifica, dato che per applicare tali stili occorrerà definire il container-name: mycard, così come specificato all'interno di .post
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Creare espressioni riutilizzabili nelle query LINQ per Entity Framework
Keynote .NET Conference Italia 2025
Utilizzare @property per animare nativamente un oggetto HTML tramite CSS
Gestire codice JavaScript con code splitting e lazy loading
Dallo sviluppo locale ad Azure con .NET Aspire
Selettore CSS :has() e i suoi casi d'uso avanzati
Gestione delle scrollbar dinamiche in HTML e CSS
Definire il metodo di rilascio in .NET Aspire
DevSecOps per .NET: dalla teoria alla pratica
Centralizzare gli endpoint AI Foundry con Azure API Management
Utilizzare il metodo IntersectBy per eseguire l'intersection di due liste
Integrare un servizio esterno con .NET Aspire


