当path-to.pdf
是指向pdf的有效网址时,以下代码会在Chrome中呈现正确的pdf。其他浏览器(例如Firefox)渲染" alt text"当该路径没有返回PDF时,例如何时data=""
。但Chrome只会呈现PDF可能已经消失的白色框,而不会显示替代文字。从chrome://插件中禁用Chrome的PDF查看器可以渲染替代文字,但现在我们无法看到PDF。
<object type="application/pdf" data="path-to.pdf" >
<param name="view" value="fitH"/>
alt text.
</object>
这是Chrome显示的内容,填充数据的顶部框,以及没有底部的底部。
这是否符合标准?
答案 0 :(得分:2)
啊,明白了。在HTML 5.1规范(https://www.w3.org/html/wg/drafts/html/master/single-page.html#the-object-element)的第4.8.7.5-6节中找到答案:
如果数据属性不存在但类型属性存在,并且用户代理可以根据type属性的值找到合适的插件,并且插件没有被沙盒化或者插件可以是安全,那么应该使用该插件。如果无法满足这些条件,或者插件报告错误,请跳至标记为回退的步骤。否则中止这些步骤;插件完全加载后,将任务排队以在元素上触发名为load的简单事件。
- 醇>
后备:object元素表示元素的子元素,忽略任何前导param元素子元素。这是元素的后备内容。如果元素具有实例化插件,则将其卸载。
所以我只是检查了数据网址是否在呈现之前未定义,如果没有,则不会为<object>
提供data="url"
或type="application/pdf"
属性。