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

Agenzia web marketing e le fondamenta di JQuery

Un giocatore posizionale può sviluppare grandi complicazioni tattiche? Analizziamo per esempio la partita Anatoly Karpov vs Murray Chandler Phillips & Drew GLC Kings (1984), London ENG, rd 2, Apr-27 Tarrasch Defense: Classical Variation (D34) finita 1-0. Apertura del nero molto rischiosa usata ai tempi occasionalmente anche da Kasparov in cui il pedone isolato in d5 si rende spesso artefice di sviluppi di gioco estremamente dinamici. Indirizzo internet: http://wagenzia web marketingww.chessgames.com/perl/chessgame?gid=1068407. Spesso le funzioni neorologiche del cervello finiscono per assegnare con dei luoghi comuni dei contenitori logici per cui un giocatore posizionale dioventa seppure eccelso nel suo settore fatto di lunghe manovre un brozzo pazzesco tatticamente parlando. Non é così perché dopo 20 Tc6 il cervello deve analizzare con cura e molta attenzione un ginepraio di varianti complesso. Liquidata questa parte in cui da spettatori non possiamo fare altro che ammirare la maestria dell’ ex campione del mondo e da appassionati sostenitori di agenzia web marketing estrapolarla per farne tesoro, ci accingiamo a rivedere i fondamenti di JQuery. jQuery è una libreria JavaScript veloce, piccola e ricca di funzionalità. Rende molto più semplici le cose come il traversamento e la manipolazione dei documenti HTML, la gestione degli eventi e l’animazione. Tutta la potenza di jQuery è accessibile tramite JavaScript, quindi avere una forte conoscenza di JavaScript è essenziale per comprendere, strutturare e eseguire il debug del codice. Innanzitutto, diamo un’occhiata a un esempio di manipolazione HTML con JavaScript. Per ottenere l’elemento con id = “start” e cambiare il suo html in “Go”, dovremo fare quanto segue:

var el = document.getElementById(“start”);
el.innerHTML = “Go”;

Per fare la stessa manipolazione con jQuery, abbiamo bisogno solo di una singola riga di codice:

$(“#start”).html(“Go”);

Come puoi vedere, il codice è molto più breve e più facile da capire. Un altro grande vantaggio di jQuery è che non devi preoccuparti del supporto del browser, il tuo codice funzionerà esattamente nello stesso modo in tutti i principali browser, incluso Internet Explorer 6!

Puoi scaricare una copia della libreria jQuery da http://www.jquery.com oppure, in alternativa, puoi includerla da una rete di distribuzione di contenuti (CDN), come Google o Microsoft.
Useremo il CDN dal sito web ufficiale di jQuery. Per iniziare a usare jQuery, dobbiamo prima aggiungerlo alla testa del nostro documento HTML usando il tag script:

<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
https://code.jquery.com/jquery-3.1.1.js
</head>
<body>
</body>
</html>

jQuery è una libreria JavaScript, quindi ha l’estensione del file .js. È una buona pratica aspettare che il documento HTML sia completamente caricato e pronto prima di utilizzarlo. Per questo usiamo l’evento ready dell’oggetto documento:

$(document).ready(function() {
// jQuery code goes here
});

$ È usato per accedere a jQuery. Da qui, il codice accede all’oggetto del documento e definisce una funzione da chiamare quando viene attivato l’evento pronto del documento. Ciò impedisce l’esecuzione di qualsiasi codice jQuery prima del caricamento del documento. Dato che il codice sopra è usato in quasi tutti i casi quando si usa jQuery, c’è una comoda scorciatoia per scriverlo:

$(function() {
// jQuery code goes here
});

Ora, avendo la libreria jQuery nella nostra sezione principale e avendo definito l’evento pronto per il documento, possiamo iniziare la nostra prima manipolazione di jQuery! Cambiamo il contenuto dell’elemento div.

<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
https://code.jquery.com/jquery-3.1.1.js
</head>
<body>

Start


</body>
</html>

il file JS:

$(function() {
$(“#start”).html(“Go!”);
});

Questo cambia l’HTML dell’elemento con id = “start” su “Go!”.

jQuery è usato per selezionare (interrogare) elementi HTML ed eseguire “azioni” su di essi. La sintassi di base è: $ (“selettore”). Action ()

– $ accesses jQuery.
– Il (selettore) trova elementi HTML.
– L’azione () viene quindi eseguita sugli elementi.

Per esempio:

$(“p”).hide() // hides all <p> elements
$(“.demo”).hide() // hides all elements with class=”demo”
$(“#demo”).hide() // hides the element with id=”demo”

Riguardiamo il codice di un esempio precedente:

$(“#start”).html(“Go!”);

Questo seleziona l’elemento con id = “start” e chiama il metodo html () per esso. Il metodo html () viene utilizzato per modificare il contenuto HTML di un elemento. Se hai già usato CSS in precedenza, noterai che jQuery usa la sintassi CSS per selezionare gli elementi. Diamo un’occhiata a tutti i selettori jQuery che iniziano con il simbolo del dollaro e le parentesi: $ (). Il selettore di base è il selettore di elementi, che seleziona tutti gli elementi in base al nome dell’elemento.

$(“div”) // selects all <div> elements

Poi ci sono i selettori id e class, che selezionano gli elementi in base al loro id e nome della classe:

$(“#test”) // select the element with the id=”test”
$(“.menu”) //selects all elements with class=”menu”

È inoltre possibile utilizzare la seguente sintassi per i selettori:

$(“div.menu”) // all <div> elements with class=”menu”

$(“p:first”) // the first <p> element

$(“h1, p”) // all <h1> and all <p> elements

$(“div p”) // all <p> elements that are descendants of a <div> element

$(“*”) // all elements of the DOM

I selettori rendono l’accesso agli elementi HTML DOM facili rispetto al puro JavaScript. In una delle prossime sessioni di allenamento con agenzia web marketing torneremo ad affondare il bisturi dulle potenzialità di JQuery e sulle mirabolanti funzioni semplificate di cui dispone come figlio agile e snello di Javascript.