Se le cose vanno male nel mondo non sai centrare un e le ingiustizie sociali si moltiplicano, la colpa di tutto sai di chi é? Dei CSS!

agenzia web marketingDiciamocelo chiaramente, il mondo a livello globale va avanti ma potrebbe andare meglio, accanto ai lavori canonici tradizionali regolarizzati per le caste che andiamo a categorizzare come salvati per usare una metafora di Levi P abbiamo attività di alienazione fraudolente che sfociano in business pseudo-strani o malavitosi categorizzate nel cassetto sommersi. La gente miagola nel buio. Si é in cirsi di identità, i giovani non avranno mai la pensione e non avranno mai nè famiglia nè figli, perché lo squilibrio regna sovrano e quella bella gente che ha risanato lo stivale negli anni scorsi oggi di fatto si sollazzera con i suoi 5000 euri al mese di pensione o giù di lì grazie a presunti creduloni che sono andati a votarli fiduciosi per dare loro sostegno e rifocillare i loro codici IBAN. Come se non bastasse anche a diventare GM ci va il grano, se non altro per lubrificare qualche mezzo punto di rito con l’agonista più altolocato. E di chi é la colpa di tutto questo modello BCE basato sulla speculazione e sul profitto e sulle ingiustizie sociali finalizzate al portafoglio proprio? Ma non lo sai che oggi prendere un ambulanza da qualche parte in Italia può essere pericoloso se hai qualcuno sopra che ti segue in affari con il becchino locale che ha bisogno di incrementare il fatturato? Chi é il responsabile? Umbriaway Consulting? Agenzia web marketing? Dio? La Juventus? Lapo? Quello che esalta Fonzie come il miglior politico di tutti i tempi? Se la gente da qualche parte nel mondo muore di fame e di freddo chi sene dicono a RM? L’importante é continuare a usare un cibo incontaminato e a non commetere peccato uccidendo vacche (bovine ndr) per avere una bella fiorentina con cipolline aromatizzate allo zenzero sulla propria tavola? Di chi é la colpa di tutto questo eh? Ebbene si, anche se dà fastidio alle coscienze, la colpa di tutto questo caos é proprio dei CSS, che sta per Cascading Style Sheets. Chi sviluppa il web e ha un profilo da web designer sa che bisogna cristonare molto su margini e padding e posizionamenti e su elementi padri e figli per far quadrare i conti con un approccio: qui piloto io! Spesso quello che si vorrebbe fare a livello di modellazione e gestione degli elementi grafici sulla pagina, non avviene per i più misteriosi motivi, forse nella tua vita precedente eri una persona cattiva e ora anche applicare il codice in maniera corretta ti diventa difficile a cusa di un karma nefasto. Ora chi ha un minimo di esperienza sa bene come la famosa mela del famoso fisico Newton che alcune regole varranno smpre in maniera assoluta, del tipo che se applico un colore rosso a una intestazione h1 quel tag dovrà reagire nell’ unico modo possibile pronosticabile che lasciamo immaginare agli affezionati lettori di Umbriaway Consulting. Come ben sappiamo la parte strutturale di una pagina HTML o ossatura é costituita da HTML, ma come ben sappiamo anche gli edifici hanno un contenuto che é protetto da un contenitore costituito da ferro e acciaio e cemento. Se la parte di struttura é gestita dai tag di formattazione HTML la parte di presentazione é gestita dai CSS in modo da separare vestito grafico ed aspetto estetico dalla struttura ossea di chi lo indossa. E la parte logica dei comportamenti interattivi? Quella la lasciamo fare a javascript. Separata la triade architetturale ipotizziamo adesso di avare un problema pratico. Voglio centrare un elemento di una pagina HTML magari al centro di tutto. Come dici? Ti viene da ridere perché puoi usare un tag di tipo CENTER? Ma non parliamo di testo, quello lo sappiamo bene che reagirà nell’ unico modo possibile con quel tag, parliamo magari di un DIV e allora come centrare ad esempio degli elementi CHILD all’ interno di elementi PARENT? Ma quante volte hai combattuto con margin, padding e proprietà come border o posizionamento per vedereun elemento nel punto esatto dove ti saresti aspettto di vederlo senza riuscirci? E lo sai perché? Perché evidentemente non conosci bene le regole CSS, semplice! Esistono tante strade diverse per raggiungere un unci obiettivo. Sappiamo che una regola di stile ha un elemento caratterizzante, ha delle proprietà a corredo ed ha dei VALUE, dei valori che definiscono il tutto. Ci si aspetterebbe che applicando gli stessi parametri in un progetto, si debbano perseguire gli stessi risultati ma a volte questo non accade perché? Perché dobbiamo contestualizzare il tutto e vedere quali sono gli elementi annidati, capire quali gerarchie di fogli stile interagiscono, vedere in una visione più ampia tutte le circostanze del progetto e come viene gestito. I progetti hanno una loro singolarità e i comportmenti possono essere imprevedibili applicando magari gli stessi valori in certi contesti a certe regole. Se con l’avvento di CSS3 alcune problematiche standard legate per l’appunto a margini, padding, bordi e posizionamenti assoluti e relativi sembrano arginati grazie all’ uso di flexbox, di griglie flessibili, di misure relative e di framework responsivi, di fatto alcuni problemi come quello della centratura di un DIV possono apparire insormontabile se non si conoscono le strade che portano a RM. Di fatto questo può essere risolto ad esempio in 4 mosse, per esmepio impostando un margin: 0 auto oppure una semplice istruzione come display: inline-block oppure usando position: absolute seguito dala proprietà left o ancora usando la proprietà TRANSFORM-TRANSLATE, ma l’unico modo per capire come funzionano queste regole é applicarle per vedere l’effetto che hanno, senza sperimentazione pratica la teoria divent fuffa. Ora per comprendere gli aspetti pratici di tutti questi deliri basta visitare l’indirizzo http://www.farwebdesign.com/css/center1.html e http://www.farwebdesign.com/css/center2.html e visualizzare il codice sorgenti delle pagine con tasto destro visualizza codice sorgente. Ma a questo punto il dado é tratto e non ci resta che scavare a fondo sulla natura dei CSS.

– Il collegamento in cascata si riferisce al modo in cui i CSS applicano uno stile su un altro.
– I fogli di stile controllano l’aspetto dei documenti Web.

CSS e HTML funzionano mano nella mano:

– HTML ordina la struttura della pagina.
– Il CSS definisce come vengono visualizzati gli elementi HTML.

Perché usare i CSS? I CSS ti consentono di applicare stili specifici a specifici elementi HTML. Il vantaggio principale del CSS è che ti consente di separare lo stile dal contenuto. Usando solo HTML, tutti gli stili e la formattazione sono nella stessa posizione, che diventa piuttosto difficile da mantenere man mano che la pagina cresce. Tutta la formattazione può (e dovrebbe) essere rimossa dal documento HTML e archiviata in un file CSS separato. L’utilizzo di uno stile in linea è uno dei modi per inserire un foglio di stile. Con uno stile in linea, uno stile unico viene applicato a un singolo elemento.

Per utilizzare uno stile in linea, aggiungi l’attributo style al tag pertinente.

L’esempio seguente mostra come creare un paragrafo con sfondo grigio e testo bianco:

CSS incorporato / interno

Gli stili interni sono definiti all’interno dell’elemento <style>, all’interno della sezione head di una pagina HTML.

Ad esempio, il codice seguente definisce tutti i paragrafi:

<pre>
<html>
<head>
<style>
p {
color:white;
background-color:gray;
}
</style>
</head>
<body>
<p>This is my first paragraph. </p>
<p>This is my second paragraph. </p>
</body>
</html>

Tutti i paragrafi hanno un carattere bianco e uno sfondo grigio:
</pre>

CSS esterno

Con questo metodo, tutte le regole di stile sono contenute in un singolo file di testo, che viene salvato con l’estensione .css. Questo file CSS viene quindi referenziato nell’HTML usando il tag <link>. L’elemento <link> entra nella sezione head. Ecco un esempio:

L’HTML:
<pre>
<head>
<link rel=”stylesheet” href=”example.css”>
</head>
<body>
<p>This is my first paragraph.</p>
<p>This is my second paragraph. </p>
<p>This is my third paragraph. </p>
</body>
</pre>

The CSS:
p {
color:white;
background-color:gray;
}

Entrambi i percorsi relativi e assoluti possono essere utilizzati per definire l’href per il file CSS. Nel nostro esempio, il percorso è relativo, poiché il file CSS si trova nella stessa directory del file HTML. Il CSS è composto da regole di stile che il browser interpreta e quindi si applica agli elementi corrispondenti nel documento. Una regola di stile ha tre parti: selettore, proprietà e valore. Ad esempio, il colore del titolo può essere definito come nella figura inserita. Il selettore punta all’elemento HTML che desideri applicare allo stile. Il blocco di dichiarazione contiene una o più dichiarazioni, separate da punti e virgola. Ogni dichiarazione include un nome di proprietà e un valore, separati da due punti. I selettori più comuni e facili da capire sono i selettori di tipo. Questo selettore seleziona i tipi di elementi nella pagina. Ad esempio, per indirizzare tutti i commenti sulla pagina:

p {
color: red;
font-size:130%;
}

Una dichiarazione CSS termina sempre con un punto e virgola ei gruppi di dichiarazione sono circondati da parentesi graffe. I selettori di id consentono di applicare uno stile a un elemento HTML con attributo id, indipendentemente dalla loro posizione nell’albero del documento. Ecco un esempio di un selettore di ID:

The HTML:


This paragraph is in the intro section.



<p> This paragraph is not in the intro section.</p>

The CSS:
#intro {
color: white;
background-color: gray;
}

Per selezionare un elemento con un ID specifico, utilizzare un carattere hash e quindi seguirlo con l’id dell’elemento. I selettori di classe funzionano in modo simile. La principale differenza è che gli ID possono essere applicati solo una volta per pagina, mentre le classi possono essere utilizzate tutte le volte in una pagina secondo necessità. Nell’esempio seguente, entrambi i paragrafi con la “prima” classe saranno interessati dal CSS:

The HTML:
<pre>


This is a paragraph


This is the second paragraph.



<p class=”first”> This is not in the intro section</p>
<p> The second paragraph is not in the intro section. </p>
</pre>

The CSS:
.first {font-size: 200%;}

Per selezionare elementi con una classe specifica, usa un carattere punto, seguito dal nome della classe. NON avviare un nome di classe o ID con un numero! Questi selettori vengono utilizzati per selezionare elementi che sono discendenti di un altro elemento. Quando si selezionano i livelli, è possibile selezionare tutti i livelli in profondità necessari. Ad esempio, per indirizzare solo gli elementi <em> nel primo paragrafo della sezione “intro”:

The HTML:
<pre>


This is a paragraph.


This is the second paragraph.



<p class=”first”> This is not in the intro section.</p>
<p> The second paragraph is not in the intro section. </p>
</pre>

The CSS:
#intro .first em {
color: pink;
background-color:gray;
}

Di conseguenza, saranno interessati solo gli elementi selezionati. I commenti sono usati per spiegare il tuo codice e possono aiutarti quando modifichi il codice sorgente in seguito. I commenti sono ignorati dai browser. Un commento CSS assomiglia a questo:

/* Comment goes here */

Example:
p {
color: green;
/* This is a comment */
font-size: 150%;
}

Il commento non appare nel browser. L’aspetto finale di una pagina Web è il risultato di diverse regole di stile. Le tre principali fonti di informazioni di stile che formano una cascata sono:

– Il foglio di stile creato dall’autore della pagina
– Gli stili di default del browser
– Stili specificati dall’utente

L’ereditarietà si riferisce al modo in cui le proprietà fluiscono attraverso la pagina. Un elemento figlio di solito assume le caratteristiche dell’elemento genitore se non diversamente definito. Per esempio:
<pre>
<html>
<head>
<style>
body {
color: green;
font-family: Arial;
}
</style>
</head>
<body>
<p>
This is a text inside the paragraph.
</p>
</body>
</html>
</pre>

Poiché il tag di paragrafo (elemento figlio) si trova all’interno del tag body (elemento padre), assume qualsiasi stile assegnato al tag body.

Annunci