![]() |
![]() |
|
| Condividi questo contenuto nei Social Network: |
|
Tweet |
|
|
|
Ti stiamo aspettando: Registrati subito e gratis. Entra a far parte di una delle comunità più attive in Italia. Se hai dimenticato i tuoi dati li puoi recuperare subito. |
||||
|
|||||||||
Hey Amico Visitatore, Condividi con noi le tue idee e la tua conoscenza Aprendo una nuova discussione nella sezione Css |
|
|
|
LinkBack | Strumenti di discussione |
|
|
#1 (permalink) |
|
Faq per CSS
Introduzione
Cosa sono i CSS? CSS sta per Cascading Style Sheet, cioè Foglio di Stile a Cascata. Sono uno strumento di formattazione dei documenti per il web attraverso i quali è possibile manipolare e definire ogni aspetto della presentazione di una pagina. Perchè usare i CSS? Il primo vantaggio che introducono i CSS è quello di separare completamente contenuto e presenzione. Il secondo grande vantaggio è l' accessibilità: con i CSS si possono definire presentazioni differenti per ogni tipo di lettore, dai browser testuali agli smartphone. Essendo il foglio di stile messo in cache dai browser, ed essendo per sua natura separato dal contenuto della pagina, si accorciano i tempi di caricamento. Per ultima cosa, ma non in ordine di importanza, facilitano il posizionamento nei motori di ricerca. Dove posso imparare? Esistono molte valide guide in rete: http://css.html.it/guide/leggi/2/guida-css-di-base/ http://www.webmasterpoint.org/css/ http://www.risorse.net/css/ E per ogni tuo dubbio c'è la sezione CSS del Forum GT ![]() Regole, Sintassi e Proprietà Che cos'è un selettore? Il selettore identifica a quali parti del documento Xhtml applicare determinate proprietà. La sintassi generica è la seguente: Codice:
selettore {proprietà: valore;
proprietà: valore;
... }
Cosa sono i selettori di TAG? Come posso fare in modo che tutti gli elementi di un certo tipo, abbiamo determinate proprietà? I selettori TAG usano come selettore, direttamente il nome del tag. In questo modo a tutte le istanze di quel tag all'interno del documeto Xhtml verranno applicate le proprietà definite.
Codice:
p { color:#999; font-size:11px; }
Cosa sono i selettori ID? I selettori ID servono per selezionare un particolare elemento all'interno di un documento Xhtml, identificato appunto, da un identificativo univoco, specificato nell'attributo id=”nomeId”. Esempio: nell'Xhtml: Codice:
<div id=”piedipagina”>
<h4>Infomazioni utili.</h4>
</div>
Codice:
#piedipagina{ background-color:#CC0066;}
Posso avere due id con lo stesso nome? No, l'id deve essere univoco all'interno del documento Xhtml; Il nome dell'id può contenere sia lettere che numeri? Il valore dell'attributo id può contenere lettere e numeri, ma non può cominciare per numero o contenere solo numeri. Cosa sono i selettori di Classe? I selettori di classe consentono di assegnare le stesse proprietà a uno o più elementi identificabili nel documento Xhtml dotati dell'attributo class=”nomeclasse”. Esempio: nell'Xhtml: Codice:
<p class=”pippo”>Questa</p> <p>prova</p> <p class=”pippo”>funziona!</p> Codice:
.pippo{ font-weight:bold;}
Quando mi conviene usare gli id? E quando le classi? Dipende! Potenzialmente è possibile utilizzare indistintamente l'uno o l'altro tipo di selettore, tuttavia ci sono delle restrizioni, dovute alle loro proprietà intrinseche. Ad esempio la frequenza nel documento Xhtml: mentre l'Id deve essere univoco (quindi un solo elemento può avere quell'identificativo), la classe può essere usata su più elementi diversi. I selettori possono essere combinati? E' possibile combinare l'uso dei selettori, per raffinare i criteri di scelta dell'elemento Xhtml. Ad esempio poniamo il caso di avere due div che contengono rispettivamente un titolo e due paragrafi di testo. Codice:
<div id="primo">
<h2>Primo testo in (finto) latino </h2>
<p>Lorem ipsum dolor sit amet, consectetur adipisici elit, sed eiusmod tempor incidunt ut labore et dolore magna aliqua.</p>
<p>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquid ex ea commodi consequat. </p>
</div>
<div id="secondo">
<h2>Secondo testo in (finto) latino </h2>
<p class=”importante”>Quis aute iure reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.</p>
<p>Excepteur sint obcaecat cupiditat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum</p>
</div>
Codice:
#primo p{ color:#FF0000;}
Posso utilizzare le stesse proprietà, per due selettori diversi? Si! Se voglio attribuire le stesse proprietà a elementi che sono identificati da selettori differenti, è possibile farlo separando i selettori con una virgola: selettore1, selettore2 { proprietà:valore; proprietà: valore} E' buona norma utilizzare questo tipo di scrittura, poiché scrittura presenta il vantaggio di rendere il codice facilmente modificabile. Che cosa sono gli elementi block e in-line? I tag contenuti nel body possono essere di due tipi: block o in-line. Genericamente il W3C identifica gli elementi in-line come elementi a livello di testo (possono contenere solo testo, o altri elementi in-line), mentre gli elementi block, possono contenere sia altri elementi block, sia diversi elementi in-line. Per default, i browser visualizzano gli elementi block con un'interlinea dall'elemento li precede. Per questo è facile immaginare gli elementi block come aree rettangolari, mentre gli elementi in-line assumeranno la forma del testo o dei blocchi che li contengono. Che differenza c'è tra <span> e <div>? Div e span sono due tag che identificano due contenitori generici. Si differenziano fra loro, poiché il primo è un elemento in-line, il secondo è un elemento block. Esempio: Codice:
<div><p>Oggi splende il <span>sole</span>.</p></div> Perché è importante sapere se un elemento è di tipo blocco, o di linea? Lavorando con i CSS è importante conoscere se il selettore a cui attribuiamo determinate proprietà si riferisca ad un elemento in-line o di tipo block. Questo poiché determinate proprietà sono esclusive degli elementi block, e se applicate ad elementi in-line, non hanno alcun effetto! Ad esempio in relazione al codice della domanda precedente(n.17): Codice:
span { border:1px solid red; height:150px;}
Un elemento in-line, può comportarsi come elemento block, o viceversa? Attraverso la proprietà display, è possibile modificare la “natura” di un elemento da block a in-line o viceversa. Codice:
span{ dispay:block; height:150px;}
Cos'è l'ereditarietà? L'ereditarietà è il meccanismo grazie al quale gli stile vengono applicati non solo ad uno specifico elemento, ma anche ai suoi figli. Se per esempio applichiamo un colore per il testo di un paragrafo, quel colore si applicherà anche per tutti gli elementi figli: Codice HTML:
<p style="color: green">Questo testo è verde. <strong>molto</strong> <em>verde</em></p> Tutte le propietà vengono ereditate? No. Alcune proprietà non trarrebbero vantaggio dall'essere ereditate. È il caso di border, float, etc.. Fate sempre riferimento alle specifiche w3c. Sviluppo, Testing & Debug Perché la resa su Internet Explorer (specialmente la versione 6) è diversa da Mozilla? Perché utilizzano diversi modi di visualizzazione dell'xhtml e delle loro proprietà e in generale Internet Explorer non implementa ancora tutti gli standard. Su quali browser è necessario controllare la resa del foglio di stile in fase di sviluppo? In linea teorica, il sito dovrebbe vedersi correttamente su TUTTI i browser. In realtà possiamo ridurre il campo di osservazione, testando le pagine su un numero ristretto di prodotti e, ragionevolmente, pensare che per induzione funzionino anche sugli altri prodotti simili. Ecco la lista dei browser che non devono mancare.
E' davvero importante controllare la resa su browser diversi da IE, infondo è il più diffuso!?! Si, è davvero importante. Sia per una questione “etica” sull'accessibilità e fruibilità dei contenuti da parte di tutti i possibili utenti, sia per una questione di professionalità. Non dispongo di una macchina Windows, come posso testare il sito su IE? Si. Esistono diversi servizi on-line che danno la possibilità di avere degli screenshot del sito da parte di diverse versione di browser. Ne è un esempio il Total Validator che fornisce il servizio screenshot, oltre alla validazione delle pagine. http://www.totalvalidator.com/validator/ValidatorForm Come posso collegare un foglio di stile valido solo per IE? E' possibile specificare un foglio di stile, le cui proprietà siano applicate agli elementi della pagina, solo nel momento in cui l'utente utilizza il browser Internet Explorer. Basta aggiungere nell'head dell'html il seguente codice: Codice:
<!--[if IE 6]>
<style type="text/css" media="screen">@import "ie6.css";</style>
<![endif]-->
<!--[if IE 7]>
<style type="text/css" media="screen">@import "ie7.css";</style>
<![endif]-->
Ci sono dei plugin per browser, utili in fase di sviluppo di fogli di stile? Si. Ad esempio Firefox mette a disposizione una vasta gamma di addOn, validatori, visualizzatori per IE e molti altri. Fra le più utili per lo sviluppo web:
Hanno contribuito a queste FAQ: Meryk, Laburno. Ultima revisione: 10/09/2007 Hai trovato un errore? Vuoi proporci una FAQ o vuoi scriverne una tu? Contatta i moderatori: il contributo di tutti è sempre benvenuto. | |
|
__________________
Giorgio Taverniti Blog - Il mio account Twitter! Che aspetti? Diventa MODERATRICE del Forum gt ![]() Importante evento sul Web Marketing: 5 sale, 27 argomenti, 33 esperti presenti, streaming e video registrati...a soli 149€
Ultima modifica di Laburno : 10-09-07 18:52. |
|
|
|
|
|