前端八股文(一)HTML 持续更新中。。。

html常见八股

1.src和href的区别?

src:

  • 用于js脚本,img、iframe、script等标签

  • 加载时会阻塞主线程,将资源内容嵌入到当前标签所在的位置,将其指向的资源下载应用到文档内

href:

  • 用于链接a、link等标签

  • href指向外部资源所在的位置,和当前元素位置建立链接,将其下载的时候不会阻止其他资源的加载解析

2.h5有哪些新增特性?

  1. 新增语义化标签:header、footer

  2. 新增表单类型属性:placeholder、type:number、email等

  3. 新增音频、视频标签:video、audio

  4. 新增浏览器存储:sessionStorage、localStorage

  5. 新增websocket通信等

3.html语义化?

  • 使用语义化标签,使代码具有良好的结构

  • 有利于seo爬虫

  • 有利于团队开发和维护

4.iframe的优点和缺点?***

iframe通常用来加载外部链接,不会影响网页内容的加载。

优点

  • 可以将网页原封不动的加载进来

  • 增加代码的可用性

  • 用来加载显示较慢的内容,如广告、视频等

缺点

  • 加载的内容无法被浏览器引擎识别,对SEO不友好

  • 会阻塞onload事件加载

  • 会产生很多页面,不利于管理

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

他俩都是表示异步加载外部JS脚本 ,不会阻碍页面的加载解析。 区别

  • 执行顺序:有多个async标签不能保证先后加载顺序,而多个defer标签可以按先后顺序加载。

  • 是否立即执行:async加载完脚本后会立即执行defer是要等文档解析完成后才执行

6.行内元素和块级元素 举例几个

  • 行内元素:span、input、a、img、strong

  • 块级元素:div、h1、p、ul、li、dl、dt、dd

7.怎样查找、创建、添加、移动、复制、移除节点

  • 查找节点:document.querySelectorAll()、document.querySelector()、document.getElementByClassname()、document.getElementById()、document.getElementByTagName()

  • 创建节点:document.createElement()

  • 添加节点:document.appendChild()

  • 移动节点:document.appendChild()

  • 复制节点:dom.cloneNode(true)

  • 移除节点:document.removeElement()

相关推荐
JavaGuide14 小时前
Claude Code + BrowserAct,夯爆了!一句话让 AI 帮你操控浏览器。
前端·后端·ai编程
七十二時_阿川14 小时前
Electron WebContents 完全指南:页面渲染、导航控制与安全实战
前端·electron
用户114818678948414 小时前
Vue 开发者快速上手 Flutter(五) -状态管理路径
前端
七十二時_阿川14 小时前
Electron 主进程和渲染进程如何通信?这篇讲清楚了
前端·electron
前端那点事14 小时前
Vue3+TS 封装高复用 ECharts 通用组件,自适应+防抖+主题切换,开箱即用
前端·vue.js
七十二時_阿川14 小时前
从零到精通:Electron 窗口管理高级技巧
前端·electron
前端那点事14 小时前
Vue3+TS动态路由终极方案|后端权限、刷新不丢、按钮权限、解决所有404BUG
前端·vue.js
前端那点事14 小时前
Vue3+TS手写不定高虚拟列表Hooks,彻底解决长列表卡顿,生产直接复用
前端·vue.js
ZC跨境爬虫14 小时前
跟着 MDN 学 HTML day_61:(构建反馈表单的结构化挑战)
前端·javascript·ui·html·音视频
卷帘依旧14 小时前
Vue2中defineProperty缺陷
前端