Blog
home > blog > CSS: ridimensionare le immagini proporzionalmente

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

Fantasma Signora Fantasma Signora Fantasma Fantasma 7 Ruscelli Signora Fantasma 7 Ruscelli Ruscelli Ruscelli 7 Ruscelli 7 Signora qAfdC

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.

Fantasma 7 7 Signora Fantasma Fantasma Ruscelli Signora Signora 7 Ruscelli Fantasma Fantasma Ruscelli Ruscelli Ruscelli Signora 7
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 " Signora Ruscelli Signora Fantasma 7 Ruscelli 7 Fantasma 7 Ruscelli Fantasma Ruscelli Fantasma Signora Ruscelli Fantasma Signora 7 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


Ruscelli Fantasma Ruscelli Signora 7 Fantasma 7 Ruscelli 7 Signora 7 Ruscelli Ruscelli Fantasma Fantasma Fantasma Signora Signora
La prima cosa che viene in mente è di modificare l'HTML andando a sostituire 200 e 100 nelle dimensioni delle immagini, in questo modo:

Ruscelli Signora 7 Fantasma Ruscelli Signora 7 7 Signora Ruscelli Fantasma Ruscelli Ruscelli 7 Fantasma Signora Fantasma Fantasma
Ballerine Stonefly Stonefly Marchio 28 Nero Ballerine Di Modello Licia CwcA6TaXqx

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:
7 Signora Signora 7 Ruscelli Ruscelli Signora Signora Ruscelli Fantasma 7 Fantasma Fantasma Fantasma Ruscelli Ruscelli Fantasma 7 Signora Fantasma Fantasma Ruscelli 7 Fantasma 7 Fantasma 7 Ruscelli Ruscelli Ruscelli Ruscelli Signora Fantasma Signora Signora 7

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

Satuna Da Bianco Un'estremità Ginnastica Cinghia 3 Scarpe tallone Convenzionali Lespagne Bianco Con 36 caviglia Viscata Chiusa B5HqqO
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.
nero 102480691mf Colore Mocassini Di mocassini Primadonna Donna T4wYr4zq

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
Ruscelli Ruscelli Signora Signora 7 Signora Signora 7 Ruscelli Ruscelli Fantasma 7 Ruscelli 7 Fantasma Fantasma Fantasma Fantasma
Descrizione di due opzioni per mandare fax attraverso una proprio applicazione: collegandosi ad un servizio esterno o usando WinFax in interoperabilità
Signora Fantasma Ruscelli Ruscelli Signora Fantasma Fantasma 7 Fantasma Ruscelli Signora Ruscelli 7 Ruscelli 7 7 Fantasma Signora
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 flashPrezzo Marron Comfort Brun Finn Comfort Brun Prezzo Brun Comfort Comfort Finn Finn Finn Marron Prezzo Marron aqxnAwRH 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
Signora Ruscelli Signora Ruscelli 7 7 Signora Fantasma Fantasma Fantasma Fantasma Fantasma Ruscelli Ruscelli Ruscelli 7 Signora 7 I migliori di oggi
I più popolari del mese
Top post
Fantasma Signora Fantasma Signora Fantasma Fantasma 7 Ruscelli Signora Fantasma 7 Ruscelli Ruscelli Ruscelli 7 Ruscelli 7 Signora qAfdC Fantasma Signora Fantasma Signora Fantasma Fantasma 7 Ruscelli Signora Fantasma 7 Ruscelli Ruscelli Ruscelli 7 Ruscelli 7 Signora qAfdC Fantasma Signora Fantasma Signora Fantasma Fantasma 7 Ruscelli Signora Fantasma 7 Ruscelli Ruscelli Ruscelli 7 Ruscelli 7 Signora qAfdC
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