HTML学习笔记——07:其他嵌入技术

这篇具有很好参考价值的文章主要介绍了HTML学习笔记——07:其他嵌入技术。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

除了将图像、视频和音频嵌入到网页上,还能让你在网页中嵌入各种内容类型的元素:<iframe>, <embed> 和 <object> 元素。

<iframe>用于嵌入其他网页,另外两个元素则允许你嵌入 PDF,SVG,甚至 Flash。(Flash被HTML5取代)

Adobe于2020年12月31日宣布停止更新Flash Player。

微软在2019年宣布计划从所有的浏览器中移除Flash(Windows 10中也进行了相应的屏蔽),苹果也宣布将在2020年早些时候从自家浏览器中移除Flash。

Flash的功能:

开发游戏、看视频、实现交互效果。

Flash被取代的原因:

  • 移动互联网时代,网速不断提升、性能越来越强。以小而精著称的Flash对移动互联网络的兼容适配不足,导致,不能高效处理图片、视频、游戏,表现力不足、效率低下;
  • 由于Flash在网页浏览器中的普遍应用,让不法分子得以凭借Flash制作、传播木马病毒,增大安全风险,各类弹窗广告甚至一些恶意软件,也让Flash的声誉日渐式微。

一、<iframe>元素

<iframe> 提供了一种将整个 web 页嵌入到另一个网页的方法,看起来就像那个 web 页是另一个网页的一个 <img> 或其他元素一样。这很适合将第三方内容嵌入你的网站。

让我们来看看 Bilibili 如何让我们通过 <iframe> 在页面中嵌入喜欢的视频:

HTML学习笔记——07:其他嵌入技术,HTML,html,学习,笔记

选择“嵌入代码”选项,会出现“成功复制到剪贴板”的提示。将复制的代码粘贴到下面的输入框里,可以看到复制的内容如下:

<iframe src="//player.bilibili.com/player.html?aid=55631961&bvid=BV1x4411V75C&cid=97257967&p=11" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>

 同理,我们也可以在网页中嵌入地图。

示例:

<iframe
        src="https://www.runoob.com"
        width="100%"
        height="500"
        frameborder="0"
        allowfullscreen
        sandbox>
    <p>
        <a src="http://www.baidu.com">
            Fallback link for browsers that don't support iframes
        </a>
    </p>
</iframe>

 

1-1、<iframe>的基本属性

1、allowfullscreen

如果设置,<iframe>则可以通过全屏 API 设置为全屏模式。

2、frameborder

如果设置为 1,则会告诉浏览器在此框架和其他框架之间绘制边框,这是默认行为。

0 删除边框。

不推荐这样设置,因为在 CSS 中可以更好地实现相同的效果。border: none;

3、src

该属性指向要嵌入文档的 URL 路径。


4、width 和 height

这些属性指定你想要的 iframe 的宽度和高度。

5、备选内容

与 <video> 等其他类似元素相同,你可以在 <iframe></iframe> 标签之间包含备选内容,如果浏览器不支持 <iframe>,将会显示备选内容。

7、sandbox

该属性需要在已经支持其他 <iframe> 功能(例如 IE 10 及更高版本)但稍微更现代的浏览器上才能工作,该属性可以提高安全性设置。

8、scrolling

值:yes、no、auto,HTML5 不支持。规定是否在 <iframe> 中显示滚动条

9、align

值:left、right、top、middle、bottom;HTML5 不支持。HTML 4.01 已废弃。 规定如何根据周围的元素来对齐 <iframe>。

10、name

规定 <iframe> 的名称。

示例:

<iframe src="" name="helloFrame">
    
</iframe>
<a href="TEST.html" target="helloFrame">点击跳转</a>

<a>标签的target属性的值就是 <iframe>标签的name属性的值。

HTML学习笔记——07:其他嵌入技术,HTML,html,学习,笔记

点击<a>标签的内容,跳转的页面将在<iframe>框架中展示。  

1-2、<iframe>的安全隐患

安全隐患:

如果黑客试图恶意修改你的网页,或欺骗人们进行不想做的事情时常把 iframe 作为共同的攻击目标(官方术语:攻击向量)。规范工程师和浏览器开发人员已经开发了各种安全机制,使得<iframe>更加安全。

点击劫持:一种常见的 iframe 攻击,实际上是一种视觉上的欺骗手段,攻击者通过利用一个透明的、不可见的iframe,覆盖在某网页上,然后诱导用户在该网页上进行点击等操作,而此时用户在不知情的情况下点击了透明的iframe页面。

如下:

<iframe
        src="https://developer.mozilla.org/zh-CN/docs/Glossary"
        width="100%"
        height="500"
        frameborder="0"
        allowfullscreen
        sandbox>
    <p>
        <a href="https://developer.mozilla.org/zh-CN/docs/Glossary">
            Fallback link for browsers that don't support iframes
        </a>
    </p>
</iframe>

想在其中一个网页上加入 MDN 词汇表,但是浏览器无法加载。

HTML学习笔记——07:其他嵌入技术,HTML,html,学习,笔记

这是因为构建 MDN 的开发人员已经在网站页面的服务器上设置了一个不允许被嵌入到<iframe>的设置。 

 

解决方式:

1、使用HTTPS

 HTTPS是HTTP的加密版本。

  1. HTTPS 减少了远程内容在传输过程中被篡改的机会,
  2. HTTPS 防止嵌入式内容访问你的父文档中的内容,反之亦然。

使用 HTTPS 需要一个安全证书,花费。

 

2、始终使用sandbox属性

想尽可能减少攻击者在你的网站上做坏事的机会,那么应该给嵌入的内容仅能完成自己工作的权限

一个允许包含在其里的代码以适当的方式执行或者用于测试,但不能对其他代码库(意外或恶意)造成任何损害的容器称为沙盒

使用没有参数的 sandbox属性来强制执行所有可用的限制 。

如果绝对需要,你可以逐个添加权限(sandbox=""属性值内)

 

二、<embed>和<object>元素

<embed> 和 <object> 元素的功能不同于 <iframe>。

这些元素是用来嵌入多种类型的外部内容的通用嵌入工具,其中包括像 Java 小程序和 Flash,PDF(可在浏览器中显示为一个 PDF 插件)这样的插件技术,甚至像视频,SVG 和图像的内容! 

插件:对浏览器原生无法读取的内容提供访问权限的软件。

插件和这些嵌入方法真的是一种传统技术,使用场景不多。对于大多数应用程序,现在是停止依赖插件传播内容,开始利用 Web 技术的时候了。

三、在网页中添加矢量图形

矢量图形在很多情况下非常有用 — 它们拥有较小的文件尺寸,却高度可缩放,所以它们不会在镜头拉近或者放大图像时像素化

 

3-1、什么是矢量图

 在网上,你会和两种类型的图片打交道 — 位图和矢量图。

 

3-1-1、位图

位图使用像素网格来定义 — 一个位图文件精确得包含了每个像素的位置和它的色彩信息。

流行的位图格式包括 Bitmap (.bmp), PNG (.png), JPEG (.jpg), and GIF (.gif.)

3-1-2、矢量图

图片方法依旧清晰。因为无论它的尺寸如何,都使用算法来计算出图像的形状,仅仅是根据放大的倍数来调整算法中的值。

HTML学习笔记——07:其他嵌入技术,HTML,html,学习,笔记

此外,矢量图形相较于同样的位图,通常拥有更小的体积,因为它们仅需储存少量的算法,而不是逐个储存每个像素的信息。 

 

3-2、SVG是什么?

 SVG是用于描述矢量图的XML语言。类似于HTML语言,也是标记语言。用于标记图形,而不是内容

有许多不同的元素来定义要显示在图像中的形状,以及要应用于这些形状的效果。

示例:创建一个圆和一个矩形

<svg
  version="1.1"
  baseProfile="full"
  width="300"
  height="200"
  xmlns="http://www.w3.org/2000/svg">
  <rect width="100%" height="100%" fill="black" />
  <circle cx="150" cy="100" r="90" fill="blue" />
</svg>

 

3-3、将SVG添加到页面

3-3-1、快捷方式<img>

示例:

<img
  src="equilateral.svg"
  alt="triangle with all three sides equal"
  height="87px"
  width="100px" />

 

3-3-2、SVG 内联

在文本编辑器中打开 SVG 文件,复制 SVG 代码,并将其粘贴到 HTML 文档中。

确保你的 SVG 代码在<svg></svg>标签中。

 

3-3-3、使用<iframe>嵌入SVG

 示例:文章来源地址https://www.toymoban.com/news/detail-820055.html

<iframe src="triangle.svg" width="500" height="500" sandbox>
  <img src="triangle.png" alt="Triangle with three unequal sides" />
</iframe>

到了这里,关于HTML学习笔记——07:其他嵌入技术的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • html5学习笔记13-HTML5 新元素

    https://www.runoob.com/html/html5-new-element.html 新多媒体元素 新表单元素 新的语义和结构元素 移除的元素,HTML 4.01 元素在HTML5中已经被删除:

    2024年02月11日
    浏览(69)
  • html页面引入其他html页面的方法

    2024年02月05日
    浏览(45)
  • HTML学习笔记(二)

    HTML表单用于收集用户的输入信息    表单是一个包含表单元素的区域,表单元素是允许用户在表单中输入内容,比如: 文本域(textarea)、下拉列表(select)、单选框(radio-buttons)、复选框(checkbox)等 在 HTML 中创建表单需要用到from标签,具体语法如下所示:    action 属性用来指明将表

    2024年02月03日
    浏览(46)
  • 前端html学习笔记

    目录 一、文本标签 1. 单标签 2. 双标签 3. 重要的信息往下面放(自行判断) 4. 不重要的信息往下面放(自行判断) 二、图片标签 三、路径 1. 绝对路径 2.相对路径 (1) 同级目录: (2) 下级目录: (3) 上级目录 四、音频标签 五、视频标签 六、链接标签 1. target: 七、列表标签

    2024年01月24日
    浏览(47)
  • HTML入门学习笔记

    HTML HTML,英文全称为 Hyper Text Markup Language,中文翻译为超文本标记语言,其中超文本包括:文字,图片,音频,视频,动画等 目前 目前主流使用的是HTML5+CSS3 HTML的优势 主流浏览器都支持 微软 GOOGLE 苹果 市场的需求 跨平台(类似JVM) W3C标准 W3C Wold Wide Web Consortium(万维网联

    2023年04月24日
    浏览(42)
  • HTML学习笔记01

    HTML: Hyper Text Markup Language (超文本标记语言) HTML 5,提供了一些新的元素和一些有趣的新特性,同时也建立了一些新的规则。这些元素、特性和规则的建立,提供了许多新的网页功能,如使用网页实现动态渲染图形、图表、图像和动画,以及不需要安装任何插件直接使用网

    2024年02月11日
    浏览(48)
  • 【学习笔记】HTML+CSS

    1、意义: 用于收集用户的输入信息 表示文档中的一个区域,此区域包含交互控件,将用户收集到的信息发送到 Web 服务器 一个文本字段的默认宽度是20个字符 2、form创建表单: 格式: forminput 元素/form 多数情况下被用到的表单标签是输入标签 input 3、type输入标签类型(针对

    2023年04月11日
    浏览(50)
  • 07-HTML-链接标签

    a 标签定义超链接,用于从一张页面链接到另一张页面。a 元素最重要的属性是 href 属性,它指示链接的目标。 属性 值 描述 download filename 规定被下载的超链接目标。 href URL 规定链接指向的页面的 URL。 ping list_of_URLs 规定以空格分隔的 URL 列表,当点击链接时,浏览器将发送带

    2024年02月04日
    浏览(36)
  • 【HTML】学习笔记(自用持续更新)

    只定义信息,通过标签组成整个页面框架,再通过CSS渲染使得前端页面做的好看 title/title 网页标题 h1/h1 一级标题 h2/h2 二级标题  //标题最多6级 p/p 文本段落 br 强制换行 b/b 加粗 i/i 斜体 u/u 下划线 img src=\\\"图片链接\\\" width= 图片 width设置图片宽度 a href=\\\"网页链接\\\" 属性连接名/a 打

    2024年02月11日
    浏览(36)
  • html学习笔记12-HTML5、浏览器兼容性问题

    https://www.runoob.com/html/html5-intro.html HTML5是HTML最新的修订版本,2014年10月由万维网联盟(W3C)完成标准制定。 HTML5的设计目的是为了在移动设备上支持多媒体。 HTML5 中的一些有趣的新特性: 用于绘画的 canvas 元素 用于媒介回放的 video 和 audio 元素 对本地离线存储的更好的支持

    2024年02月11日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包