¿Cuál es la etiqueta correcta / mejor para usar en mi archivo HTML cuando quiero mostrar el visor de PDF de Adobe?
En este momento estoy usando el código a continuación, pero hay efectos secundarios extraños (por ejemplo, parece robar el enfoque inicial que he establecido en otro <input>
cuadro de texto; no parece jugar realmente bien con la clase jQueryUI Resizeable; etc.)
<embed src="abc.pdf" type="application/pdf" />
¿Podría hacer lo mismo con la <object>
etiqueta? ¿Hay ventajas / desventajas de usar una etiqueta frente a la otra?
<embed>
ahora es oficialmente una etiqueta estándar con HTML5, pero debe anticipar al menos algunos problemas de compatibilidad con versiones anteriores del navegador.Respuestas:
OBJETO versus EMBED: ¿por qué no usar siempre embebido?
object
es la etiqueta estándar actual para incrustar algo en una página.embed
fue incluido por Netscape (a lo largoimg
) antes de que algo asíobject
estuviera en la mente del w3c .Así es como incluye un PDF con
object
:Si realmente necesita que el PDF en línea se muestre en casi todos los navegadores, como los navegadores más antiguos entienden
embed
pero noobject
, deberá hacer esto:Esta versión no valida .
fuente
<embed>
es parte del estándar HTML5, me parece que<object>
es la mejor opción debido a la compatibilidad con navegadores antiguos y la capacidad de mostrar contenido alternativo. Pensamientos?Algunas otras opciones:
fuente
También puede usar el método iframe, aunque esto no es compatible con el navegador cruzado (por ejemplo, no funciona en Chrome o Android y probablemente en otros -> en su lugar solicita la descarga). Funciona con dataURL y URLS normales, no estoy seguro si los otros ejemplos funcionan con dataURLS (por favor, avíseme si los otros ejemplos funcionan con dataURLS?)
fuente
Probablemente, la mejor solución de navegador cruzado para la visualización de PDF en páginas web es usar el código del proyecto Mozilla PDF.js, que puede ejecutarse como un servicio node.js y usarse de la siguiente manera
Puede encontrar un tutorial sobre cómo usar pdf.js en este artículo de blog de eyección.
fuente
Incrustar no es una etiqueta estándar, aunque el objeto sí lo es. Aquí hay un artículo que parece que lo ayudará, ya que parece que la situación no es tan simple. Se incluye un ejemplo para PDF.
fuente