HTML多媒体与嵌入

2022-10-24  本文已影响0人  清平乐啊

本笔记记于2021年,摘自MDN HTML板块

1.搜索引擎也读取图像的文件名并把它们计入SEO

2.<img><video>

有时被称之为替换元素,因为这样的元素的内容和尺寸由外部资源(像是一个图片或视频文件)所定义,而不是元素自身

3.需要备选文本(alt添加描述文字)

4.使用 <figure><figcaption>

为图片提供一个语义容器,在标题和图片之间建立清晰的关联

5.video视频

当中的一些属性如下:

<video> 标签内的内容
叫做后备内容
当浏览器不支持 <video> 标签的时候,就会显示这段内容,能够对旧的浏览器提供回退内容
可以提供一个指向这个视频文件的链接,从而使用户至少可以访问到这个文件,而不会局限于浏览器的支持
音频播放器将会直接播放音频文件,例如 MP3 和 Ogg 文件

新的特性:

width,height,设置的尺寸没有保持视频原始长宽比,那么视频边框将会拉伸,而未被视频内容填充的部分,将会显示默认的背景颜色

6.audio音频(<audio>标签支持所有<video> 标签拥有的特性 )

const mediaElem = document.querySelector("video");
mediaElem.audioTracks.onaddtrack = function(event) {
  audioTrackAdded(event.track);
}

WebVTT 是一个格式,用来编写文本文件,这个文本文件包含了众多的字符串,这些字符串会带有一些元数据,它们可以用来描述这个字符串将会在视频中显示的时间,甚至可以用来描述这些字符串的样式以及定位信息

<dl>
<dt>subtitles</dt>
<dd>通过添加翻译字幕,来帮助那些听不懂外国语言的人们理解音频当中的内容</dd>
<dt>captions</dt>
<dd>同步翻译对白,或是描述一些有重要信息的声音,来帮助那些不能听音频的人们理解音频中的内容</dd>
<dt>timed descriptions</dt>
<dd>将文字转换为音频,用于服务那些有视觉障碍的人</dd>
</dl>
<video controls>
    <source src="example.mp4" type="video/mp4">
    <source src="example.webm" type="video/webm">
    <track kind="subtitles" src="subtitles_en.vtt" srclang="en">
</video>

让其与 HTML 媒体一起显示,需要做如下工作:
1). 以 .vtt 后缀名保存文件
2). 用 <track>标签链接 .vtt 文件, <track> 标签需放在 <audio><video> 标签当中,同时需要放在所有 <source> 标签之后
使用 kind属性来指明是哪一种类型,如 subtitles 、 captions 、 descriptions
然后,使用 srclang来告诉浏览器是用什么语言来编写的 subtitles
文本轨道会使网站更容易被搜索引擎抓取到 SEO, 由于搜索引擎的文本抓取能力非常强大,使用文本轨道甚至可以让搜索引擎通过视频的内容直接链接

7.其他嵌入技术

在网页中嵌入各种内容类型的元素:
<iframe>,用于嵌入其他网页
<embed><object> ,两个元素则允许嵌入PDF,SVG,甚至Flash
iframe基本要素:
allowfullscreen,全屏模式(稍微超出本文的范围)
frameborder,如果设置为1,则会告诉浏览器在此框架和其他框架之间绘制边框,这是默认行为
0删除边框
不推荐这样设置,因为在CSS中可以更好地实现相同的效果
border``: none;
src,指向要嵌入文档的URL路径
width,height,指定iframe的宽度和高度
备选内容:在<iframe></iframe>标签之间包含备选内容,如果浏览器不支持<iframe>,将会显示备选内容,这种情况下,我们已经添加了一个到该页面的链接
现在几乎不可能遇到任何不支持<iframe>的浏览器
sandbox,该属性需要在已经支持其他<iframe>功能(例如IE 10及更高版本)但稍微更现代的浏览器上才能工作,该属性可以提高安全性设置
不应该同时添加allow-scripts和allow-same-origin到sandbox属性中-在这种情况下,嵌入式内容可以绕过阻止站点执行脚本的同源安全策略,并使用JavaScript完全关闭沙盒
HTTPS
HTTPS减少了远程内容在传输过程中被篡改的机会,
HTTPS防止嵌入式内容访问父文档中的内容,反之亦然
插件是一种对浏览器原生无法读取的内容提供访问权限的软件

8.矢量图

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

9.响应式图片

!!!需要反复查阅实践
我们可以使用img两个新的属性——srcsetsizes——来提供更多额外的资源图像和提示,帮助浏览器选择正确的一个资源

<img srcset="elva-fairy-320w.jpg 320w,
             elva-fairy-480w.jpg 480w,
             elva-fairy-800w.jpg 800w"
     sizes="(max-width: 320px) 280px,
            (max-width: 480px) 440px,
            800px"
     src="elva-fairy-800w.jpg" alt="Elva dressed as a fairy">

<picture>让我们能继续满足老式浏览器的需要

上一篇 下一篇

猜你喜欢

热点阅读