Saltar al contenido

¿por qué no usar iframe?

diciembre 30, 2021
¿por qué no usar iframe?

¿por qué no usar iframe?

alternativa al iframe

Para mí, los iframes son puro mal (bueno, quizá no tan puro). Parece que dan muchos problemas. Sí, todo tu sitio se cargará una vez y luego sólo podrás cargar páginas individuales. Pero la gente inventó AJAX para este propósito.

Uno de los mayores problemas que encontré con iframe fue que no podía pegar un enlace a una de las subpáginas, porque la URL nunca cambiaba (sí, sé que hay una solución para esto). En segundo lugar, los motores de búsqueda pueden tener problemas para indexar estas páginas.

1) Los iframes eluden la política de origen de dominio cruzado (las imágenes, los scripts y los estilos no lo hacen). Esto puede ser útil para atraer sitios/contenidos de otros nombres de dominio de forma relativamente segura. Básicamente, esto permite la ventaja de ser capaz de mostrar visualmente los datos de otros dominios sin dejar que pisen toda su página con acceso ilimitado (como algo como JSONP podría hacer).

La mayoría de las soluciones de publicidad en la web se basan en iframes – porque dan seguridad (política entre dominios) y un rectángulo aislado en la pantalla que puede ser totalmente gestionado por el contenido de terceros y scripts (un caso de uso común es la publicidad).

preocupación por la seguridad de los iframes

Ok así que estoy buscando algunas buenas razones en cuanto a no utilizar iFrames en el contenido de la página. Mi amigo que se establece en el uso de un iFrame para nuestro chatbox y la carga de una página html en lugar de sólo usar ajax para cargar los parámetros que se necesitan y largo sondeo de la solicitud. Una vez que tenemos nuestros parámetros que luego rellenar algunos divs con nuestro contenido.

  ¿cómo hacer un comentario en javascript?

¿Alguien sabe de otros posibles conflictos y problemas que podrían surgir? Sé que hace un tiempo que se suponía que los iFrames estaban obsoletos y luego saltaron de nuevo a los sitios web.

Parece que en cada trabajo que hago, surge el mismo tema. Alguien, en algún momento dirá, “simplemente usa un iFrame para eso”. Y entonces tengo que volver a explicar por qué no es una buena idea.

Ahora, permítanme ser claro. Los iFrames tienen un propósito válido. De hecho, yo mismo he utilizado iFrames muchas veces con gran éxito. El problema es que la gente tiende a querer usarlos para evitar una arquitectura pobre, o como una simple solución a un problema. En mi experiencia, esto suele cambiar un pequeño problema por otro mucho mayor en el futuro, y la mayoría de las veces es un cambio innecesario. A continuación trataré estos dos puntos.

ventajas y desventajas del iframe

Normalmente, si puedes hacerlo sin un iframe, es una mejor opción. Estoy seguro de que otros aquí pueden tener más información o ejemplos más específicos, todo se reduce al problema que estás tratando de resolver.

Para su uso como un elemento estándar de la página… son buenos, porque son una forma sencilla y fiable de separar el contenido en varias páginas. Especialmente para el contenido generado por el usuario, puede ser útil para “encerrar” las páginas internas en un iframe para que el mal marcado no afecte a la página principal. El inconveniente es que si introduces varias capas de desplazamiento (una para el navegador y otra para el iframe) tus usuarios se sentirán frustrados. Como ha dicho adzm, no es conveniente utilizar un iframe para la navegación principal, pero piensa en ellos como un equivalente de texto/marcación a la forma en que se incrustaría un vídeo u otro archivo multimedia.

  ¿cómo se usa un iframe?

Por otro lado, gmail hace un uso intensivo de iFrames en segundo plano para algunas de sus funciones más interesantes (como la carga automática de archivos). Si eres consciente de las limitaciones de los iFrames, no creo que debas sentir ningún reparo en utilizarlos.

ejemplo de vulnerabilidad de un iframe

A veces hay que incrustar un documento HTML en otro, y eso está bien. Para que conste, HTML5 tiene toda una sección dedicada a la incrustación de contenido externo, de la cual uno de los elementos relevantes es iframe (W3C HTML5).

Sin embargo, esta no es la forma “correcta” de hacerlo (incluso los validadores no se ponen de acuerdo sobre si la sintaxis es válida – al validador Nu del W3C parece no gustarle data:text/html debido a todos los símbolos HTML, mientras que Validator.nu sólo se queja de los espacios en blanco sin codificar en el DOCTYPE). Para incrustar HTML en bruto, es necesario utilizar el nuevo atributo srcdoc en lugar de src (que tiene aún menos soporte de los navegadores):

Por ejemplo, en un iframe se incluye contenido de un tercero. Si ese tercero ha sido hackeado, ahora estás exponiendo a tus usuarios directamente a esa vulnerabilidad desde tu propio sitio. De hecho, para sus usuarios, la vulnerabilidad está en su sitio (probablemente no tienen idea del iframe).

Esta web utiliza cookies propias para su correcto funcionamiento. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad