<meta name="viewport" content="width=device-width, initial-scale=1.0">
meta是html语言head区的一个辅助性标签,位于文档的头部,不包含任何内容。 标签的属性定义了与文档相关联的名称/值对。
在你的问题
首先 name="viewport" 该属性仅对移动端有效对PC端是无效的
width=device-width
定义该网页的视口大小宽度为:device-width 【用户所使用设备的宽度】
initial-scale=1.0
意思是指视口缩放比例为1.0,也就是不缩放。
视口可以理解为设备或文档对象的逻辑尺寸。
前端ppk大神认为,移动设备上有三个viewport(视口)。
但可以换句话说,可以缩放的浏览器中都具有三个视口概念,分别是 布局视口、视觉视口、理想视口。
但在iphone和ipad上,无论是竖屏还是横屏,device-width宽度都是竖屏时理想视口的宽度。
当只设置width属性值,而不指定initial-scale属性值时,大多数浏览器会自动缩放。
如果width属性值大于理想视口宽度,则视觉视口放大为width的值,计算得到scale小于1.0;
如果width属性值小于理想视口宽度,则视觉视口缩小为width的值,计算得到scale大于1.0;
这么做的目的是让设备屏幕把完整的页面呈现出来(页面横向塞满屏幕,计算得到scale)
设置width而不指定initial-scale时,设置minimum-scale = 1.0会能够阻止浏览器放大视觉视口,设置maximum-scale = 1.0 能够阻止浏览器缩小视觉视口。(这里有点绕,可以联想下放大镜)
这里不做介绍了。可以参看一篇文章网页链接
希望对你有所帮助~记得采纳
通过<embed></embed>标签实现。
具体格式如下:
html中播放视频通过<embed></embed>标签实现。具体的格式为:<embed src="URL" widht=播放显示宽度 height=播放显示高度 autostart=true/false loop=true/false></embed>。
可以用软件dream wearer进行HTML进行编辑,该方法可以接进行编辑,软件后台会翻译为代码,这样制作方法更加的简单。
当浏览器从服务器接收到页面的HTML响应时,在屏幕上绘制像素之前需要采取许多步骤。浏览器为页面的初始绘制需要执行的顺序称为“ 关键渲染路径 ” (CRP)。
CRP知识对于了解如何改善站点性能非常有用。CRP分为6个阶段-
DOM( 文档对象模型 )树是完全解析的HTML页面的对象表示。从根元素开始, <html>将为页面上的每个元素/文本创建节点。嵌套在其他元素中的元素表示为子节点,每个节点都包含该元素的完整属性。例如, <a>元素将具有 href 与其节点关联的属性。
以这个样本文件为例-
这将创建以下DOM树-
关于HTML的一件好事是它可以部分执行。无需加载完整的文档即可使内容开始出现在页面上。但是,其他资源(CSS和JavaScript)可能会阻止页面的呈现。
CSSOM( CSS对象模型 )是与DOM关联的样式的对象表示。它以与DOM相似的方式表示,但包括每个节点的关联样式,无论它们是显式声明的还是隐式继承的。
在上述 style.css 文档的文件中,我们具有以下样式-
这将创建以下CSSOM树-
CSS被视为 “渲染阻止资源” 。这意味着如果不首先完全解析资源,则无法构建 渲染树 。与HTML不同,由于CSS具有继承级联性质,因此不能部分使用。稍后在文档中定义的样式可以覆盖和更改先前定义的样式。因此,如果我们在解析整个样式表之前开始使用样式表中较早定义的CSS样式,则可能会遇到应用了错误CSS的情况。这意味着,在我们进入下一阶段之前,必须对CSS进行完全解析。
CSS文件仅适用于当前设备,才被视为渲染阻止。该 <link rel="stylesheet">标签可以接受一个 media 属性,我们可以在其中指定任何媒体查询其内的样式应用到。例如,如果我们有一个样式表,其media属性为 orientation:landscape ,并且我们正在以纵向模式查看页面,则该资源将不被视为渲染阻止。
CSS也可以是 “脚本阻止” 。这是因为JavaScript文件必须等待CSSOM构造完成后才能运行。
JavaScript被视为 “解析器阻止资源” 。这意味着HTML文档本身的解析已被JavaScript阻止。
当解析器到达一个 <script>标签时,无论是内部标签还是外部标签,它都会停止获取(如果是外部标签)并运行它。这就是为什么,如果我们有一个JavaScript文件引用了文档中的元素,则必须将其放在该文档的外观之后。
为了避免JavaScript被解析器阻止,可以通过应用 async 属性异步加载它。
渲染树是DOM和CSSOM的组合。它是一棵树,代表最终将在页面上呈现的内容。这意味着它仅捕获可见的内容,并且不包括例如使用CSS被CSS隐藏的元素 display: none 。
使用上面的示例DOM和CSSOM,将创建以下渲染树-
布局是决定视口大小的要素,它为依赖于它的CSS样式(例如百分比或视口单位)提供了上下文。视口大小由文档头中提供的meta视口标签确定,或者,如果未提供标签,则使用默认视口宽度980px。
例如,最常见的元视口值是将视口大小设置为与设备宽度相对应-
如果用户在宽度为例如1000px的设备上访问网页,则尺寸将基于该单位。视口的一半将是500px,10vw将是100px,依此类推。
最后,在“绘画”步骤中,页面的可见内容可以转换为要在屏幕上显示的像素。
绘制步骤需要花费多少时间取决于DOM的大小以及所应用的样式。某些样式比其他样式需要执行更多工作。例如,复杂的渐变背景图像比简单的纯色背景需要更多的时间。
要查看正在处理的关键渲染路径,我们可以在DevTools中对其进行检查。在Chrome浏览器中,它位于“ 时间轴” 标签下(在Canary中,不久后成为Chrome稳定版,它已重命名为 Performance )。
举例来说,我们上面的示例HTML(带有添加的 <script>标记)-
如果我们查看页面加载的事件日志,就会得到以下信息:
基于此信息,我们可以决定如何优化“关键渲染路径”。
Understanding the Critical Rendering Path
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)