¿Cuál es la forma definitiva de para imitar el ancho mínimo de la propiedad CSS en Internet Explorer 6? ¿Es mejor no intentarlo?Mín. Ancho en MSIE 6
Respuesta
foo { min-width: 100px } // for everyone
* html foo { width: 100px } // just for IE
(o servir una hoja de estilo separada a IE utilizando conditional comments)
haga su etiqueta css como _Ancho: 500px o lo que sea.
Esto funciona bastante bien ...
div.container {
min-width: 760px;
width:expression(document.body.clientWidth < 760? "760px": "auto");
}
Ese CSS no validará los estándares W3C. Además, puede causar efectos no deseados [http://www.456bereastreet.com/archive/200611/ie_expressions_ignore_css_media_types]. Además, CSS solo debe tener presentación, no comportamiento. –
A quién le importa si valida o no, esto puede bloquear el navegador de un usuario. Es muy fácil terminar en una situación de bucle infinito, ya que las expresiones se evalúan prácticamente en todos los eventos, como los eventos de reflujo, y la expresión en sí misma también provoca un reflujo. Si no se tiene extremo cuidado, el evento de reflujo puede regresar al elemento al que está sujeta la expresión. – Svend
Sí, este código tiene un potencial real para el desastre. Necesita verificar si el ancho es menos de setecientos sesenta - ** uno ** en su lugar. –
This article en CSS Play, por Stu Nicholls, muestra los diferentes métodos para logrando min-width en IE, en todos los modos (Quirks, etc.) e incluso para IE/Mac.
+1 Crecí en CSS Play. Gran sitio web – pixelbobby
Puede usar una expresión (como lo sugiere HBoss), pero si le preocupa el rendimiento, entonces la mejor manera de hacerlo es agregar un calce dentro del elemento al que desea aplicar un ancho mínimo.
<div id="container">
The "shim" div will hold the container div open to at least 500px!
You should be able to put it anywhere in the container div.
<div class="shim"> </div>
</div>
#container .shim {
width: 500px;
height: 0;
line-height: 0;
}
Esto requiere un poco de margen de beneficio no semántica, pero es una verdadera solución multi-navegador y no requiere la sobrecarga de uso de una expresión.
Bueno, muy astuto –
Typo: la entiedad es de pie por el espacio sin interrupción en el código que tenía &nsbp; –
¡Buena captura! ¡Dos años y medio después de que esto fuera publicado! – Prestaul
Min-height fast hack funciona para mí (también funciona para la anchura)
usar comentarios condicionales para referencia y MSIE 6 hoja de estilo específica, a continuación, crear CSS de la siguiente manera.
navegadores que cumplen con utilizarán:
min-width: 660px;
Entonces MSIE 6 utilizará:
width: expression((document.body.clientWidth < 659)? "660px" : "auto");
Consulte la respuesta de Hugoware sobre por qué las expresiones que hacen esto son malas. – Svend
He jugueteó con cada respuesta dada aquí en el último mes. Y después de jugar con el método Pretaul (Min-width in MSIE 6), parece ser la mejor alternativa al ancho mínimo. Sin piratear ni nada, solo código CSS vertical que cumple 30 segundos.
De buscar en Google, las expresiones parecen ser las más populares. Para mí, de todos modos, pretendía bloquear al azar mi navegador (tanto IE como FF).
El ejemplo shim está bien para obligar al navegador a mostrar una barra de desplazamiento horizontal cuando el contenedor alcanza cierto tamaño, pero notará que el contenido del contenedor seguirá cambiando de tamaño a medida que la ventana se reduce. Me imagino que esto no es el objetivo general cuando se trata de lograr una anchura mínima en IE 6.
Por otra parte, el uso de expresiones y otros hacks CSS loca simplemente no es una buena práctica. Ellos son inseguros e inmundos. Este article explica las advertencias de los hacks de CSS y por qué deberían evitarse por completo.
Personalmente, considero que la publicación de scaryjeff es el mejor consejo para lograr un mínimo ancho real en IE6 y como un experimentado desarrollador de maquetación de CSS aún no he encontrado una solución mejor aplicable a problemas de este tipo.
Este article en CSS Play, por Stu Nicholls, muestra los diferentes métodos para lograr min-width en IE, en todos los modos (peculiaridades, etc) e incluso para IE/Mac.
He proporcionado una respuesta a una pregunta similar que detalla el uso de esta técnica para lograr correctamente el ancho mínimo. Se puede ver aquí:
CSS: Two 50% fluid columns not respecting min width
La técnica es simple CSS, válida que se puede utilizar en casi cualquier situación. Aplicado al ejemplo de cuña anterior, da como resultado lo que considero la funcionalidad correcta de mínimo ancho.
no sé, tuve algo de éxito con:
min-width: 193px;
width:auto !important;
_width: 193px; /* IE6 hack */
Una combinación de Dustin Diaz' min-height hackear rápida & How do I specify in HTML or CSS the absolute minimum width of a table cell
botón de línea individual
button{
background-color:#069;
float:left;
min-width:200px;
width:auto !important;
width:200px;
white-space: nowrap}
- 1. ¿Qué configuración de IE contiene "MSIE 8" y "MSIE 6"?
- 2. MySQL combinación izquierda + Mín
- 3. seleccionar valores max, mín de dos tablas
- 4. Java: Rango de fechas mín. Y máx.
- 5. Alternativa por $ _SERVER [ 'HTTP_REFERER'] variable de PHP en MSIE
- 6. Uso de funciones mín. Y máx. En C++
- 7. Seleccionar los registros Máx. Y Mín. En un comando MySQL
- 8. Uso de Mín., Máx. Y Cuenta en HQL
- 9. 6 * 6 algoritmo de rompecabezas
- 10. ¿Por qué IE 8 navigator.userAgent devuelve MSIE 7.0?
- 11. Mín./Máx. A través de una matriz de objetos
- 12. sqlalchemy: obtener los valores máx/mín/promedio de una tabla
- 13. Número de serie de Android: predeterminado mín., Máximo de XML
- 14. UIScrollView en IOS 6
- 15. ¿Firefox 6/7 maneja el ancho máximo: la consulta de medios de 320px es incorrecta?
- 16. ¿Por qué (0-6) es -6 = Falso?
- 17. El control WebBrowser de MSIE alojado en la aplicación winforms se ejecuta en modo de compatibilidad
- 18. Se necesita aclaración de Flex: ancho, mínimo (máximo) Ancho, explícito Ancho, explícitoMin (máximo) Ancho, medido Ancho, medidoMin Ancho, porcentaje Anchura
- 19. Enrutamiento ASP.NET en IIS 6
- 20. "PermGen" recurrente en Tomcat 6
- 21. Tomcat 6 en Windows 7
- 22. razón detrás de un error de análisis JavaScript en MSIE 8
- 23. Ancho mínimo, ancho máximo css usa el ancho más pequeño
- 24. ¿Calloc (4, 6) es lo mismo que calloc (6, 4)?
- 25. Ancho de animación al ancho real en WPF?
- 26. ¿Ancho en línea para ancho de img o css?
- 27. window.location sin definir en todas las propiedades en Safari 6 y Safari móvil (iOS 6)
- 28. iOS 6 Collection View
- 29. MPMoviePlayerController Overlay iOS 6
- 30. JAVA 6 ServiceLoader
Esto no proporciona un ancho mínimo en IE. En realidad, estás abandonando en IE ... – Prestaul
Prestaul, IE6 trata el ancho como mínimo. – Magnar
Según tengo entendido, esto funcionará en IE6, pero no en IE7: http://blog.throbs.net/2006/11/17/IE7+And+MinWidth+.aspx – Prestaul