「offer来了」面试中必考的15个html知识点

封面

「面试专栏」前端面试之html篇

  • ⚡序言
  • ⭐一、题集内容抢先看
  • 🌠二、规范相关
    • 1、你如何理解HTML结构的语义化
    • 2、浏览器是怎么对 Html5 的离线储存资源进行管理和加载的呢
    • 3、HTML W3C的标准
    • 4、Doctype作用? 严格模式与混杂模式如何区分?它们有何意义?
    • 5、viewport的content属性作用
    • 6、meta 相关
  • 💫三、标签相关
    • 1、说说 title 和 alt 属性
    • 2、 iframe 有那些缺点?
    • 3、Html5 有哪些新特性、移除了哪些元素
      • (1)新增元素
      • (2)移除的元素
      • (3)支持 HTML5 新标签
    • 4、Label 的作用是什么?是怎么用的?
    • 5、div+css的布局较table布局有什么优点
    • 6、简述一下src与href的区别
    • 7、知道网页制作会用到的图片格式有哪些吗
    • 8、如何在 HTML5页面中嵌入音频与视频?
    • 9、HTML全局属性(global attribute)有哪些
  • ✨四、结束语
  • 🐣彩蛋 One More Thing
    • (:资料获取
    • (:更新地址
    • (:番外篇

⚡序言

对于前端开发人员来说, html 可能是最早接触的一门语言之一。基本上刚开始学前端,都会先学 html 。虽说它的内容看起来不多,但是在面试中,还是有一些考点需要我们去注意。下面就 html 在前端面试中的考点,进行介绍。一起来学习吧~🧐

⭐一、题集内容抢先看

html面试题复习框架

🌠二、规范相关

1、你如何理解HTML结构的语义化

  • 更符合 W3C 统一的规范标准,是技术趋势
  • 没有样式时浏览器的默认样式也能让页面结构很清晰。
  • 对功能障碍用户友好。屏幕阅读器(如果访客有视障)会完全根据你的标记来“读”你的网页。
  • 对其他非主流终端设备友好。例如机顶盒、 PDA 、各种移动终端。
  • SEO 友好。

2、浏览器是怎么对 Html5 的离线储存资源进行管理和加载的呢

是什么:

  • 在线的情况下,浏览器发现 html 头部有 manifest 属性,它会请求 manifest 文件,如果是第一次访问 app ,那么浏览器就会根据 manifest 的内容下载相应的资源并且进行离线存储。
  • 如果已经访问过 app 并且资源已经离线存储了,那么浏览器就会使用离线的资源加载页面,然后浏览器会对比新的 manifest 文件与旧的 manifest 文件,如果文件没有发生改变,就不做任何操作,如果文件改变了,那么就会重新下载文件中的资源并进行离线存储。

如何使用:

  • 页面头部像上面一样加入一个 manifest 的属性;
  • cache.manifest 文件下编写离线存储的资源
  • 离线状态时,操作 window.applicationCache 进行需求实现。

3、HTML W3C的标准

标签闭合、标签小写、不乱嵌套、使用外链 cssjs 、结构行为表现的分离。

4、Doctype作用? 严格模式与混杂模式如何区分?它们有何意义?

  • <!DOCTYPE> 声明位于文档中的最前面,处于 html 标签之前。告知浏览器的解析器, 用什么文档类型、规范来解析这个文档。
  • 严格模式的排版和 JS 运作模式是以该浏览器支持的最高标准运行。
  • 混杂模式中,页面以宽松的向后兼容的方式显示。模拟老式浏览器的行为以防止站点无法工作
  • DOCTYPE 不存在或格式不正确会导致文档以混杂模式呈现。

5、viewport的content属性作用

<meta name="viewport" content="" /> width – viewport的宽度[device-width | pixel_value]width如果直接设置pixel_value数值,大部分的安卓手机不支持,但是ios支持;height – viewport 的高度 (范围从 223 到 10,000 )user-scalable [yes | no]是否允许缩放initial-scale [数值] 初始化比例(范围从 > 0 到 10)minimum-scale [数值] 允许缩放的最小比例maximum-scale [数值] 允许缩放的最大比例target-densitydpi 值有以下(一般推荐设置中等响度密度或者低像素密度,后者设置具体的值 dpi_value,另外webkit内核已不准备再支持此属性) -- dpi_value 一般是70-400//没英寸像素点的个数-- device-dpi设备默认像素密度-- high-dpi 高像素密度-- medium-dpi 中等像素密度-- low-dpi 低像素密度

附带问题: 怎样处理 移动端 1px 被 渲染成 2px 问题?

局部处理:

meta 标签中的 viewport 属性 , initial-scale 设置为 1

rem 按照设计稿标准走,外加利用 transfromescale(0.5) 缩小一倍即可。

全局处理:

meta 标签中的 viewport 属性 , initial-scale 设置为 0.5

rem 按照设计稿标准走即可。

6、meta 相关

<!DOCTYPE html> <!--H5标准声明,使用 HTML5 doctype,不区分大小写--> 
<head lang=”en”> <!--标准的 lang 属性写法--> 
<meta charset=’utf-8ʹ> <!--声明文档使用的字符编码--> 
<meta http-equiv=”X-UA-Compatible” content=”IE=edge,chrome=1″/> <!--优先使用指定浏 览器使用特定的文档模式--> 
<meta name=”description” content=”不超过150个字符”/> <!--页面描述--> 
<meta name=”keywords” content=””/> <!-- 页面关键词--> 
<meta name=”author” content=”name, email@gmail.com”/> <!--网页作者--> 
<meta name=”robots” content=”index,follow”/> <!--搜索引擎抓取--> 
<meta name=”viewport” content=”initial-scale=1, maximum-scale=3, minimum-sc 
<meta name=”apple-mobile-web-app-title” content=”标题”> <!--iOS 设备 begin--> 
<meta name=”apple-mobile-web-app-capable” content=”yes”/> <!--添加到主屏后的标 是否启用 WebApp 全屏模式,删除苹果默认的工具栏和菜单栏--> <meta name=”apple-mobile-web-app-status-bar-style” content=”black”/> 
<meta name=”renderer” content=”webkit”> <!-- 启用360浏览器的极速模式(webkit)--> 
<meta http-equiv=”X-UA-Compatible” content=”IE=edge”> <!--避免IE使用兼容模式--> 
<meta http-equiv=”Cache-Control” content=”no-siteapp” /> <!--不让百度转码--> 
<meta name=”HandheldFriendly” content=”true”> <!--针对手持设备优化,主要是针对一些老的 不识别viewport的浏览器--> 
<meta name=”MobileOptimized” content=”320″> <!--微软的老式浏览器--> 
<meta name=”screen-orientation” content=”portrait”> <!--uc强制竖屏--> 
<meta name=”x5-orientation” content=”portrait”> <!--QQ强制竖屏--> 
<meta name=”full-screen” content=”yes”> <!--UC强制全屏--> 
<meta name=”x5-fullscreen” content=”true”> <!--QQ强制全屏-->

💫三、标签相关

1、说说 title 和 alt 属性

  • 两个属性都是当鼠标滑动到元素上的时候显示。
  • altimg 的特有属性,是图片内容的等价描述,图片无法正常显示时候的替代文字。
  • title 属性可以用在除了basebasefontheadhtmlmetaparamscripttitle 之外的所有标签,是dom元素的一种类似注释说明

2、 iframe 有那些缺点?

  • iframe 会阻塞主页面的 Onload 事件
  • 搜索引擎的检索程序无法解读这种页面, 不利于 SEO
  • iframe 和主页面共享连接池,而浏览器对相同域的连接有限制,所以会影响页面的并行加载
  • 使用 iframe 之前需要考虑这两个缺点。如果需要使用 iframe ,最好是通过 javascript 动态
  • iframe 添加 src 属性值,这样可以绕开以上两个问题

3、Html5 有哪些新特性、移除了哪些元素

(1)新增元素

  • 绘画 canvas
  • 用于媒介回放的 videoaudio 元素
  • 本地离线存储 localStorage 长期存储数据,浏览器关闭后数据不丢失
  • sessionStorage 的数据在浏览器关闭后会自动删除
  • 语义化更好的内容元素,比如 articlefooterheadernavsection
  • 表单控件 , calendardatetimeemailurlsearch
  • 新的技术 webworkerwebsocketGeolocation

(2)移除的元素

  • 纯表现的元素: basefontbigcenterfontsstrikettu
  • 对可用性产生负面影响的元素: frameframesetnoframes

(3)支持 HTML5 新标签

  • IE8/IE7/IE6 支持通过 document.createElement 方法产生的标签。
  • 可以利用这一特性让这些浏览器支持 HTML5 新标签。
  • 浏览器支持新标签后,还需要添加标签默认的样式。

4、Label 的作用是什么?是怎么用的?

label 标签用来定义表单控制间的关系,当用户选择该标签时,浏览器会自动将焦点转到和标签相关的表单控件上。

<label for="Name">Number:</label> <input type=“text“name="Name" id="Name"/> <label>Date:<input type="text" name="B"/></label>

5、div+css的布局较table布局有什么优点

  • 改版的时候更方便,只需要修改 css 文件。
  • 页面加载速度更快、结构化清晰、页面显示简洁。
  • 表现与结构相分离。
  • 易于优化 seo ,搜索引擎更友好,排名更容易靠前。

6、简述一下src与href的区别

  • src 用于替换当前元素, href 用于在当前文档和引用资源之间确立联系。

  • srcsource 的缩写,指向外部资源的位置,指向的内容将会嵌入到文档中当前标签所在位置;在请求 src 资源时会将其指向的资源下载并应用到文档内,例如 js 脚本, img 图片和 frame 等元素。

  • 同时, src 指的是,当浏览器解析到该元素时,会暂停其他资源的下载和处理,直到将该资源加载、编译、执行完毕,图片和框架等元素也如此,类似于将所指向资源嵌入当前标签内。这也就是为什么将 js 脚本放在底部而不是头部。

  • hrefHypertext Reference 的缩写,指向网络资源所在位置,建立和当前元素(锚点)或当前文档(链接)之间的链接,如果我们在文档中添加 <link href="common.css" rel="stylesheet"> ,那么浏览器会识别该文档为 css 文件,就会并行下载资源并且不会停止对当前文档的处理。这也是为什么建议使用 link 方式来加载 css ,而不是使用 @import 方式。

7、知道网页制作会用到的图片格式有哪些吗

  • png-8png-24jpeggifsvg
  • 但是上面的那些都不是面试官想要的最后答案。面试官希望听到是Webp。(考察是否有关注新技术,新鲜事物)
  • 科普一下 WebpWebP 格式,谷歌(google)开发的一种旨在加快图片加载速度的图片格式。图片压缩体积大约只有 JPEG2/3 ,并能节省大量的服务器带宽资源和数据空间。FacebookEbay 等知名网站已经开始测试并使用 WebP 格式。
  • 在质量相同的情况下, WebP 格式图像的体积要比 JPEG 格式图像小40%

8、如何在 HTML5页面中嵌入音频与视频?

HTML5 包含嵌入音频文件的标准方式,支持的格式包括 MP3WavOgg

<audio controls> 
<source src="jamshed.mp3" type="audio/mpeg"> Your browser does'nt support audio embedding feature. 
</audio>

和音频一样,HTML5 定义了嵌入视频的标准方法,支持的格式包括:MP4WebMOgg

<video width="450" height="340" controls>
<source src="jamshed.mp4" type="video/mp4">Your browser does'nt support video embedding feature. 
</video>

9、HTML全局属性(global attribute)有哪些

  • class :为元素设置类标识
  • data-* :为元素增加自定义属性
  • draggable :设置元素是否可拖拽
  • id :元素 id ,文档内唯一
  • lang :元素内容的的语言
  • style :行内 css 样式
  • title :元素相关的建议信息

✨四、结束语

html 相关的内容在面试中考察的部分不多,但该记忆的内容还是得稍微记一下,以防在面试中突然被面试官问倒。

关于 html 相关的题目整理到这里就结束啦!希望对大家有帮助!

如文章有误或有想补充的新内容,欢迎加我微信指出呀,👉 vx: MondayLaboratory~

周一在整个春秋招备试的过程中,深知从0到1准备是非常不容易的。也想要把我所学的所有内容进行整理,让这个面试专栏更加尽善尽美,造福更多在准备面试的小伙伴~💬

往后专栏内容如有新补充也将放在下面的更新地址,大家可以戳下方链接直达~

🐣彩蛋 One More Thing

(:资料获取

👉 微信关注公众号 星期一研究室 ,回复关键字 html面试pdf 即可获取相关资料~
👉 回复 面试大全pdf 可获取全系列资料!

(:更新地址

👉 offer来了面试专栏

(:番外篇

  • 如果您觉得这篇文章有帮助到您的的话不妨点赞支持一下哟~~😉
  • 以上就是本文的全部内容!我们下期见!👋👋👋

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/307850.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

leetcode700. 二叉搜索树中的搜索

一:题目 二:上码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}*…

「offer来了」1张思维导图,6大知识板块,带你梳理面试中CSS的知识点!

「面试专栏」前端面试之css篇⌛序言✏️一、CSS框架先梳理&#x1f58c;️二、基础样式问题1、请你讲一讲css的权重和优先级&#xff08;1&#xff09;权重&#xff08;2&#xff09;优先级2、说一下CSS的position属性3、span 标签是否可以设置宽高&#xff0c; margin 和 padd…

动态代理的理解

一:动态代理和静态代理的区别 静态代理&#xff1a;了解设计模式中的代理模式的童鞋应该都知道&#xff0c;如果想要生成代理类&#xff0c;需要让代理类和被代理类实现同一个接口&#xff0c;并且在代理类中添加被代理类的引用&#xff0c;代理类方法实现中添加代理逻辑&…

.NET Core 下的爬虫利器

爬虫大家或多或少的都应该接触过的&#xff0c;爬虫有风险&#xff0c;抓数需谨慎。本着研究学习的目的&#xff0c;记录一下在 .NET Core 下抓取数据的实际案例。爬虫代码一般具有时效性&#xff0c;当我们的目标发生改版升级&#xff0c;规则转换后我们写的爬虫代码就会失效&…

Redux从入门到进阶,看这一篇就够了!

Redux&#xff0c;带你从入门到进阶&#x1f302;序言☂️一、基础知识1、Redux概念简述2、Redux的工作流程&#x1f383;二、使用Antd实现TodoList页面布局1、在项目中使用Antd2、使用Antd实现TodoList的基本布局3、创建redux中的store&#xff08;1&#xff09;创建store&…

ASP.NET Core 3.x控制IHostedService启动顺序浅探

想写好中间件&#xff0c;这是基础。一、前言今天这个内容&#xff0c;基于于ASP.NET Core 3.x。从3.x开始&#xff0c;ASP.NET Core使用了通用主机模式。它将WebHostBuilder放到了通用的IHost之上&#xff0c;这样可以确保Kestrel可以运行在IHostedService中。我们今天就来研究…

com.mysql.cj.exceptions.InvalidConnectionAttributeException

一:java连接数据库报错 com.mysql.cj.exceptions.InvalidConnectionAttributeException 二:报错原因 MySQL jdbc 6.0 版本以上必须配置“serverTimezone”参数 UTC代表的是全球标准时间 若我们使用的时间是北京时区也就是东八区&#xff0c;领先UTC八个小时。url的时区使用…

Istio Pilot 源码分析(一)

张海东&#xff0c; ‍多点生活&#xff08;成都&#xff09;云原生开发工程师。Istio 作为目前 Servic Mesh 方案中的翘楚&#xff0c;吸引着越来越多的企业及开发者。越来越多的团队想将其应用于微服务的治理&#xff0c;但在实际落地时却因为不了解 Istio 黑盒中的运行机制而…

结营啦!有缘相聚于青训,未来高处见呀~~

&#x1f4f8;叮&#xff01; 记 字节跳动第一届青训营顺利结营啦&#xff01; 从8月份的青训营&#xff0c;到9月份的实训营&#xff0c;搁置了许久的结营心得终于拾起来辽&#xff01; &#x1f3ac;开营进行时 从答疑会开始&#xff0c;负责人仔细的阐述了本次训练营的…

MVC三层架构(详解)

1:初始MVC (1):三层架构 三层架构是指&#xff1a;视图层 View、服务层 Service&#xff0c;与持久层 Dao。它们分别完成不同的功能。 View 层&#xff1a;用于接收用户提交请求的代码在这里编写。 Service 层&#xff1a;系统的业务逻辑主要在这里完成。 Dao 层&#xff1a;…

「offer来了」保姆级巩固你的js知识体系(4.0w字)

「面试专栏」前端面试之JavaScript篇&#x1f9d0;序言&#x1f973;思维导图环节&#x1f60f;一、JS规范1、说几条JavaScript的基本规范。2、对原生JavaScript的了解。3、说下对JS的了解吧。4、JS原生拖拽节点5、谈谈你对ES6的理解6、知道ES6的class嘛&#xff1f;7、说说你对…

写作是人生最大的杠杆

职场&认知洞察 丨 作者 / 易洋 这是findyi公众号的第71篇原创文章不知不觉&#xff0c;公众号写作已经持续了9个月了。去年11月底&#xff0c;心血来潮写了第一篇文章&#xff0c;更多是为了复盘过去的一些工作经历。在前几天&#xff0c;读者数突破了3万&#xff0c;虽然…

拥塞控制(详解)

一&#xff1a;TCP的拥塞控制 1:是什么 (1):是什么(拥塞现象) 网络的 吞吐量 与 通信子网 负荷(即通信子网中正在传输的分组数)有着密切的关系。当 通信子网 负荷比较小时,网络的 吞吐量 (分组数/秒)随网络负荷(每个 节点 中分组的平均数)的增加而线性增加。当网络负荷增加到…

解决 WPF 绑定集合后数据变动界面却不更新的问题(使用 ObservableCollection)

解决 WPF 绑定集合后数据变动界面却不更新的问题独立观察员 2020 年 9 月 9 日在 .NET Core 3.1 的 WPF 程序中打算用 ListBox 绑定显示一个集合&#xff08;满足需求即可&#xff0c;无所谓什么类型的集合&#xff09;&#xff0c;以下是 Xaml 代码&#xff08;瞟一眼就行&…

Kubernetes Liveness and Readiness Probes

在设计关键任务、高可用应用程序时&#xff0c;弹性是要考虑的最重要因素之一。当应用程序可以快速从故障中恢复时&#xff0c;它便具有弹性。云原生应用程序通常设计为使用微服务架构&#xff0c;其中每个组件都位于容器中。为了确保Kubernetes托管的应用程序高可用&#xff0…

「offer来了」2种递进学习思维,24道计网题目,保姆级巩固你的计网知识体系

「面试专栏」前端面试之计算机网络篇⚾序言&#x1f3d0;一、基础知识环节1、专栏学习2、书籍学习⚽二、思维导图环节&#x1f3b3;三、OSI七层模型1、OSI模型是什么&#xff1f;2、OSI七层模型遵循原则&#x1f3cf;四、TCP与UDP1、TCP与UDP的区别2、TCP/UDP的优缺点&#xff…

leetcode236. 二叉树的最近公共祖先

一:题目 二:上码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/ class Solution { public:/**思路:1.这里我们需要的是从底向上开…

进击吧! Blazor !第二期 页面制作

Blazor 是一个 Web UI 框架&#xff0c;可通过 WebAssembly 在任意浏览器中运行 .Net 。Blazor 旨在简化快速的单页面 .Net 浏览器应用的构建过程&#xff0c;它虽然使用了诸如 CSS 和 HTML 之类的 Web 技术&#xff0c;但它使用 C&#xff03;语言和 Razor 语法代替 JavaScrip…

「软件项目管理」一文详解软件项目管理概述

一文详解软件项目管理概述&#x1f6b5;前言&#x1f93d;一、项目与软件项目1、项目的定义2、项目的特征3、项目与日常运作举例&#xff08;1&#xff09;判断哪些活动是项目&#xff08;2&#xff09;举例结果&#xff08;3&#xff09;项目与日常运作区别总结4、软件项目的特…

初识ABP vNext(9):ABP模块化开发-文件管理

点击上方蓝字"小黑在哪里"关注我吧创建模块模块开发应用服务运行模块单元测试模块使用前言在之前的章节中介绍过ABP扩展实体&#xff0c;当时在用户表扩展了用户头像字段&#xff0c;用户头像就涉及到文件上传和文件存储。文件上传是很多系统都会涉及到的一个基础功能…