<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Matteo Bayre &#187; css 3</title>
	<atom:link href="https://www.ebayre.it/tag/css-3/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.ebayre.it</link>
	<description>Push button creating ideas</description>
	<lastBuildDate>Tue, 28 Nov 2023 16:04:00 +0000</lastBuildDate>
	<language>it-IT</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.41</generator>
	<item>
		<title>Come creare un pagina portfolio in HTML 5</title>
		<link>https://www.ebayre.it/come-creare-un-pagina-portfolio-html-5/</link>
		<comments>https://www.ebayre.it/come-creare-un-pagina-portfolio-html-5/#comments</comments>
		<pubDate>Wed, 03 Dec 2014 17:16:48 +0000</pubDate>
		<dc:creator><![CDATA[Matteo Bayre]]></dc:creator>
				<category><![CDATA[html css]]></category>
		<category><![CDATA[box-shadow css3]]></category>
		<category><![CDATA[css 3]]></category>
		<category><![CDATA[esempio pagina html5]]></category>
		<category><![CDATA[galleria html 5]]></category>
		<category><![CDATA[html 5]]></category>
		<category><![CDATA[pagina portfolio html 5]]></category>
		<category><![CDATA[proprietà css]]></category>
		<category><![CDATA[selettori css]]></category>
		<category><![CDATA[transition css3]]></category>

		<guid isPermaLink="false">http://www.ebayre.it/?p=804</guid>
		<description><![CDATA[<p>Oggi impariamo a costruire una pagina portfolio con i nostri lavori in anteprima, creando una griglia di immagini con qualche appetitoso effetto grafico. Tutto attraverso il codice HTML 5 e il CSS 3. La griglia di immagini sarà responsive, cioè sarà in grado di adattarsi alle dimensioni dello schermo, e quindi sarà ottimizzata per i [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://www.ebayre.it/come-creare-un-pagina-portfolio-html-5/">Come creare un pagina portfolio in HTML 5</a> appeared first on <a rel="nofollow" href="https://www.ebayre.it">Matteo Bayre</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p>Oggi impariamo a costruire una <strong>pagina portfolio</strong> con i nostri lavori in anteprima, creando una griglia di immagini con qualche appetitoso <strong>effetto grafico</strong>. Tutto attraverso il codice<strong> HTML 5</strong> e il <strong>CSS 3</strong>.</p>
<p>La griglia di immagini sarà <strong>responsive</strong>, cioè sarà in grado di adattarsi alle dimensioni dello schermo, e quindi sarà ottimizzata per i dispositivi mobili come <strong>tablet</strong> e <strong>smartphone</strong>.</p>
<p><strong>La griglia</strong></p>
<p>Impostiamo un file <strong>HTML 5 standard</strong> index.html (<a href="http://www.ebayre.it/html-css/come-creare-sito-web-in-html-5/">vedi qui come costruire una pagina</a>) con una sezione  a tutto schermo e dei tag <code>article </code>con un <code>id </code>numerato.</p>
<p><span id="more-804"></span></p><pre class="crayon-plain-tag">&lt;!DOCTYPE html&gt;
&lt;html lang="it" class="no-js"&gt;
	&lt;head&gt;
		&lt;meta charset="UTF-8" /&gt;
		&lt;meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"&gt; 
		&lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&gt;
  &lt;!--[if IE]&gt;
    &lt;script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"&gt;&lt;/script&gt;
  &lt;![endif]--&gt;

		&lt;title&gt;Portfolio&lt;/title&gt;
		
		&lt;link rel="stylesheet" type="text/css" href="css/stile.css" /&gt;
		&lt;script src="js/modernizr.custom.js"&gt;&lt;/script&gt;
	&lt;/head&gt;
	&lt;body&gt;
          &lt;header&gt;
              &lt;h1&gt;Pagina Portfolio&lt;/h1&gt;
          &lt;/header&gt;

          &lt;section id="grid"&gt;
           &lt;article id="01"&gt;

           &lt;/article&gt;&lt;article id=“02”&gt;
           
           &lt;/article&gt;
          &lt;/section&gt;
        &lt;/body&gt;
&lt;/html&gt;</pre><p>Aggiungiamo per ogni <code>article </code>un <strong>collegamento</strong>, un&#8217;<strong>immagine</strong>, un <strong>titolo</strong> e una <strong>descrizione</strong>, che corrispenderà all&#8217;anteprima del lavoro del nostro portfolio.</p><pre class="crayon-plain-tag">&lt;article id="01"&gt;
         &lt;a href="#01"&gt;&lt;img src="images/01.jpg" /&gt;&lt;/a&gt;
         &lt;div class="info"&gt;
         &lt;div class="description"&gt;
            &lt;h1&gt;Primo lavoro&lt;/h1&gt;
            &lt;p&gt;Lorem ipsum dolor sit amet, consectetur adipiscing elit. In in massa ultrices 
            diam lobortis convallis quis in risus. Phasellus a augue vitae sapien condimentum 
            condimentum quis at eros. In nisl lacus, pharetra nec commodo quis, accumsan ac sapien.&lt;/p&gt;
         &lt;/div&gt;
         &lt;/div&gt;
&lt;/article&gt;</pre><p>Al solito creiamo le cartelle <strong>css</strong>, <strong>img</strong> e <strong>js</strong> rispettivamente per i <strong>fogli di stile, le immagini e il files javascript</strong>.</p>
<p><strong>Il CSS</strong></p>
<p>Creiamo ora il file <strong>css</strong> stile.css inserendo alcuni tag di <strong>reset </strong> (una serie di regole css che portano alla stato standard le regole dei fogli di stile):</p><pre class="crayon-plain-tag">html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

*, *:after, *:before { 

	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box; 
	box-sizing: border-box; 
}
body, html { 
	font-size: 100%; 
	padding: 0; margin: 0;
}


body {
	font-family: Arial, sans-serif;
	color: #000;
	background: #B8DDE3;
}

a {
	color: #;
	text-decoration: none;
}
h1{
color:#000;	
}</pre><p>Formattiamo poi lo stile generale per creare una<strong> griglia centrata</strong> con una larghezza e una <strong>posizione relativa</strong>. Stilizziamo <code>article </code>affiancando i box con <code>display: inline-block</code>, con larghezza 50% (per renderli adattabili alla dimensione dello schermo del browser), e impostiamo un allineamento verticale al margine superiore. Le immagini all&#8217;interno di <code>article </code>avranno poi una larghezza al 100%. Le immagini all&#8217;interno degli articoli avranno un&#8217;ombra impostata col <code>box-shadow</code> CSS 3.</p><pre class="crayon-plain-tag">section {
     max-width: 1000px;
     margin: 0 auto;
     overflow: hidden;
     position: relative;
     padding: 10px 0px 0px 10px;
   }

section article {
     vertical-align:top;
     display: inline-block;
     width:50%;
     margin-bottom:-5px;
}

section img {
    width:100%;
    height:auto;
    padding:0px;
     border:1px solid #000;
      -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
{</pre><p>Impostiamo il <strong>box delle informazioni del progetto</strong> che mostrerà le info sotto il box immagine una volta <strong>cliccata l’immagine</strong>. L’elemento fondamentale di questa griglia immagini che ci permette di cliccare sulla <strong>thumbnail</strong> e di visualizzare le informazioni nel box posto sotto l’immagine senza dover usare il codice <strong>jQuery</strong> è il selettore <code>:target</code>.</p>
<p>La sezione <strong>info</strong> è quella che dobbiamo visualizzare al click dell’immagine per cui allo stato di partenza dobbiamo <strong>nasconderla</strong> con la proprietà <code>opacity:0</code>.</p>
<p>Sfruttando il selettore <code>:target</code> possiamo rivelare l’informazione impostando <strong>un’altezza auto e una opacità pari a 1</strong>. Questo ci permette di visualizzare il box delle informazioni al momento del <strong>click</strong>.</p>
<p>Coi selettori <code>nth-child</code> invece possiamo selezionare <strong>le informazioni numero 1 di ogni 2 e le informazioni numero 2 di ogni 2</strong>; però, mentre la prima va bene così come è posizionata, la seconda deve essere spostata a sinistra aggiungendo un valore di -100%.</p>
<p>Per selezionare <strong>la quarta informazione di ogni 4</strong> usiamo sempre il selettore <code>nth-child</code>. La prima rimane a un valore di 0, la seconda a un valore di -109%, la terza a un valore di -218%, la quarta -327%.</p>
<p>Infine evidenziamo il box al quale si riferisce l&#8217;informazione:</p><pre class="crayon-plain-tag">section .info {
      width: 180%;
      padding: 2em 0;
      margin: 0;
      position: relative;
      float: left;
      opacity: 1;
      height: 0;
      font-size: 0;
    }

    section .info h1 {
      margin-bottom: .5em;
	  color:#000;
    }
    section .info p {
      margin-bottom: 2em;
      line-height: 140%;
	  color:#000;
    }
    
    
    section .info .maggioriInfo {
      display: block;
	  margin-left:10px;
      margin-top: 0em;
      padding: .4em;
      background:#4C9ED9;
      color: white;
      text-decoration: none;
      text-transform: uppercase;
      text-align: center;
      font-size: 1em;
       -webkit-transition: 0.5s background-color;
       -moz-transition: 0.5s background-color;
       -ms-transition: 0.5s background-color;
       -o-transition: 0.5s background-color;
       transition: 0.5s background-color;
}
 
    section .info .maggioriInfo:hover {
      background-color: #000;
    }

     article:nth-child(2n+1) .info {
      left: 0;
    }
    article:nth-child(2n+2) .info {
      left: -100%;
    }

    section article:target .info {
      height: auto;
      font-size: 100%;
      opacity: 1;
      -webkit-transition: .4s .4s opacity;
    }

    section article:target img {
     border: 3px solid #4C9ED9; 
      -webkit-transition: .5s;
	  -moz-transition: .5s;
	  -o-transition: .5s;
    }


    section article:nth-child(4n+1) .info {
      left: 0;
    }
    section article:nth-child(4n+2) .info {
      left: -109%;
    }
    section article:nth-child(4n+3) .info {
      left: -218%;
    }
	section article:nth-child(4n+4) .info {
      left: -327%;
    }</pre><p>Alla fine del foglio di stile inseriamo le regole valide per le risoluzioni di schermo differenti dal classico desktop attraverso le <strong>media queries</strong>. In questo caso  <code>@media only screen and (min-width: 701px)</code> determinerà le regole per le risoluzioni maggiori di 701px di larghezza , mentre <code>@media only screen and (max-width: 700px)</code> determinerà le regole per le risoluzioni inferiori a 700px di larghezza.</p>
<p>Selezioniamo quindi le <strong>nostre immagini</strong> e inseriamo le<strong> informazioni</strong> per ogni progetto. E abbiamo realizzato il nostro portfolio responsive! <strong><a href="http://www.ebayre.it/tutorial/portfolio/index.html" target="_blank">Qui trovi l&#8217;esempio online.</a></strong></p>
<p><a href="http://www.ebayre.it/wp-content/uploads/2014/12/portfolio.zip"><strong>Qui puoi trovare i files d&#8217;esempio della pagina portfolio. (zip) </strong></a></p>
<p>The post <a rel="nofollow" href="https://www.ebayre.it/come-creare-un-pagina-portfolio-html-5/">Come creare un pagina portfolio in HTML 5</a> appeared first on <a rel="nofollow" href="https://www.ebayre.it">Matteo Bayre</a>.</p>
]]></content:encoded>
			<wfw:commentRss>https://www.ebayre.it/come-creare-un-pagina-portfolio-html-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
