你的浏览器不支持canvas

Enjoy life!

我对前端面试的看法 (一)html

Date: Author: JM

本文章采用 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议 进行许可。

1、什么是语义化的HTML?

这里主要围绕是什么以及有什么优点去回答就可以了

  • HTML 语义化,就是能直接能看出是做什么的,比如说,用 header 标签 替代了 div.header,一看标签就知道这里讲的是什么内容
  • 对于其他开发者看我的代码,可读性以及可维护性也更高了
  • 除此之外,语义化还有利于SEO,因为其内容的权重性经过语义化后就更容易抓取
  • 还有一点就是,屏幕阅读软件,这个是供盲人使用的,经过语义化后的内容结构清晰,也更利于其去读取页面的内容

2、说一说!DOCTYPE

围绕是什么、用途来回答

  • <!DOCTYPE html> :是文档声明,在html文件的最顶端
  • 它的用途是:告诉浏览器的解析器应该以怎么样的标准去解析渲染一个页面

3、说一说em,strong,b,i

  • emi 展现形式一样,都是斜体
  • strongb 展现形式一样,都是粗体
  • HTML 4中,bi 都是视觉要素(这两个标签在HTML 4中就被废弃了),并没有任何意义,而emstrong则是表达要素,
  • 到了HTML5bi 又重新被使用,但它们的用法与之气那已经不一样了
    • b 标签:表示出于实用的目的提醒读者注意一段文字,不传达任何额外的重要性,也不表示其他语义和语气,用于:关键词、产品名、操作指令
    • i标签:表示一块不同于其他文字的文字,具有不同的语态或语气,用于:分类名称、技术术语、外语中的惯用词等
    • strong标签:强调,表示内容的重要性
    • em标签: 表示句子中的强调(即强调语义)

4、script标签的defer、async的区别

  • defer:是在html解析完之后才会执行,如果是多个,按照加载的顺序依次执行
  • async:在加载完成后立即执行,如果是多个,执行顺序和加载顺序入关

5、img的alt与title有何异同?

  • alt:在图片无法正常加载的情况下,alt 用来做提示作用,告诉用户这一张大概是什么图片
  • title:为设置该属性的元素提供建议性的信息。

6、什么叫优雅降级和渐进增强?

先说说分别是什么,在说说区别

  • 渐进增强:progressive enhancement
    • 针对低版本浏览器进行构建页面,保证最基本的功能,然后再针对高级浏览器进行效果、交互等改进,追加功能,已达到更好的用户体验
  • 优雅降级:graceful degradation
    • 一开始就构建完整的功能,然后再针对低版本浏览器进行兼容

  • 区别:
    • 优雅降级是由复杂开始,并试图减少用户体验的供给
    • 渐进增强则是从一个非常基础、切能起作用的版本开始,并不断扩充,以适应未来环境的需要
    • 总的来说,降级就是往回看,增强意味着在保留原有基础上向前看

7、讲讲head中常见的内容

  • head标签用于定义文档的头部,它是所有头部元素的容器
  • head中可以引入脚本、引入样式表
  • 文档的头部描述了文档的各种属性和信息,例如文档的标题
  • 绝大多数文档头部包含的数据都不会真正作为内容显示给读者
  • 在head内可用的标签有:title、link、style、script、meta、base

  • 说说base标签
    • base标签为页面上的所有链接规定默认地址

  • 说说meta
  • meta可提供有关页面的元信息,比如针对搜索引擎的描述和关键词,其形式是通过名值对实现 常用的meta有:
    • name 为 description:就是描述页面内容
    • name 为 author:页面的作者
    • name 为 keywords:页面的关键词(用,隔开)
    • name 为 viewport:这个就是针对手机端

对于本文内容有问题或建议的小伙伴,欢迎在文章底部留言交流讨论。