2024年最新css盒子模型及其实战案例(上)(1),vivoWeb前端开发面试

数据结构与算法

这一块在笔试、面试的代码题中考核较多,其中常考的数据结构主要有:数组、链表、队列、栈、Set、Map、哈希表等,不同数据结构有不同的方法以及储存原理,这些算是技术岗的必备知识。算法部分主要分为两大块,排序算法与一些其他算法题

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

排序算法根据考频高低主要有:快速排序、归并排序、堆排序、冒泡排序、插入排序、选择排序、希尔排序、桶排序、基数排序、Timsort这十种,这类考核点要么是算法的时间、空间复杂度、稳定度,要么是直接手写代码,故在理解算法原理的同时,对JS语言版的排序算法代码也要加强记忆。

  • 二叉树层序遍历
  • B 树的特性,B 树和 B+树的区别
  • 尾递归
  • 如何写一个大数阶乘?递归的方法会出现什么问题?
  • 把多维数组变成一维数组的方法
  • 知道的排序算法 说一下冒泡快排的原理
  • Heap 排序方法的原理?复杂度?
  • 几种常见的排序算法,手写
  • 数组的去重,尽可能写出多个方法
  • 如果有一个大的数组,都是整型,怎么找出最大的前 10 个数
  • 知道数据结构里面的常见的数据结构
  • 找出数组中第 k 大的数组出现多少次,比如数组【1,2, 4,4,3,5】第二大的数字是 4,出现两次,所以返回 2
  • 合并两个有序数组
  • 给一个数,去一个已经排好序的数组中寻找这个数的位 置(通过快速查找,二分查找)

冰岛 wa wa

![在这里插入图片描述](https://img-blog.csdnimg.cn/d88fb19308f74d77b6d2e8a59229400c.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shad

注意:表格属性cellspacing="0"将单元格合并在一起,边框宽度并没有合并,所以边框看起来较粗,border-collapse:collapse;正好解决这一问题。

所以对于表格可以只用border-collapse:collapse;合并单元格。

同时注意:边框也会影响盒子大小,如果你需要宽高特定的盒子,则盒子的宽高属性是减去边框的像素的。例如一个宽高为200px,边框1px的盒子css应该是下面这样:

div{

width: 198px;

height: 198px;

border: 1px solid pink;

}

🍅padding(内边距)

设置边框与内容之间的距离在这里插入图片描述

padding属性复合写法

在这里插入图片描述

注意:和border属性一样,padding属性也会撑大盒子大小,解决方法和border的一样。

在这里插入图片描述

但是如果你给盒子未指定宽度和高度,则padding不会撑开盒子大小。

Document

牛啊啊啊啊啊啊啊啊啊啊啊啊啊

在这里插入图片描述

假如你给p标签加width:100%,则会变成这样,撑大了盒子。

在这里插入图片描述

🥭内边距案例:新浪导航栏
Document

新浪导航

手机新浪网

移动客户端

微博

三个字

在这里插入图片描述

🍅margin(外边距)

设置边框与边框之间的距离

在这里插入图片描述

复合写法和padding格式一样…

🥭外边距典型应用:让块级盒子水平居中。

在这里插入图片描述

一般采用第三种

Document

在这里插入图片描述

🥭垂直外边距的合并问题

使用margin定义块元素的垂直外边距时,可能会出现外边距的合并。

Document

在这里插入图片描述

这里按代码的理论,两个盒子之间应该有200px距离,而事实却只有100px,

这就是margin定义块元素的垂直外边距时,可能会出现外边距的合并。

🥭嵌套块元素垂直外边距的坍塌
Document

在这里插入图片描述

上面这是注释掉子盒子margin-top: 100px;的图,我们取掉注释看一看:

在这里插入图片描述

可以看到,子盒子并未与父盒子分开,而发生了坍塌,且只有子盒子margin-top的像素值大于父盒子margin-top的像素值的时候才会发生高度坍塌。

解决办法:

在这里插入图片描述

前两种解决方法会改变父元素盒子的大小,用前两种的话我们还要改变父盒子的宽高,因此,我们大多用第三种方案将我们的子盒子与父盒子分开。

在这里插入图片描述

可以看到已经解决了嵌套块元素垂直外边距的坍塌问题。

🍏清除内外边距


网页元素很多都带有默认的内外边距,而且不同浏览器默认的也不一致,因此我们在布局前首先要清除网页元素的内外边距。

在这里插入图片描述

在这里插入图片描述

像这样有距离,然后清除内外边距后我们看一下

在这里插入图片描述

在这里插入图片描述

可以看到用了这串css之后,标签之间的默认距离消失了,在开发中我们通常都会先写这串css。

🍏盒子模型综合案例—产品模块。

数据结构与算法

这一块在笔试、面试的代码题中考核较多,其中常考的数据结构主要有:数组、链表、队列、栈、Set、Map、哈希表等,不同数据结构有不同的方法以及储存原理,这些算是技术岗的必备知识。算法部分主要分为两大块,排序算法与一些其他算法题

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

排序算法根据考频高低主要有:快速排序、归并排序、堆排序、冒泡排序、插入排序、选择排序、希尔排序、桶排序、基数排序、Timsort这十种,这类考核点要么是算法的时间、空间复杂度、稳定度,要么是直接手写代码,故在理解算法原理的同时,对JS语言版的排序算法代码也要加强记忆。

  • 二叉树层序遍历
  • B 树的特性,B 树和 B+树的区别
  • 尾递归
  • 如何写一个大数阶乘?递归的方法会出现什么问题?
  • 把多维数组变成一维数组的方法
  • 知道的排序算法 说一下冒泡快排的原理
  • Heap 排序方法的原理?复杂度?
  • 几种常见的排序算法,手写
  • 数组的去重,尽可能写出多个方法
  • 如果有一个大的数组,都是整型,怎么找出最大的前 10 个数
  • 知道数据结构里面的常见的数据结构
  • 找出数组中第 k 大的数组出现多少次,比如数组【1,2, 4,4,3,5】第二大的数字是 4,出现两次,所以返回 2
  • 合并两个有序数组
  • 给一个数,去一个已经排好序的数组中寻找这个数的位 置(通过快速查找,二分查找)

s.csdn.net/forums/4304bb5a486d4c3ab8389e65ecb71ac0)**

排序算法根据考频高低主要有:快速排序、归并排序、堆排序、冒泡排序、插入排序、选择排序、希尔排序、桶排序、基数排序、Timsort这十种,这类考核点要么是算法的时间、空间复杂度、稳定度,要么是直接手写代码,故在理解算法原理的同时,对JS语言版的排序算法代码也要加强记忆。

  • 二叉树层序遍历
  • B 树的特性,B 树和 B+树的区别
  • 尾递归
  • 如何写一个大数阶乘?递归的方法会出现什么问题?
  • 把多维数组变成一维数组的方法
  • 知道的排序算法 说一下冒泡快排的原理
  • Heap 排序方法的原理?复杂度?
  • 几种常见的排序算法,手写
  • 数组的去重,尽可能写出多个方法
  • 如果有一个大的数组,都是整型,怎么找出最大的前 10 个数
  • 知道数据结构里面的常见的数据结构
  • 找出数组中第 k 大的数组出现多少次,比如数组【1,2, 4,4,3,5】第二大的数字是 4,出现两次,所以返回 2
  • 合并两个有序数组
  • 给一个数,去一个已经排好序的数组中寻找这个数的位 置(通过快速查找,二分查找)

[外链图片转存中…(img-moBOzh25-1715696221467)]

  • 24
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值