15 nuovi selettori CSS4 per creare form d’impatto

La grande novità del 2018 è il rilascio di un Working Draft del W3C con nuove regole di Css4 che sono ancora in fase di discussione. Per cui prima che il Working Draft diventi Editor’s Draft, le cose potrebbero cambiare, ma credo che valga già la pena di introdurre il discorso che rivoluzionerà il codice Css ed Html. Rispetto al passato, le specifiche standard sono rilasciate in maniera più veloce e anche i browsers stessi, compreso Explorer, possono adottare più velocemente le nuove specifiche e funzionalità in modo da non dover aspettare molto a lungo per poter utilizzarle.
Prima di utilizzare puoi controllare lo stato di supporto attuale dei browser su Caniuse; noterai che molti selettori non sono ancora supportati, ma lo diventeranno ben presto.
La parte più importante dei selettori riguarda lo sviluppo dei form o moduli contatti che presentano tantissime novità.

Ecco i selettori CSS4 che possiamo utilizzare ora e che aggiungono più potere e più flessibilità al tuo lavoro e faccio un paragone tra il vecchio codice ed il nuovo.

SELETTORI CSS4

1# – Negation:
Questo selettore che si esprime con il :not è stato introdotto sin dai CSS3 ma adesso può accettare selettori multipli come un argomento, lasciando il nostro codice più leggibile e coinciso.

La sintassi attuale:

h1:not(.this-element):not (.another-element)
{
font-size: 1.2em
}

Nuova sintassi:

h1:not(.this-element, .another-element)
{
font-size:1.2em;
}

Questo elemento è supportato solo da Safari per ora.

#2 – Matches:

Questo elemento è l’opposto del precedente e può anche accettare selettori multipli come un argomento.
La nuova sintassi non cambia molto rispetto a quella precedente ma migliore in leggibilità.

La sintassi attuale:

h1.this-element,
h1.another-element
{
font-weight:bold;
}

Nuova sintassi:

h1:matches (.this-element, another-element)
{
font-weight:bold;
}

Questo elemento è supportato solo da tutti i Browsers

#3 – Relational

È possibile che questo elemento potrebbe non essere sviluppato a causa della sua complessità ad essere implementato.Questo elemento potrebbe permettere di dare uno stile ad un elemento in base ai suoi contenuti.

.container:has(.this-element)
{
background:green:
}

 

#4 – Drop

Questo selettore permette di aggiungere lo stile agli obiettivi di HTML5 drop. Lo stile può essere applicato se la parte da trascinare è valida, invalida o attiva.

.element:drop
{
border: 3px solid, background:grey
}
.element:drop(active)
{
border-color:blue;
}
.element:drop(valid)
{
border-color:green;
}
.element:drop(invalid)
{
border-color:red
}

#5 – Indeterminate

Associa elementi che sono in uno stato indeterminato. Checkboxes, radio button e progress bars possono essere in questo stato. Per esempio un checkbox genitore con 2 checkbox figli selezionati, può essere indeterminato. Questo può essere fatto solo in Javascript e non in HTML

input[type=“checkbox”]: indeterminate
{
opacity: 0.75
}

Questo selettore è supportato solo dai browser: Firefox, Chrome e Safari

#6 – Default

Associa elementi in default tra una serie di elementi simili, come per esempio l’evento selezionato in un elemento:

option:default
{
font-weight:bold;
}

Questo selettore è abbastanza supportato da tutti i Browsers.

#7 – Validity

Il selettore validity è utilizzato per gli elementi cha hanno uno stato di valido o invalido.

input:invalid
{
border:1px solid red;
}

input:valid
{
border:1px solid green;
}

Questo selettore è supportato da tutti i Browsers

#8 – Range

Il selettore Range applica agli elementi che hanno un limite di raggio come uno slide o un numero di input con valore massimo o minimo.

input: in-range.
{
background:green;
}
input:out-of-range
{
background:red:
}

Questo selettore è supportato da tutti i Browsers tranne Opera mini.

#9- Optionality

Questo selettore serve a chiarire quali elementi sono opzionali e quali invece sono richiesti in un form.

:required
{
border: 2px solid black
}
:optional
{
border:1px dashed grey;
}

#10 – User interaction

Questo selettore serve a creare lo stile ad un elemento invalido solo dopo che un elemento ha interagito con un’altro e non quando la pagina si carica. Questo è il caso di un campo di un modulo contatti che viene compilato in modo errato:

input: user-error
{
border:1px solid red;
}

#11 – Mutability

Questo elemento attribuisce uno stile al campo input o textarea che si basa solo sulla lettura o sulla scrittura:

textarea:read-only
{
color:grey;
}
tetarea: read-write
{
color: black;
}

#12 – Placeholder Shown

Questo selettore è abbastanza supportato dai Browser. Di solito gli elementi input di un form possono mostrare il testo segnaposto tramite click sul campo input. Ora invece possiamo dare lo stile a questi elementi che mostrano il testo segnaposto.

input:placeholder-shown {
border-color:blue;
}

#13 – Local Link

Questo selettore non è supportato da nessun browser. Il selettore Local link ti permette di creare stili diversi a link ( per esempio in un menù di navigazione

:local-link(0)
{
color: red;
}
:local-link(1)
{
color: green;
}

:local-link(2)
{
color: yellow;
}

#14 – Time Dimensional

Il funzionamento di questo selettore è simile a Matches( ) con la differenza che può selezionare l’elemento riferito ad un tempo che può essere corrente, passato e futuro. Questo selettore può risultare utile durante la visualizzazione di sottotitoli di un video HTML5.

:current(p, span) {
background-color: yellow;
}

:past(p, span),
:future(p, span) {
background-color: gray;
}

#15 – Hiperlink

Questo selettore associa tutti i link e sostituisce a:link e a:visited

:any-link{
text-decoration:underline;
}

Hai utilizzato questi selettori per i tuoi progetti? Se non l’hai ancora fatto, scarica gratuitamente la risorsa che ho creato per te ed utilizzala per i tuoi progetti.
Ti consiglio di visitare anche questo sito web per chiarire ulteriormente le tue idee e le possibilità di utilizzo dei selettori Css4.
Per scaricare la risorsa che ho creato per te, per favore inserisci nome ed email.
Ti invierò il link nell’email che inserirai nel modulo qui sotto.

— SCARICA LA RISORSA “15 nuovi selettori CSS4 per creare form d’impatto”—

Nome *

Email *

Non ci sono commenti

Pubblica un Commento

WordPress spam blocked by CleanTalk.