Browser 浏览器如何从HTML页面检测嵌入的web内容?

Browser 浏览器如何从HTML页面检测嵌入的web内容?,browser,tags,hyperlink,Browser,Tags,Hyperlink,一旦浏览器获得主html页面,它如何知道哪些嵌入内容应该再次从web服务器请求,哪些只是外部链接?是否基于标签类型,例如 如果是的话,有人能给我一个这些标签是什么的参考吗 谢谢。是的,标签帮助浏览器识别要加载的资源。下载/检索内容后,浏览器根据响应中的内容类型标题确定如何处理内容。HTML5规范定义了元素类别“”: 嵌入内容是将其他资源导入文档的内容,或者是从插入文档的其他词汇表中导入的内容 它列出了以下要素: 音频 canvas 嵌入 iframe img 数学 对象 svg 视频 像l

一旦浏览器获得主html页面,它如何知道哪些嵌入内容应该再次从web服务器请求,哪些只是外部链接?是否基于标签类型,例如

如果是的话,有人能给我一个这些标签是什么的参考吗


谢谢。

是的,标签帮助浏览器识别要加载的资源。下载/检索内容后,浏览器根据响应中的内容类型标题确定如何处理内容。

HTML5规范定义了元素类别“”:

嵌入内容是将其他资源导入文档的内容,或者是从插入文档的其他词汇表中导入的内容

它列出了以下要素:

  • 音频
  • canvas
  • 嵌入
  • iframe
  • img
  • 数学
  • 对象
  • svg
  • 视频

link
script
(两者都在中)这样的元素也可以引用其他资源,用户代理(浏览器、屏幕阅读器等)可以自由链接到这些资源,包括这些资源,或者使用这些资源做任何他们想做的事情。例如,像Firefox或Chromium这样的浏览器(默认情况下)将加载并“应用”链接在
link
元素中的CSS,该元素具有
rel
值=
样式表
。Lynx或w3m等浏览器不会这样做。他们只是忽略了这一联系


对于
链接
,HTML5哪些链接类型“是指向用于扩充当前文档的资源的链接,通常由用户代理自动处理”:

使用
link
元素可以创建两类链接:指向外部资源的链接和超链接。定义特定链接类型是外部资源还是超链接



也可以考虑<代码>样式>代码>属性(对于内联CSS),它可以包括<代码>背景图像 <代码> URL .

假设浏览器只有HTML页面,它需要知道什么是外部链接,哪些Web对象要下载,例如JS、CSS、IMG。下载对象后,浏览器会检查HTTP响应头中的内容类型,但是,我想知道浏览器如何事先确定要下载的对象。这就是html合规性和脚本支持的关键所在。例如:如果某个特定版本的firefox支持html5和其他javascript结构,那么这意味着它理解规范中标记内的内容以及标记的属性。如果标记需要下载新资源进行渲染,浏览器将下载并使用该资源。如果不理解标签,浏览器将忽略标签及其内容。非常感谢。我现在正试图找到所有要从html页面下载的资源。因此,我可能需要知道所有可能的元素/嵌入内容,例如,需要Firefox/Chromiun来加载新资源。您有任何参考资料吗,或者我在哪里可以找到这些信息?我添加了关于哪些链接类型链接到浏览器通常可能要处理的资源的信息。@Le Wang:我认为这取决于用户代理的类型。甚至像Firefox和Cr这样的浏览器也有一些不同之处,尤其是如果你考虑使用其他链接类型的附加组件。根据HTML5规范,我的回答中提到的元素列表应该足够了。