Blog
home > blog > CSS: ridimensionare le immagini proporzionalmente

Tag: CSS, Donna Braun Nera Per Pompe David Pompe Koralle xIqOZZ, tip, html

Ginnastica Tessuto Rebel Hogan In Scarpe Hxm2610u390d8d0xcr Uomo Da Nero da0w0qX

Vediamo una semplice tecnica per ridimensionare le immagini senza che perdano la proporzione usando i css, e farli sempre entrare nel layout che abbiamo creato.
di Maurizio Ceravolo
lunedì 30 maggio 2011
Il ridimensionamento delle immagini è un problema molto comune quando si lavora sul web. Il motivo è semplice. Le immagini " pesano". Ovvero rispetto al testo che ci può essere in una pagina, una immagine generalmente usa molti più byte (l'unità minima dell'informazione in una cella di memoria). E dato che quando usiamo internet la quantità di informazioni che il modem può prelevare dalla rete non è infinito, significa che tante più byte usa una pagina fra testo, immagini e tutte le altri informazioni che servono per visualizzare il contenuto, tanto più lento sarà il caricamento della stessa.

Hxm2610u390d8d0xcr Da In Nero Hogan Tessuto Rebel Uomo Scarpe Ginnastica
Quindi se io sto facendo un post in cui vi voglio mostrare una foto che ho scattato ieri al mare dalla mia fotocamera da " millamila" megapixel, è assolutamente inutile che io la carichi della dimensione originale, perché tanto nella pagina del mio blog lo spazio a disposizione è sicuramente molto minore.

Facciamo un esempio pratico. Una normale fotocamera da 14 megapixel può fare foto da 4.000 x 3.000 Manitu Donna Grau 320527 Manitu Donna Grau 320527 Manitu Pantofole Pantofole 320527 Donna xY7UIqw1. In questo blog, abbiamo uno spazio utile orizzontale per i contenuti di poco più di 700 pixel. Per questo non potrei caricare l'immagine delle dimensioni originali perché mi " In Hxm2610u390d8d0xcr Da Nero Ginnastica Rebel Hogan Tessuto Uomo Scarpe slargherebbe" la formattazione del blog, facendo apparire una antiestetica barra di scorrimento orizzontale.

Alcuni adottano la scelta di caricare l'immagine della dimensione originale e poi di restringerla via HTML. Questa soluzione è altamente sconsigliata, perchè una foto di quelle dimensioni andrebbe a pesare circa 3/4 milioni di byte, e quindi il caricamento e la visualizzazione sarebbe molto lento, e potrebbe durare anche qualche minuto per chi ha un collegamento ad internet lento.

Quindi il metodo ortodosso sarebbe di ridimensionare l'immagine con un programma di grafica (oppure programmare una funzionalità server-side per il ridimensionamento automatico delle immagini) fino alle dimensioni in cui ci interessa pubblicarla.

Come in tutte le cose, la teoria è una cosa, la pratica è un altra. In alcuni casi ci si può trovare a lavorare su siti di cui non si ha il pieno controllo, e quindi si deve usare "quello che passa il convento" come ad esempio delle immagini non delle dimensioni corrette.

In questi casi l'unica cosa che possiamo fare è ridimensionare l'immagine o via HTML o via CSS. Aggiungiamo però un livello di difficoltà.

Supponiamo che ci venga chiesto di rifare l'interfaccia grafica di un sito che abbia un CMS, dal quale gli amministratori possono caricare contenuti ed immagini. Non possiamo mettere le mani al CMS per modificarlo come ci serve. Possiamo solo intervenire sulla parte pubblica di HTML. Nella homepage di questo sito è presente un riquadro che casualmente mostra una immagine a caso fra quelle presenti in archivio. Purtroppo queste immagini hanno tutte proporzioni diverse, mentre ci viene richiesto che qualsiasi sia la proporzione, le immagini entrino all'interno del box di presentazione che è di 200 x 100 pixel e che lo facciano in maniera proporzionale alle dimensioni originali.

Facciamo l'esempio pratico. Una di queste immagini è di dimensione 400 x 400 pixel. Come quella qui sotto.


Una immagine sui CSS

Questa immagine è visualizzata tramite il seguente codice HTML


Tessuto Uomo Hxm2610u390d8d0xcr Hogan Nero In Rebel Ginnastica Scarpe Da
La prima cosa che viene in mente è di modificare l'HTML andando a sostituire 200 e 100 nelle dimensioni delle immagini, in questo modo:

Da Ginnastica In Nero Hogan Scarpe Rebel Tessuto Uomo Hxm2610u390d8d0xcr
Asics Esecuzione Dynaflyte 2 Isola Nere Blu Limoges In Scarpe nero L'uomo ASnBIxrdn

Il risultato che si ottiene, non è però quello sperato


Immagine ridimensionata via html

Come vedete l'immagine adesso è di 200 x 100 pixel però ha perso decisamente le proporzioni.

Allora decido di provare a fare la stessa cosa usando i css, magari ho più fortuna, e provo a scrivere:
Uomo Ginnastica Tessuto Scarpe Hxm2610u390d8d0xcr Nero In Da Rebel Hogan Hxm2610u390d8d0xcr Rebel In Nero Scarpe Da Uomo Tessuto Ginnastica Hogan

Immagine ridimensionata via css

Ho fatto una cosa diversa, ma il risultato è lo stesso. Immagine ridimensionata, ma sproporzionata.

Per risolvere il mio problema devo andare a scomodare due altri attributi dei css,  max-width e max-height, che permettono di specificare la dimensione massima che può occupare un oggetto in pagina. In questo modo il mio HTML diventa:


Immagine ridimensionata via css (max-width e max-height)

Il risultato è finalmente quello voluto. Anche se come ho già detto non è il risultato ottimo. In questo caso abbiamo una immagine di 142.000 byte che occupa uno spazio di 200 x 100 pixel ed in questo caso assume le dimensioni di 100 x 100 pixel (questo perché l'immagine originale era quadrata).

Nobrand Nero Nero 02 Pizzo il Nero Benny Derby wqRAaZ
L'uso del max-width e max-height è compatibile con i principali browser e quindi visibile da Internet Explorer, Chrome, Firefox e Safari.

Una piccola precisazione per Internet Explorer. I due attributi max-width e max-height sono disponibili sono da Internet Explorer 7 e superiori. Come comportarsi con Explorer 6. Il consiglio è di ignorare il problema. Microsoft ha interrotto il supporto per questo browser antiquato, e sta spingendo perché gli sviluppatori facciano lo stesso (vedi Internet Explorer 6 deve morire). Io sono della stessa opinione. Anche se non rigidamente. Ci sono alcuni siti aziendali (generalmente grosse aziende) che devono supportare Internet Explorer 6, perchè è quello il browser che viene usato in società. In questi casi generalmente ho la possibilità di mettere le mani sul server-side. Se anche in questi casi avessi bisogno di ridimensionare le immagini in pagina allora in questo caso bisogna implementare un work-around, che rende il codice meno pulito. Ma di questo magari ne parleremo un altro post.
Moda Grigi Scarpe 2 0 Copenhagen Da Corvo Uomo Arkk Ginnastica wqzqcBv1

Happy coding. :-)
Post correlati
2011
31
Marzo
Facebook: problemi con immagini nelle anteprime dei link
Maurizio Ceravolo
Da un paio di settimane vengono riportati problemi quando si prova a condividere un link e questo contiene un'immagine per l'anteprima. Cerchiamo di capire le cause.
2011
5
Luglio
Formattare e indentare le query SQL
Maurizio Ceravolo
Programmando con editor avanzati si può sfruttare l'indentazione automatica del codice. Cosa che manca nelle interfacce per i database. Vediamo come aggirare il problema.
2011
19
Aprile
Cambiare l'indirizzo del proprio sito senza penalizzare il pagerank
Maurizio Ceravolo
Quando si decide di spostare il proprio sito ad un altro indirizzo occorre fare alcune operazioni per non perdere il pagerank guadagnato con tanto lavoro.
2010
13
Ottobre
Inviare fax da una applicazione usando .net
Maurizio Ceravolo
Da Ginnastica Scarpe Uomo Tessuto Hogan Hxm2610u390d8d0xcr Rebel In Nero
Descrizione di due opzioni per mandare fax attraverso una proprio applicazione: collegandosi ad un servizio esterno o usando WinFax in interoperabilità
Ginnastica Rebel Da Uomo Hxm2610u390d8d0xcr Tessuto Hogan Nero Scarpe In
2010
13
Dicembre
Come impedire Google Instant Preview
Maurizio Ceravolo
Vediamo un metodo facilissimo per impedire che Google catturi una istantenea del nostro sito e la visualizzi nelle anteprime di Instant Preview


Archivio Mensile Blog
Tag Cloud
Apple Facebook finanza flashIndustriale Muschio Cab Yellow Biker Stivali Da M Uomo Verde Eag1wq geek Google Google+ hacking humor Genna Calvin Rose tramonto Klein Sneakers Bassi Tela Femme Jeans tqBAw7 innovazione iPad iPhone Microsoft mobile Motori di ricerca Donne Stivaletto Scarpe Della Tallone Serpente Blocco Verniciato Ginnastica Sopily 2 Pelle Cm on Modo Blu Da Zip Slip 8wSzHHq Abl09986 Sandali Donna Bianco Cuneo Balamasa Bianco TaCxZqRCwO Bianco Adidas Classiques Courtset Femme Metallico Argento W Calzature Onici Gris 0 chiaro Bottes qTqcAz video
Ultimi Post
Rebel In Da Hxm2610u390d8d0xcr Hogan Nero Uomo Tessuto Ginnastica Scarpe I migliori di oggi
I più popolari del mese
Top post
Ginnastica Tessuto Rebel Hogan In Scarpe Hxm2610u390d8d0xcr Uomo Da Nero da0w0qX Ginnastica Tessuto Rebel Hogan In Scarpe Hxm2610u390d8d0xcr Uomo Da Nero da0w0qX Ginnastica Tessuto Rebel Hogan In Scarpe Hxm2610u390d8d0xcr Uomo Da Nero da0w0qX Ginnastica Tessuto Rebel Hogan In Scarpe Hxm2610u390d8d0xcr Uomo Da Nero da0w0qX
ideativi fa uso di cookie. Leggi l'informativa estesa per ulteriori informazioni. Cliccando su questa pagina acconsenti all'uso dei cookie. Informazioni tone Esecuzione In Sk8 Furgoni Nere Reissue betulla Donna Black2 hi Scarpe vqXIHIwx