20,2024年最新阿里面试提问

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
img

正文

| 小屏设备(平板) | >= 768px ~ < 992px |

| 中等屏幕(桌面显示器) | >= 992px ~ < 1200px |

| 宽屏设置(大桌面显示器) | >= 1200px |

1.2 响应式布局容器


响应式需要一个父级作为布局容器,来配合子级元素来实现变化效果。

原理就是在不同屏幕下,通过媒体查询来改变这个布局容器的大小,再改变里面子元素的排列方式和大小,从而实现不同屏幕下,看到不同的页面布局和样式变化。

【平时我们的响应式尺寸划分】

  • 超小屏幕(手机,小于 768px):设置宽度为 100%

  • 小屏幕(平板,大于等于 768px):设置宽度为 750px

  • 中等屏幕(桌面显示器,大于等于 992px):宽度设置为 970px

  • 大屏幕(大桌面显示器,大于等于 1200px):宽度设置为 1170px

但是我们也可以根据实际情况自己定义划分。

【案例】

01-响应式布局原理
  • 效果图

【案例:响应式导航】

  • 需求分析
  1. 当我们屏幕大于等于 800 像素,我们给 nav 宽度为 800px,因为里面子盒子需要浮动,所以 nav 需要清除浮动

  2. nav 里面包含 8 个小 li 盒子,每个盒子的宽度定位 100px,高度为 30px,浮动一行显示

  3. 当我们屏幕缩放,宽度小于 800 像素的时候,nav 盒子宽度修改为 100% 宽度

  4. nav 里面的 8 个小 li,宽度修改为 33.33%,这样一行就只能显示 3 个小 li,剩余下行显示

02-响应式导航
    • 导航栏
    • 导航栏
    • 导航栏
    • 导航栏
    • 导航栏
    • 导航栏
    • 导航栏
    • 导航栏
    • 二、Bootstrap前端开发框架

      ====================================================================================

      2.1 Bootstrap简介


      Bootstrap 来自 Twitter(推特),是目前最受欢迎的前端框架。

      Bootstrap 是基于 HTML、CSS 和 JavaScript 的,它简洁灵活,使得 Web 开发更加快捷。

      • 中文官网:http://www.bootcss.com/

      • 官网:https://getbootstrap.com/

      框架:顾名思义就是一套架构,它有一套比较完整的网页功能解决方案,而且控制权在框架本身,有预制样式库、组件和插件。使用者要按照框架所规定的某种规则进行开发。

      (1)优点

      • 标准化的 html + css 编码规范

      • 提供了一套简洁、直观、强悍的组件

      • 有自己的生态圈,不断的更新迭代

      • 让开发更简单,提高了开发的效率

      (2)版本

      • 2.x.x:停止维护,兼容性好,代码不够简洁,功能不够完善

      • 3.x.x:目前使用最多,稳定,但是放弃了 IE6-IE7。对 IE8 支持但是界面效果不好,偏向用于开发响应式布局、移动设备优先的 Web 项目

      • 4.x.x:最新版,目前还不是很流行

      以下内容基于 3.x.x

      2.2 Bootstrap使用


      在现阶段我们还没有接触 JavaScript 相关课程,所以我们只考虑使用它的 CSS 样式库。

      控制权在框架本身,使用者要按照框架所规定的某种规范进行开发。

      Bootstrap 使用四步曲:

      1. 创建文件夹结构

      2. 创建 html 骨架结构

      3. 引入相关样式文件

      4. 书写内容

      (1)创建文件夹结构

      (2)创建 html 骨架结构

      <![endif]–>

      注:<!--[if lt IE 9]><![endif]-->:为 HTML 的条件注释判断,当条件满足时便执行。

      (3)引入相关样式文件

      (4)书写内容

      • 复制 Bootstrap 预先定义好的样式来使用

      • 修改 Bootstrap 原来的样式,注意权重问题

      • 学好 Bootstrap 的关键在于知道它定义了哪些样式,以及这些样式能实现什么样的效果

      【案例】

      • 项目结构

      注意:Bootstrap 中默认使用的就是 normalize.css 初始化样式表,所以我们就不用再引入了。

      • 体会bootstrap.html
      Bootstrap 101 Template

      登录

      <button type=“button” class=“navbar-toggle collapsed” data-toggle=“collapse”

      data-target=“#bs-example-navbar-collapse-1”>

      Toggle navigation

      Brand

    • Link (current)
    • Link
    • <a href=“#” class=“dropdown-toggle” data-toggle=“dropdown” role=“button”

      aria-expanded=“false”>Dropdown

    • Action
    • Another action
    • Something else here
    • Separated link
    • One more separated link
    • Submit

    • Link
    • <a href=“#” class=“dropdown-toggle” data-toggle=“dropdown” role=“button”

      aria-expanded=“false”>Dropdown

    • Action
    • Another action
    • Something else here
    • Separated link
      • 效果图

      2.3 布局容器


      Bootstrap 需要为页面内容和栅格系统包裹一个 .container 容器,它提供了两个作此用处的类。

      1. container 类
      • 响应式布局容器 固定宽度

      • 大屏(>= 1200px)宽度定为 1170px

      • 中屏(>= 992px)宽度定为 970px

      • 小屏(>= 768px)宽度定为 750px

      • 超小屏(100%)

      1. container-fluid 类
      • 流式布局容器,百分百宽度

      • 占据全部视口(viewport)的容器

      【案例】

      05-bootstrap布局容器
      container
      container-fluid

      三、Bootstrap栅格系统

      ==================================================================================

      3.1 栅格系统简介


      栅格系统英文为(grid systems),也有人翻译为“网格系统”,它是指将页面布局划分为等宽的列,然后通过列数的定义来模块化页面布局。

      Bootstrap 提供了一套响应式、移动设备优先的流式栅格系统,随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多 12 列。

      3.2 栅格选项参数


      栅格系统用于通过一系列的行(row)与列(column)的组合来创建页面布局,你的内容就可以放入这些创建好的布局中。

      | | 超小屏幕(手机)< 768px | 小屏设备(平板)>= 768px | 中等屏幕(桌面显示器)>= 992px | 宽屏设备(大桌面显示器) >= 1200px |

      | — | — | — | — | — |

      | .container 最大宽度 | 自动(100%) | 750px | 970px | 1170px |

      | 类前缀 | .col-xs- | .col-sm- | .col-md- | .col-lg- |

      | 列(column)数 | 12 | 12 | 12 | 12 |

      • 按照不同屏幕划分为 1~12 等份

      • 行(row)可以去除父容器默认的 15px 内边距

      • xs-extra small:超小;sm-small:小;md-medium:中等;lg-large:大;

      • 列(column)大于 12,多余的“列(column)”所在的元素将被作为一个整体另起一行排列

      • 每一列默认有左右 15 像素的 padding

      • 可以同时为一列指定多个设备的类名,以便在不同的窗口尺寸下划分不同份数,例如:class="col-md-4 col-sm-6"

      • 当只指定一个类前缀时,大于类前缀的宽度默认符合类前缀所规定的份数,小于类前缀的宽度默认每个元素占12 份

      【案例:栅格系统的使用】

      06-栅格系统使用
      1
      2
      3
      4
      1
      2
      3
      4
      1
      2
      3
      4
      1
      2
      3
      4

      3.3 列嵌套


      栅格系统内置的栅格系统将内容再次嵌套。简单理解就是一个列内再分成若干份小列。我们可以通过添加一个新的 .row 元素和一系列 .col-sm-* 元素到已经存在的 .col-sm-* 元素内。

      小列
      小列

      【案例:列嵌套】

      07-栅格系统列嵌套
      a
      b
      2
      3

      注:b 被 2 盖住了。

      3.4 列偏移


      使用 .col-md-offset-* 类可以将列向右侧偏移。

      这些类实际是通过使用 * 选择器为当前元素增加了左侧的边距(margin)。

      1
      2

      【案例:列偏移】

      08-栅格系统列偏移
      左侧
      右侧
      中间盒子

      3.5 列排序


      通过使用 .col-md-push-*.col-md-pull-* 类就可以很容易的改变列(column)的顺序。

      左侧
      右侧

      【案例:列排序】

      09-栅格系统列排序
      左侧
      右侧

      3.6 响应式工具


      为了加快对移动设备友好的页面开发工作,利用媒体查询功能,并使用这些工具类可以方便的针对不同设备展示或隐藏页面内容。

      | 类名 | 超小屏 | 小屏 | 中屏 | 大屏 |

      | — | — | — | — | — |

      | .hidden-xs | 隐藏 | 可见 | 可见 | 可见 |

      | .hidden-sm | 可见 | 隐藏 | 可见 | 可见 |

      | .hidden-md | 可见 | 可见 | 隐藏 | 可见 |

      | .hidden-lg | 可见 | 可见 | 可见 | 隐藏 |

      Bootstrap 其他(按钮、表单、表格)请参考 Bootstrap 文档。

      【案例:响应式工具】

      10-栅格系统响应式工具

      我会显示哦

      学习分享,共勉

      题外话,毕竟我工作多年,深知技术改革和创新的方向,Flutter作为跨平台开发技术、Flutter以其美观、快速、高效、开放等优势迅速俘获人心

      网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

      需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
      img

      一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

      .hidden-sm | 可见 | 隐藏 | 可见 | 可见 |

      | .hidden-md | 可见 | 可见 | 隐藏 | 可见 |

      | .hidden-lg | 可见 | 可见 | 可见 | 隐藏 |

      Bootstrap 其他(按钮、表单、表格)请参考 Bootstrap 文档。

      【案例:响应式工具】

      10-栅格系统响应式工具

      我会显示哦

      学习分享,共勉

      题外话,毕竟我工作多年,深知技术改革和创新的方向,Flutter作为跨平台开发技术、Flutter以其美观、快速、高效、开放等优势迅速俘获人心

      [外链图片转存中…(img-S0h0PfQk-1713634136703)]

      网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

      需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
      [外链图片转存中…(img-KAFByVy0-1713634136703)]

      一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

    • 24
      点赞
    • 20
      收藏
      觉得还不错? 一键收藏
    • 0
      评论

    “相关推荐”对你有帮助么?

    • 非常没帮助
    • 没帮助
    • 一般
    • 有帮助
    • 非常有帮助
    提交
    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值