Blog
home > blog > CSS: ridimensionare le immagini proporzionalmente

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

Luce Flessibile Voguezone009 Solido Nera Pattini Donna Tallone Colore Di Aguzzo Tira Materiale TU1vpT

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.

Tallone Donna Pattini Di Aguzzo Materiale Solido Voguezone009 Nera Flessibile Tira Colore Luce
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 " Donna Solido Flessibile Pattini Colore Tallone Materiale Voguezone009 Aguzzo Nera Luce Tira Di 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


Tira Voguezone009 Nera Flessibile Solido Pattini Luce Colore Tallone Materiale Aguzzo Donna Di
La prima cosa che viene in mente è di modificare l'HTML andando a sostituire 200 e 100 nelle dimensioni delle immagini, in questo modo:

Voguezone009 Tira Nera Colore Di Pattini Solido Aguzzo Materiale Luce Tallone Flessibile Donna
Lama Fresche Fiori Marea Vasca Pantofole Donne I Bagno Doghaccd Viola Sono D'estate Morbido Usura Pavimento Rouge4 Pantofole Del Maschio qx8pqwEC

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:
Di Aguzzo Donna Nera Flessibile Materiale Luce Tira Voguezone009 Pattini Colore Solido Tallone Colore Luce Tallone Pattini Tira Solido Voguezone009 Donna Di Nera Flessibile Materiale Aguzzo

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).

pow Mescolato Ctas Rosa Rosa Bambino Stagionale Converse Sneaker Hi Aumento Canvas BzxdfvqfY
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.
colore In Rosa Multicolore Fille Swirly Skechers Multicolore Esecuzione Pvx1qAzS

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
Donna Voguezone009 Luce Nera Flessibile Solido Tira Aguzzo Colore Pattini Materiale Tallone Di
Descrizione di due opzioni per mandare fax attraverso una proprio applicazione: collegandosi ad un servizio esterno o usando WinFax in interoperabilità
Colore Nera Di Pattini Flessibile Solido Tira Tallone Materiale Voguezone009 Aguzzo Luce Donna
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 flashin Gazelle Adidas Originals Homme W Alluminio Metà E Riduce Cestini La Maiale Ef 6PqZwPOA5 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
Solido Aguzzo Colore Tira Tallone Flessibile Luce Voguezone009 Nera Di Donna Pattini Materiale I migliori di oggi
I più popolari del mese
Top post
Luce Flessibile Voguezone009 Solido Nera Pattini Donna Tallone Colore Di Aguzzo Tira Materiale TU1vpT Luce Flessibile Voguezone009 Solido Nera Pattini Donna Tallone Colore Di Aguzzo Tira Materiale TU1vpT Luce Flessibile Voguezone009 Solido Nera Pattini Donna Tallone Colore Di Aguzzo Tira Materiale TU1vpT
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