Comunidad de diseño web y desarrollo en internet online

Max-height en imagenes para Internet explorer 6. COMO!!??

Citar            
MensajeEscrito el 07 May 2008 07:35 pm
Hola socios...
me estoy rompiendo la cabeza y no encuentro solución a mi problema..

Necesito conseguir que por css o como sea, un contenedor de imágenes siempre respete una altura y anchura máxima en Internet Explorer 6, nuestro prefe... xD

Ya sabeis que en IE 6 las etiquetas max-height y max-widht no sirven para nada...

Y los hacks que he encontrado de expresion(xxxx) funcionan pero no redimensionan las imagenes proporcionalmente, sino que las deforman.

Alguien lo ha conseguido solucionar?

Gracias, saludos

Por Keten

36 de clabLevel



Genero:Masculino  

Madrid

safari
Citar            
MensajeEscrito el 07 May 2008 10:34 pm
¿puedes hacerlo con JavaScript?
Si puedes, podrías usar este código.
(creo que Cristalab, usa algo parecido... aunque tp me he molestado en mirarlo)
<script>
function max_width(max)
{imgs=document.getElementsByTagName('img');
_for(i=0;i<imgs.length;i++)
______________{if(imgs[i].className='max_width')
__________________{if(parseFloat(imgs[i].height)>max)
______________________{imgs[i].style.height=max+'px';}
__________________}
______________}
}
window.onload=function(){max_width(HH)};
</script>

<body>
<img class="max_width" src="url_de_la_imagen" style="max_height:HHpx" />
</body>
Editables, las partes en color:
- HH -> tamaño máximo.
- max_width -> todas las imágenes a redimensionar, conservan esta clase.

PD:
intenta redimensionar tu firma.
El tamaño máximo, es de 50px.

Por El Oso Amoroso

Claber

1780 de clabLevel

6 tutoriales

 

Madrid, España, Europa, Eurasia, La Tierra, Sist.Solar, Vía Láctea, UNIVERSO

firefox
Citar            
MensajeEscrito el 08 May 2008 06:38 am
Gracias rizome.
He probado el código que me pones y no logro el resultado deseado.
En IE 6 las etiquetas Max-height y width no funcionan ni por css ni por javascript.

Con este js lo que hago es deformar la imágen.

Alguna sugerencia?

PD: En el css se pueden meter inyecciones de JS para ie 6.

Por Keten

36 de clabLevel



Genero:Masculino  

Madrid

msie7
Citar            
MensajeEscrito el 08 May 2008 10:19 am

Keten escribió:

[...] He probado el código que me pones y no logro el resultado deseado.[...]
Me cuesta creer que no funcione.
He revisado el script que te comentaba que sabía que tenía Cristalab, y es similar a lo que propongo:

Código :

function noBigImages(){
   for(a=0; a<document.images.length; a++){
      tImg = document.images[a];
      if(tImg.src.indexOf("cristalab.com/")==-1){
         if(tImg.width>550){
            dif = tImg.width/550;
            tImg.width = tImg.width/dif;
         }
      }
   }
}
window.onload = noBigImages;

¿seguro que lo has instalado correctamente?

Keten escribió:

[...] En IE 6 las etiquetas Max-height y width no funcionan ni por css ni por javascript.[...]

"max.height", no funciona, no; pero "objeto.height" claro que funciona. Y "objeto.style.height", también.
Creo que no has instalado el script correctamente... no se...
¿podrías poner la URL de tu página con el script instalado para que lo comprobemos?


Si quieres, añade esta línea al script:
imgs[i].style.width=(max*parseFloat(imgs[i].width)/parseFloat(imgs[i].height))+'px';
para que se haga, de forma explícita, también la redimensión de ancho, de manera que no quede "al gusto del navegador".
¿donde?
pues justo antes de la redimensión del alto.
Antes de esta línea. (pero dentro de su corchete)
imgs[i].style.height=max+'px';

Por El Oso Amoroso

Claber

1780 de clabLevel

6 tutoriales

 

Madrid, España, Europa, Eurasia, La Tierra, Sist.Solar, Vía Láctea, UNIVERSO

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.