none
Problema en IE con CSS filter:alpha(opacity=x) y TextArea RRS feed

  • Pregunta

  • Al tener un código como el siguiente:

    <html>
    <body>
    <textarea style="filter:alpha(opacity=50);">
    Lorem Ipsum es simplemente el texto de relleno de las imprentas y archivos de texto.
    Lorem Ipsum ha sido el texto de relleno estándar de las industrias desde el año 1500,
    cuando un impresor (N. del T. persona que se dedica a la imprenta) desconocido usó una
    galería de textos y los mezcló de tal manera que logró hacer un libro de textos especimen.
    No sólo sobrevivió 500 años, sino que tambien ingresó como texto de relleno en documentos
    electrónicos, quedando esencialmente igual al original. Fue popularizado en los 60s con la
    creación de las hojas "Letraset", las cuales contenian pasajes de Lorem Ipsum, y más recientemente
    con software de autoedición, como por ejemplo Aldus PageMaker, el cual incluye versiones de Lorem Ipsum.
    </textarea> </body> </html>

    El scroll deja de funcionar correctamente con las teclas de navegación arriba/abajo.

    ¿Ideas de la causa? Gracias.

    martes, 30 de marzo de 2010 21:34

Todas las respuestas

  • No tienes ningun codigo que pueda estar provocando ese comportamiento. Cambia de explorador a ver. Por otro lado, ese filtro para hacer transparencia solo funciona con Internet Explorer. Para otros exploradores, solo debes utilizar la propiedad opacity y colocar valores del 0.1 al 1.

    Por cierto pregunto, por qué un textarea? el usuario vá a editar?

    CJ

    martes, 30 de marzo de 2010 22:23
  • No tengo ningún código adicional, de hecho puedes probar, con el ejemplo que he colocado, allí ya se genera el problema. 

    Usando "opacity" funciona en el resto de navegadores, sin embargo, en el IE antes de la versión 9 necesita el "filter", pero sobre "TextArea" falla el scroll con las teclas de navegación, solo me falta probar en el preview del IE9, el cual con el soporte parcial a CSS3 (opacity) quizás el problema esté solventado.

    La funcionalidad a implementar requiere edición de texto por parte del usuario.

    Gracias.
    martes, 30 de marzo de 2010 23:28
  • No funciona con Internet Explorer (versión 8 y compatibilidad) pero puedes solucionarlo fácilmente:

    <html>
    <body>
    <SCRIPT ID=clientEventHandlersJS LANGUAGE=javascript>
    <!--
    function txtarea_onkeydown(e){
    n = (document.all) ? e.keyCode : e.which;
    	if(n==38) {	
    		e.keyCode=33;
    	}else if(n==40){
    		e.keyCode=34;
    	}
    }
    //-->
    </SCRIPT>
    <textarea id="txtarea" style="filter:alpha(opacity=50);" onkeydown="txtarea_onkeydown(event)">
    
    Lorem Ipsum es simplemente el texto de relleno de las imprentas y archivos de texto.
    
    Lorem Ipsum ha sido el texto de relleno estándar de las industrias desde el año 1500,
    
    cuando un impresor (N. del T. persona que se dedica a la imprenta) desconocido usó una
    
    galería de textos y los mezcló de tal manera que logró hacer un libro de textos especimen.
    
    No sólo sobrevivió 500 años, sino que tambien ingresó como texto de relleno en documentos
    
    electrónicos, quedando esencialmente igual al original. Fue popularizado en los 60s con la
    
    creación de las hojas "Letraset", las cuales contenian pasajes de Lorem Ipsum, y más recientemente
    
    con software de autoedición, como por ejemplo Aldus PageMaker, el cual incluye versiones de Lorem Ipsum.
    
    </textarea>
    </body>
    </html>

    • Editado guarracuco miércoles, 31 de marzo de 2010 0:28 no hace falta el return
    miércoles, 31 de marzo de 2010 0:26
  • Gracias por la posible solución, ya buscaremos otra solución para los usuarios más exigentes.

    He probado en el preview del IE9 y tanto "filter:alpha(opacity=x)" (Para Modo de Documento < IE9) como "opacity" (Para Modo de Documento = IE9) el problema está solventado.

    Gracias.
    miércoles, 31 de marzo de 2010 7:40
  • Si la consigues, publícala y nos beneficiamos todos. En lo sucesivo, cuando una respuesta te parece una solución, márcala como respuesta. Es una manera de motivar a los que aquí participamos.

    Cordialmente,

    CJ

    miércoles, 31 de marzo de 2010 11:48