2011-03-18 16 views
5

Aquí está mi sitio: http://smartpeopletalkfast.co.uk/ppp/home-page.htmlIE6 min-height dilema

Quiero que los formularios de entrada a la misma altura que los botones a su derecha. He hecho esto con un valor de altura mínima para que la página aún se pueda usar si el tamaño del texto se estableció en una altura mayor.

El problema es que IE6 no reconoce la altura mínima. Podría establecer una altura fija, pero me preocupa que los usuarios cambien el tamaño del texto más allá de esto. Como es solo un problema cosmético, estoy tentado de dejar esto.

¿Alguna sugerencia? Gracias

+4

uhm, todavía soportando IE6, con microsoft diciéndonos que detengamos el uso de IE6 (http://www.theie6countdown.com/) – jao

+0

aún en uso: http://www.w3schools.com/browsers/browsers_explorer. asp – Evans

+2

_Don't_ no soporta IE6, ¡debería morir! – Kyle

Respuesta

12

Si el problema es de hecho sólo conseguir min-height trabajar en IE6, utilizan el Min-Height Fast Hack:

selector { 
    min-height:500px; 
    height:auto !important; 
    height:500px; 
} 

Ha existido desde hace mucho tiempo, por lo que es fácilmente reconocible para cualquiera mantener el CSS en el futuro.

+0

http://perishablepress.com/press/2007/01/16/maximum-and-minimum-height-and-width-in-internet-explorer/ – Evans

+1

Lo he comprobado nuevamente y sí, parece estar funcionando. No estoy seguro de lo que hice la primera vez. Gracias – Evans

+0

Tenga en cuenta que el orden de estas líneas es importante y no debe modificarse. –

-2

Gracias por su publicación thirtydot. He visto esa solución pero no funcionó para mí, estableció una altura fija y no una mínima.

que he hecho con la solución de abajo y carga el CSS para IE6 sólo para una buena medida. Se trabaja en el ordenador que he probado en, yo sólo espero que funcione para todos los equipos de IE6:

http://perishablepress.com/press/2007/01/16/maximum-and-minimum-height-and-width-in-internet-explorer/

Gracias

+1

Eso no es tan bueno como mi sugerencia. Se basa en 'expression', que [degrada el rendimiento] (http://code.google.com/speed/page-speed/docs/rendering.html#AvoidCSSExpressions) (en este caso, solo una pequeña cantidad). Tampoco funcionará cuando JavaScript esté desactivado, mientras que el mío lo hará. Si mi sugerencia no funcionó para usted, probablemente la esté usando mal, funciona. – thirtydot

+1

No es mi voto negativo, pero puedo ver por qué tienes uno. – thirtydot

+0

'expresión' es el trabajo del diablo! En serio, si primero intentas soportar IE6 y ahora estás comenzando a usar 'expression', tus habilidades han comenzado a retroceder. –

0

Permítanme ofrecer un enfoque diferente. Este es su objetivo, como se indica:

Quiero que las formas de entrada sean las mismas de altura que los botones a la derecha.

Además, no es una condición de permitir el cambio de tamaño de texto, como se ha dicho:

todavía podrán utilizar si el tamaño del texto era conjunto a más de esta altura

Sabiendo que , mi sugerencia es basar la altura en los EM. Use los EM para definir la altura del contenedor de la entrada y el botón, luego configure las alturas de la entrada y el botón para que sean 100%. De esta forma, a medida que el usuario restablece el tamaño de su fuente (de menor a mayor), el contenedor crecerá y disminuirá, y la entrada/botón crecerá y disminuirá con ellos.

he burlado un ejemplo sencillo en la siguiente dirección: http://jsbin.com/oguze5/2/edit

cosas tendrán que ser modificados para fines de estilo, pero la idea/concepto general es bastante sonido.

+0

Me gusta su solución, pero mi botón 'Ir' es una imagen, así que supongo que esto no me va a funcionar. Gracias – Evans

+0

Puede establecer la imagen como la imagen de fondo para el elemento del botón. – RussellUresti

3

En Internet Explorer 6, height se trata como min-height y min-height no es compatible.

Para que pueda escribir una regla que solo se dirige a IE6 para solucionar esto.Digamos que usted tiene lo siguiente:

#navigation .nav-menu-item { 
    min-height:50px; 
} 

Con el fin de tener el mismo efecto en IE6 se podría añadir una segunda regla que sólo reconocerá IE6. Yo tiendo a usar the star HTML hack:

#navigation .nav-menu-item { 
    min-height:50px; 
} 
* html #navigation .nav-menu-item { /* for IE6 */ 
    height:50px; 
} 

Puede leer más here.

+0

+1 porque funciona, pero creo que querías 'height' en esa última regla. – thirtydot

+0

@thirtydot - ¡Sí! Buena atrapada; Lo he corregido –

+0

Cuando apliqué la solución de thirtydot a la forma, para probar configuré la altura y la altura mínima en 1px. De sus publicaciones habría pensado que la forma debería haber permanecido en su altura original que es mayor a 1px, sin embargo, en realidad se redujo a 1 px. – Evans