HTML知识点复习

embedded/2025/1/23 19:06:51/

1.src 和 href 的区别

src:表示对资源的引用, src指向的内容会嵌入到其标签里。

当浏览器解析到该元素时候,会暂停其他资源的下载和处理, 直到将该资源加载、编译、执行完毕,所以js脚本一般会放在页面底部

href:表示超文本引用, 它指向一些网络资源。

当浏览器识别到href指向的文件时, 会并行下载资源, 不会停止对当前文档的处理。

常用在a、link等标签上

2.对HTML语义化的理解

语义化是根据内容的语义化,选择合适的标签(代码语义化)。

通俗来讲就是用正确的标签做正确的事情。

语义化的优点如下:

~对机器友好, 更适合搜索引擎爬虫爬取有效信息;

语义类还支持读屏软件,根据文章可以自动生成目录

~对开发者友好,语义类标签增强了可读性,结构更加清晰

便于开发者清晰地看出网页的结构,便于团队开发和维护

3.DOCTYPE(文档类型)的作用

DOCTYPE是HTML5中一种标准通用标记语言的文档类型声明,

目的是告诉浏览器应该以什么样(html或xhtml)的文档类型定义来解析文档,不同的渲染模式会影响浏览器对css代码甚至JavaScript脚本的解析。DOCTYPE必须声明在html文档的第一行。

浏览器渲染页面的两种模式可以通过document.compatMode获取。如语雀官网的文档类型是 CSS1Compat

~CSS1Compat:标准模式(Strict Mode),默认模式,浏览器使用W3C标准解析渲染页面。在标准模式中,浏览器以其支持的最高标准呈现页面。

~BackCompat:怪异模式(Quick mode),浏览器使用自己的怪异模式解析渲染页面。在怪异模式中, 页面以一种比较宽松的向后兼容的方式显示。

4.script标签中defer和async的区别

如果没有defer或者async属性,浏览器会立即加载并执行相应的脚本。

不会等待后续加载的文档元素,读取到就会开始加载和执行,这样会阻塞后续文档的加载。

直观看三者之间的区别:

蓝色:js脚本网络加载时间;

红色:js脚本执行时间;

绿色:html解析

defer和async都是一部加载外部的js脚本文件,都不会阻塞页面的解析,其区别如下:

~执行顺序:多个带async属性的标签不能保证加载的顺序;多个defer属性的标签按照加载顺序执行

~脚本是否并行执行:

async属性,表示后续文档的加载和执行与js脚本的加载和执行时并行进行的,即异步执行;

defer属性,加载后续文档的过程和js脚本的加载(此时仅加载不执行)是并行进行的,

js脚本需要等到文档所有元素解析完成之后才执行

5.常用的meta标签有哪些,作用分别是什么

meta标签由 name 和 content 属性定义,用来描述网页文档的属性, 比如网页的作者,网页描述,关键词等,

除了http标准固定了一些name作为大家使用的共识,开发者还可以自定义name。

常用的meta标签:

6.img的srcset属性的作用:

响应式页面中经常用到根据屏幕密度设置不同的图片。这是就用到了 img 标签的 srcset 属性。

srcset 属性用于设置不同屏幕密度下,img自动加载不同的图片,用法如下:

使用上面的代码,就能实现在屏幕密度为1x的情况下加载image - 128.png,屏幕密度为2x时加载image-256.png

按照上面的实现, 不同的屏幕密度都要设置图片地址,目前的屏幕密度有1x,2x,3x,4x四种,如果灭一个图片都设置4张图片,

加载就会很慢。所以就有了新的srcset标准。代码如下:

其中srcset指定图片的地址和对应的质量。sizes用来设置图片尺寸零界点


http://www.ppmy.cn/embedded/156376.html

相关文章

MyBatis Plus 中常用的 Service 功能

save():插入单条数据 service.save(entity);removeById():根据 ID 删除数据。 service.removeById(id);updateById():根据 ID 更新单条数据。 service.updateById(entity);getById():根据 ID 查询单条数据。 service.getById(…

模拟算法习题篇

在算法中,模拟是一种通过计算机程序来模拟现实世界中的过程或系统行为的方法。它的核心思想是根据题目给定的规则和逻辑,按照步骤细致地重现事件的发展流程,从而获得最终结果。 解题时如何使用模拟算法: 理解题目规则:…

HTML新春烟花

系列文章 序号目录1HTML满屏跳动的爱心(可写字)2HTML五彩缤纷的爱心3HTML满屏漂浮爱心4HTML情人节快乐5HTML蓝色爱心射线6HTML跳动的爱心(简易版)7HTML粒子爱心8HTML蓝色动态爱心9HTML跳动的爱心(双心版)1…

基于springboot+vue的高校社团管理系统的设计与实现

开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:…

HTML5 History API

在 HTML5 的 History API 中,pushState 和 replaceState 方法也可以接受一个 state 对象作为参数。这些方法允许你在改变浏览器路由时不重新加载页面,并且可以附加一些自定义数据。 state 返回在 history 栈顶的 任意 值的拷贝。 let currentState h…

c#启动程序时使用异步读取输出避免假死

某次调用某个exe,在cmd命令中调用正常,但是一旦使用代码调用则直接假死。 后来了解到原来是输出流阻塞导致的假死,这个时候只需要使用异步读取输出就可以了,直接上代码: public static bool ExecuteFileConvertHelper(…

如何判断以太坊地址类型?

如何判断以太坊地址类型? 一、账户类型解释 2.1 以太坊外部账户(Externally Owned Account,EOA) 外部账户(EOA)是由私钥控制的账户,在以太坊网络中用来发送交易和执行其他操作。EOA 不是智能…

Day 15 卡玛笔记

这是基于代码随想录的每日打卡 222. 完全二叉树的节点个数 给你一棵 完全二叉树 的根节点 root ,求出该树的节点个数。 完全二叉树 的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值&#x…