CSS+DIV个人学习笔记,字节跳动算法工程师面试总结

15 阅读4分钟

1.四种方式的优先权:内联式-->内嵌式-->链接式-->@import导入式

2.就近原则

3.作用范围越小,优先权越高

4.离要修饰目标越近的样式优先权越高

5.选择符的优先权:行内>id>class>标签选择符

6.我们可以通过!important语法来提升重要性(优先权)

a) color:green !important;

CSS****伪列:超链接样式 

如果,鼠标放到超链接不起作用,修改链接状态的顺序为:

:link - > :visited - > :hover - > :active

CSS盒子的相关属性

1.内容属性:内容本身的宽=width,高=height

2.内填充属性:内容与边界之间的距离padding

3.再定义盒子的宽度时,要考虑到。内填充,边框,边界的存在

4.如果增加了内填充,整个盒子的宽度值,要再减去增加的内填充值。

margin/padding的使用:

padding:10px;一个参数:代表上右下左

padding:10px 20px;二个参数:10代表上下 10代表左右

padding:10px 20px 30px;三个参数:10代表上 20代表左右 30代表下

也可以使用padding-left(top,right,botton)

使用外表据margin,要注意浏览器的兼容性

由于各个浏览器存着,内外边距的默认值不同;因此我们需要将所有浏览器的默认内外边距都从零开始。

关于列表的属性

list-style:list-style-image || list-style-position || list-style-type

列表的样式:列表的图片||列表的符号的位置||列表的样式

通常使用:list-style:none;

边框

border:border-witdh || border-style || border-color

如果只写border,则后面要跟着的是,三个不同的子属性:粗细,样式,颜色

小技巧:

让盒子水平居中:将对象的左右外边界设置为auto

让盒子中的内容垂直居中:设置行高=盒子的高度,但是不能有换行。

内联元素:a,em,span(display:inline)

不能设置宽和高

不影响换行

背景控制

background:颜色 图片 平铺方式 固定方式 位置

background:color image repeat attachment position 

背景图片默认情况是进行水平与垂直方向的平铺:background-repeat:repeat;

默认背景图片显示在元素的左上角。

背景图片的依附方式:固定的含义:将图片固定在屏幕的某个位置。background-attachment:fixed;

专业点的技巧:

翻转效果:准备2张大小相同,内容不同图片;正常情况显示一张,鼠标经过,显示另一张。

CSS精灵技术:主要是为了,减少http请求。

CSS布局的方式

1.默认文档流方式:以默认的html元素的结构顺序显示

2.浮动布局方式:通过设置html元素的float属性显示

3.定位布局方式:通过设置html元素的position属性显示

浮动

浮动是将块元素的独占一行的行为取消,允许与其同一行。

浮动其实是这个块,从原来的文档流模式中分离出来,它后面的对象,就视它不存在。

ul与li默认情况下是块元素,要想让他们在一行中显示,就要用浮动。

清除浮动:去掉前面对象浮动对后面对象的影响。

当父元素没有指定高度时,并且它的子元素有浮动,这时,这个父元素的个高度不会自动增加。

1.方法1:增加一个空的div。缺点:会增加代码。

ES6

  • 列举常用的ES6特性:

  • 箭头函数需要注意哪些地方?

  • let、const、var

  • 拓展:var方式定义的变量有什么样的bug?

  • Set数据结构

  • 拓展:数组去重的方法

  • 箭头函数this的指向。

  • 手写ES6 class继承。

微信小程序

  • 简单描述一下微信小程序的相关文件类型?

  • 你是怎么封装微信小程序的数据请求?

  • 有哪些参数传值的方法?

  • 你使用过哪些方法,来提高微信小程序的应用速度?

  • 小程序和原生App哪个好?

  • 简述微信小程序原理?

  • 分析微信小程序的优劣势

  • 怎么解决小程序的异步请求问题?

开源分享:docs.qq.com/doc/DSmRnRG…