Durante lo sviluppo di un'aplicazione web si ha spesso la necessità di dare a un attributo CSS un valore dinamico in base a criteri stabiliti dall'applicazione. Ad esempio, potremmo avere la necessità di modificare il colore del testo o dello sfondo, di dare una dimensione diversa in base al testo, impostare un testo e molto altro ancora. In questi casi possiamo ricorrere alla funzione attr di CSS3.
Grazie a questa funzione, possiamo prendere il valore di un attributo del tag a cui applichiamo la classe CSS e mettere questo valore come valore di una proprietà CSS. prendiamo come esempio il seguente codice.
<p data-text="hello">world</p>
p::before {
content: attr(data-text) " ";
}
In questo esempio, diciamo che prima di tutti i tag p viene applicato il testo presente nell'attributo data-text. In questo altro esempio vediamo invece come impostare un colore di sfondo.
<div class="background" data-background="green"></div>
.background {
background-color: red;
}
.background[data-background] {
background-color: attr(data-background color);
}
In questo caso, il tag div ha la classe background che applica uno sfondo rosso. Tuttavia, con l'attributo data-background andiamo a impostare uno sfondo verde.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Gestione file Javascript in Blazor con .NET 9
Eseguire query per recuperare il padre di un record che sfrutta il tipo HierarchyID in Entity Framework
Migliorare l'organizzazione delle risorse con Azure Policy
Utilizzare Container Queries nominali
Aprire una finestra di dialogo per selezionare una directory in WPF e .NET 8
Utilizzare i variable font nel CSS
Sfruttare gli embedding e la ricerca vettoriale con Azure SQL Database
Supportare la sessione affinity di Azure App Service con Application Gateway
Creare una libreria CSS universale: Clip-path
Gestione degli stili CSS con le regole @layer
Utilizzare gRPC su App Service di Azure
Proteggere le risorse Azure con private link e private endpoints