前端面试题之HTML

135 阅读2分钟

src和href的区别

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

src是source的缩写,指向外部资源的位置,指向的内容将会嵌入到文档中当前的标签所在位置;在请求src资源时会将其指向的资源下载并应用到文档中,例如script、img、iframe。src是同步加载并执行。

href指向网络资源所在的位置,建立和当前元素或者当前文档之间的链接,通常用于 link、a,href是异步加载,所以不会停止执行其他代码,这也是为什么我们通常使用link方式来加载css。

HTML语义化有什么好处

语义化的优点如下;

  • 对机器友好,适合搜索引擎的爬虫爬取有效信息,有利于SEO。
  • 对开发者友好,使用语义化标签增强了可读性,结构更加清晰,开发者能清晰的看出网页结构,便于团队的开发和维护。

常见的语义化标签有

  • header - 头部
  • nav - 导航栏
  • section - 区块 (有语义化的div)
  • main - 主要区域
  • article - 主要内容
  • aside - 侧边栏
  • footer - 底部

script 标签中的defer 和 async 的区别

defer 和 async 属性都是异步去加载外部的js脚本文件,他们都不会阻塞页面解析。

defer与async的区别是:前者要等到整个页面正常渲染结束,才会执行;后者一旦下载完,渲染引擎就会中断渲染,执行这个脚本以后,再继续渲染。defer是“渲染完再执行”,async是“下载完就执行”。另外,如果有多个defer脚本,会按照它们在页面出现的顺序加载,而多个async脚本是不能保证加载顺序的

img的srcset属性的作用?

实现响应式图片。在指定的宽度或者像素密度的情况下加载对应的图片地址。