it.hideout-lastation.com
Paradiso Per Designer E Sviluppatori


Creazione di una casella di ricerca CSS3 oscillante

Questo articolo fa parte della nostra "serie di tutorial HTML5 / CSS3", dedicata a farti diventare un designer e / o uno sviluppatore migliori. Clicca qui per vedere più articoli della stessa serie.

CSS3 è il linguaggio di fogli di stile di prossima generazione. Introduce molte nuove ed eccitanti funzionalità come ombre, animazioni, transizioni, raggio di confine, ecc. Sebbene le specifiche non siano state ancora finalizzate, molti produttori di browser hanno già iniziato a supportare molte delle nuove funzionalità.

In questo tutorial, esploreremo alcune di queste funzioni come text-shadow, border-radius, box-shadows e transitions per creare un campo di ricerca a dondolo.

La versione photoshop di questo campo di ricerca è stata creata da Alvin Thong e può essere scaricata da qui. Ho provato a ricreare questo campo di ricerca usando puro CSS3. Si noti che non tutti i browser supportano le funzionalità CSS3 e per provare questo tutorial, è necessario utilizzare uno dei browser moderni che supportano le funzionalità di CSS 3.

Pronto? Iniziamo!

1. Documento HTML5

Inizieremo con il markup HTML. È molto semplice, dopo il HTML5 doctype e il dichiarazione, abbiamo un

con un ID chiamato #wrapper all'interno . Questo viene fatto semplicemente per definire la larghezza del riquadro del contenuto e per allinearlo al centro della pagina.

Questo è seguito da a

con un ID chiamato #main . Questo ID contiene gli stili che definiscono il grande riquadro bianco attorno al campo di input e il pulsante di ricerca. Questo
ha un
dichiarato al suo interno. Il modulo ha il campo di inserimento del testo e il tasto s earch. Ecco come appare il modulo senza alcuno stile applicato:

Ecco come appare il codice:

 Campo di ricerca CSS3 

Campo di ricerca CSS3

2. Creazione del riquadro di delimitazione

Per creare il riquadro grande attorno al modulo, aggiungeremo stili al

con l'ID di #main . Dal codice mostrato di seguito, noterai che al riquadro è stata assegnata una larghezza di 400 px e un'altezza di 50 px.

 #main {width: 400px; altezza: 50 px; sfondo: # f2f2f2; imbottitura: 6px 10px; border: 1px solid # b5b5b5; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; -moz-box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.8), inset 0 2px 2px rgba (255, 255, 255, 1), 0 5px 0 #ccc, 0 6px 0 # 989898, 0 13px 0 #dfdede; -webkit-box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.8), inset 0 2px 2px rgba (255, 255, 255, 1), 0 5px 0 #ccc, 0 6px 0 # 989898, 0 13px 0 #dfdede; box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.8), inset 0 2px 2px rgba (255, 255, 255, 1), 0 5px 0 #ccc, 0 6px 0 # 989898, 0 13px 0 # dfdede; } 

L'importante parte di codice qui è la dichiarazione border-radius e la dichiarazione box-shadow . Per creare angoli arrotondati, abbiamo utilizzato la dichiarazione border-radius CSS3, "-moz-" e "-webkit-" sono stati utilizzati prefissi del browser per garantire che questo funzioni nei browser basati su gecko e webkit. Le dichiarazioni shadow delle caselle potrebbero sembrare un po 'confuse, ma in realtà è molto semplice.

 box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.8), inset 0 2px 2px rgba (255, 255, 255, 1), 0 5px 0 #ccc, 0 6px 0 # 989898, 0 13px 0 # dfdede; 

Spiegazione: qui, la parola chiave inset specifica se l'ombra sarà all'interno della casella. I primi due zero indicano l'offset xe l'offset y e il 3px indica la sfocatura. La prossima è la dichiarazione dei colori. Ho usato i valori di rgba qui; rgba sta per rosso blu verde e alfa (opacità). Quindi i 4 valori all'interno della parentesi indicano la quantità di rosso, verde, blu e il suo alfa (opacità). Noterai che 5 serie di dichiarazioni ombra sono state bastonate. Questo può essere fatto separandoli con una virgola. Le prime due ombre definiscono l'effetto bianco "bagliore interno" e le dichiarazioni successive danno alla scatola il suo aspetto solido / massiccio.

Gioca con questi valori per capire come funziona.

Anteprima

3. Disegnare il campo di input

Ora che la casella è completa, passiamo allo stile del campo di input.

 input [type = "text"] {float: left; larghezza: 230 px; imbottitura: 15px 5px 5px 5px; margin-top: 5px; margin-left: 3px; border: 1px solid # 999999; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; -moz-box-shadow: inset 0 5px 0 #ccc, inset 0 6px 0 # 989898, inset 0 13px 0 #dfdede; -webkit-box-shadow: inset 0 5px 0 #ccc, inset 0 6px 0 # 989898, inset 0 13px 0 #dfdede; box-shadow: inset 0 5px 0 #ccc, inset 0 6px 0 # 989898, inset 0 13px 0 #dfdede; } 

Gli stili dichiarati per il campo di input sono molto simili a quelli decared per la grande casella #main . Abbiamo usato lo stesso raggio di confine (5px). Ancora una volta, più ombre di casella sono state bastonate.

 box-shadow: inset 0 5px 0 #ccc, inset 0 6px 0 # 989898, inset 0 13px 0 #dfdede; 

Spiegazione: Noterai che questa volta, la sfocatura dell'ombra è stata mantenuta a 0 per ottenere un'ombra nitida e viene utilizzato un offset verticale di 5px. Nelle dichiarazioni successive, la sfocatura è stata mantenuta a 0 px ma il colore e l'offset y sono stati modificati. Ancora una volta, giocare con questi valori per ottenere risultati diversi.

Anteprima

4. Modifica del pulsante di invio

Diamo uno stile al pulsante di ricerca.

 input [type = "submit"]. solid {float: left; cursore: puntatore; larghezza: 130 px; imbottitura: 8px 6px; margin-left: 20px; background-color: # f8b838; colore: rgba (134, 79, 11, 0, 8); text-transform: maiuscolo; font-weight: bold; border: 1px solid # 99631d; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; text-shadow: 0 1px 2px rgba (255, 255, 255, 0.7), 0 -1px 0 rgba (64, 38, 5, 0.9); -moz-box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.6), inset 0 1px 2px rgba (255, 255, 255, 0.7), 0 5px 0 # b8882a, 0 6px 0 # 593a11, 0 13px 0 #ccc; -webkit-box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.6), inset 0 1px 2px rgba (255, 255, 255, 0.7), 0 5px 0 # b8882a, 0 6px 0 # 593a11, 0 13px 0 #ccc; box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.6), inset 0 1px 2px rgba (255, 255, 255, 0.7), 0 5px 0 # b8882a, 0 6px 0 # 593a11, 0 13px 0 # ccc; -webkit-transition: background 0.2s easy-out; } 

Oltre ai colori, il pulsante di ricerca ha per lo più gli stessi stili di quello della scatola esterna. Sul pulsante sono stati utilizzati bordi di raggio e ombre di riquadri simili. La nuova funzionalità introdotta è l' text-shadow del text-shadow .

 text-shadow: 0 1px 2px rgba (255, 255, 255, 0.7), 0 -1px 0 rgba (64, 38, 5, 0.9); 

Spiegazione: Nella dichiarazione text-shadow, i primi tre valori numerici sono rispettivamente l'offset x, l'offset y e la sfocatura. I valori rgba indicano il colore dell'ombra. Nella prossima serie di dichiarazioni (separate da una virgola), l'offset y è assegnato a -1. Questo è fatto per dare al testo un effetto "ombra interiore". Lo stato di hover / focus del pulsante di invio ha diversi valori di colore di sfondo e ombre.

Anteprima

Stato "Attivo" per pulsante

Lo stato attivo del pulsante ha un po 'più di cambiamenti. In questo, ho dato al pulsante una posizione assoluta e un valore "top" di 5px. Questo è stato fatto per dargli un aspetto più naturale, in modo tale da sentire che il pulsante è stato effettivamente premuto di 5 pixel. Altre modifiche allo stato attivo sono quelle del colore di sfondo e delle ombre. Si noti che ho ridotto l'offset y delle ombre per dargli un aspetto 'premuto'. Ecco il codice per lo stato attivo del pulsante di invio:

 input [type = "submit"]. solid: active {background: # f6a000; posizione: relativa; inizio: 5px; border: 1px solid # 702d00; -moz-box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.6), inset 0 1px 2px rgba (255, 255, 255, 0.7), 0 3px 0 # b8882a, 0 4px 0 # 593a11, 0 8px 0 #ccc; -webkit-box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.6), inset 0 1px 2px rgba (255, 255, 255, 0.7), 0 3px 0 # b8882a, 0 4px 0 # 593a11, 0 8px 0 #ccc; box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.6), inset 0 1px 2px rgba (255, 255, 255, 0.7), 0 3px 0 # b8882a, 0 4px 0 # 593a11, 0 8px 0 # ccc; } 

Il codice completo (CSS)

Questo completa il nostro campo di ricerca. Abbiamo usato un bel po 'delle nuove funzionalità CSS3. Ecco il CSS e l'HTML completi di questo campo di ricerca.

 #main {width: 400px; altezza: 50 px; sfondo: # f2f2f2; imbottitura: 6px 10px; border: 1px solid # b5b5b5; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; -moz-box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.8), inset 0 2px 2px rgba (255, 255, 255, 1), 0 5px 0 #ccc, 0 6px 0 # 989898, 0 13px 0 #dfdede; -webkit-box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.8), inset 0 2px 2px rgba (255, 255, 255, 1), 0 5px 0 #ccc, 0 6px 0 # 989898, 0 13px 0 #dfdede; box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.8), inset 0 2px 2px rgba (255, 255, 255, 1), 0 5px 0 #ccc, 0 6px 0 # 989898, 0 13px 0 # dfdede; } input [type = "text"] {float: left; larghezza: 230 px; imbottitura: 15px 5px 5px 5px; margin-top: 5px; margin-left: 3px; border: 1px solid # 999999; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; -moz-box-shadow: inset 0 5px 0 #ccc, inset 0 6px 0 # 989898, inset 0 13px 0 #dfdede; -webkit-box-shadow: inset 0 5px 0 #ccc, inset 0 6px 0 # 989898, inset 0 13px 0 #dfdede; box-shadow: inset 0 5px 0 #ccc, inset 0 6px 0 # 989898, inset 0 13px 0 #dfdede; } input [type = "submit"]. solid {float: left; cursore: puntatore; larghezza: 130 px; imbottitura: 8px 6px; margin-left: 20px; background-color: # f8b838; colore: rgba (134, 79, 11, 0, 8); text-transform: maiuscolo; font-weight: bold; border: 1px solid # 99631d; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; text-shadow: 0 1px 2px rgba (255, 255, 255, 0.7), 0 -1px 0 rgba (64, 38, 5, 0.9); -moz-box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.6), inset 0 1px 2px rgba (255, 255, 255, 0.7), 0 5px 0 # b8882a, 0 6px 0 # 593a11, 0 13px 0 #ccc; -webkit-box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.6), inset 0 1px 2px rgba (255, 255, 255, 0.7), 0 5px 0 # b8882a, 0 6px 0 # 593a11, 0 13px 0 #ccc; box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.6), inset 0 1px 2px rgba (255, 255, 255, 0.7), 0 5px 0 # b8882a, 0 6px 0 # 593a11, 0 13px 0 # ccc; -webkit-transition: background 0.2s easy-out; } input [type = "submit"]. solid: hover, input [type = "submit"]. solid: focus {background: # ffd842; -moz-box-shadow: inset 0 0 3px rgba (255, 255, 255, 0, 9), inset 0 2px 1px rgba (255, 250, 76, 0, 8), 0 5px 0 # d8a031, 0 6px 0 # 593a11, 0 13px 0 #ccc; -webkit-box-shadow: inset 0 0 3px rgba (255, 255, 255, 0, 9), inset 0 2px 1px rgba (255, 250, 76, 0, 8), 0 5px 0 # d8a031, 0 6px 0 # 593a11, 0 13px 0 #ccc; box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.9), inset 0 2px 1px rgba (255, 250, 76, 0.8), 0 5px 0 # d8a031, 0 6px 0 # 593a11, 0 13px 0 # ccc; } input [type = "submit"]. solid: active {background: # f6a000; posizione: relativa; inizio: 5px; border: 1px solid # 702d00; -moz-box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.6), inset 0 1px 2px rgba (255, 255, 255, 0.7), 0 3px 0 # b8882a, 0 4px 0 # 593a11, 0 8px 0 #ccc; -webkit-box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.6), inset 0 1px 2px rgba (255, 255, 255, 0.7), 0 3px 0 # b8882a, 0 4px 0 # 593a11, 0 8px 0 #ccc; box-shadow: inset 0 0 3px rgba (255, 255, 255, 0.6), inset 0 1px 2px rgba (255, 255, 255, 0.7), 0 3px 0 # b8882a, 0 4px 0 # 593a11, 0 8px 0 # ccc; } 

Spero ti sia piaciuto questo tutorial. Sentiti libero di sperimentare queste funzionalità e non dimenticare di condividere i tuoi pensieri.

Nota del redattore: questo post è scritto da Bharani M per Hongkiat.com. Bharani è un designer / sviluppatore di New Delhi, in India.

5 modi in cui i freelancer stanno trasformando l'economia [Infografica]

5 modi in cui i freelancer stanno trasformando l'economia [Infografica]

Se non hai sentito, i freelance stanno salvando Internet e ti aiutano a lanciare la tua startup, quindi non è inverosimile vedere un'economia futura che viene trasformata dal settore del free-lance. Originariamente un percorso di carriera per coloro che sono stati resi disoccupati dalle pressioni economiche e dai cambiamenti nel settore, l'economia dei gig è diventata la strada scelta per ben 5 milioni di lavoratori nel solo Regno Unito.I

(Consigli tecnici e di design)

5 strumenti gratuiti per notificare modifiche ai contenuti del sito Web

5 strumenti gratuiti per notificare modifiche ai contenuti del sito Web

Per sapere quando un sito web cambia i suoi contenuti, devi andare su quel sito Web e controllarlo frequentemente e manualmente . Non sembra molto lavoro, a meno che non si tratti di un sito di e-commerce o di un sito Web di notizie in cui i contenuti del Web cambiano rapidamente e all'improvviso

(Consigli tecnici e di design)