Realizziamo una Lightbox in Css3 e Html5


1 febbraio 2011 10 Commenti css3, html5

Fino ad oggi realizzare una gallery con effetto lightbox era una cosa che implicava l’uso di javascript oppure di flash.  Ebbene da oggi potrai pure utilizzare html5 e css3 per realizzare il tutto con pochissime righe di codice facili da usare :) .

Partiamo dal codice html5:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<!doctype>

<html>

<head>

<title>Una Semplice LightBox in Css3 & Html5</title>


<link href="css/main.css">


</head>

<body>


<ul id='small'>

<li><a href='#img1'><img src='min_1.jpg'></a></li>

<li><a href='#img2'><img src='min_2.jpg'></a></li>

<li><a href='#img3'><img src='min_3.jpg'></a></li>

</ul>


<ul id='big'>

<li id='img1'><a href='#no_img'><img src='big_1.jpg'></a></li>

<li id='img2'><a href='#no_img'><img src='big_2.jpg'></a></li>

<li id='img3'><a href='#no_img'><img src='big_3.jpg'></a></li>

</ul>


</body>

</html>

Come avete visto sono presenti due elenchi “big e small”, essi fanno parte integrante del nostro script, nel ul small ci staranno le miniature mentre in quello big le foto a grandezza naturare.

Ora andiamo al codice css3 commentato in ogni sua parte:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
/* imposto margini, immagini e sfondo */

* {
margin: 0px auto;
padding: 0px;
text-align: center;
}

body {
background-color: rgba(255, 150, 0, .5);
}

img {
border-radius: 8px;
}

/* imposto i vari ul */


ul li {
list-style:none;
}
ul#small {
margin-top: 100px;
}

/* imposto la visibilità delle immagini grandi */

ul#big li {
opacity:0;
text-align: center;
}
ul#big li img {
margin: 10% auto;
padding: 0px;
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
border: 10px solid #ffffff;
}

/* imposto l'animazione di fade delle immagini */


ul#big li[id]:target {
opacity:0;
-webkit-transition:opacity 1.2s cubic-bezier(0,0,0,1);
-moz-transition:opacity 1.2s cubic-bezier(0,0,0,1);
-o-transition:opacity 1.2s cubic-bezier(0,0,0,1);
transition:opacity 1.2s cubic-bezier(0,0,0,1);
}

/* imposto lo sfondo nero quando l'immagine è grande */

ul#big li[id]:target {
position: absolute;
top: 0;
left: 0;
opacity:1;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, .5);
}

/* imposto il link per chiudere l'immagine quando è allargata */

ul#big li[id]:target a {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}

Qua puoi trovare un pratico esempio ( funzionante solo su browser che supportano html5 e css3 ).

Ovviamente è da sottolineare il fatto che questo tipo di tecnologia è compatibile soltanto con browser moderni, ma ciò non ci nega di sapere come funziona questo nuovo meccanismo.

Oggi abbiamo approfondito :target uno pseudo selettore di css3.

Grazie e alla prossima ;)




Potresti trovare interessante anche

slideshow_css3 Realizziamo una semplice Gallery Fullscreen con i Css3 foto_gallery_css3_html5 tabs_css3_html5
Pubblicato in css3, html5 |



Iscriviti alla newsletter

Vuoi ricevere ogni articolo che pubblico direttamente sulla tua mail ? Vuoi evitare di perdere qualsiasi articolo pubblico ? Registrati alla mia newsletter in un click.

Inserisci il tuo indirizzo mail:

10 commenti per Realizziamo una Lightbox in Css3 e Html5

Stupendo effetto, bravissimo :)

Complimenti.. molto interessante..!

@Giacomo Colddesign Grazie ;)

Grazie Rocco, ottimo, da provare subito ;)

ma che figata! peccato che funziona con pochi browser, perchè sarebbe davvero un ottima soluzione per chi non vuole utilizzare javascript e jquery ^^

@Ciro grazie ;)
@Acid ora tra un paio di giorni vi faccio vedere io qualcosa di fantasmagorico :D

aspetto con ansia, allora :D

Davvero stupendo questo esempio di lightbox in html5 e css3, bella Rocco!!

Lascia un Commento