主要记录工作学习中的一些小笔记,没有特定的技术分类和顺序,只要是和前端有关的都会放在下面,后期再整理成册。希望自己可以坚持更新下去

1.>>>0位运算的作用

>>>无符号右移:这个操作符会将第一个操作数向右移动指定位数。向右移出的位被抛弃,左侧用0填充。符号位变成了0,所以结果永远是非负数的

9>>>2
1001->0010//9->2

>>>0的意义:移位操作符在移位之前,会将不是number类型的数据转换成number类型,然后将number类型转换成无符号的32bit数据
32bit转换规则

  1. 不能转换成number的,就为0。
  2. 非整数的就转换成整数(转换规则为整数向下取整,负数向上取整)
  3. 整数返回整数,负数返回负数+2的32次方

x >>> 0本质上就是保证x有意义(为数字类型),且为正整数,在有效的数组范围内(0 ~ 0xFFFFFFFF),且在无意义的情况下默认为0。

2.table中td的宽度问题

  • table-layout 属性为fixed时候,每列等宽,值为auto时,根据每列中最长的那个为准
  • 当table的长度为600px的时候,一个两列的表格,尽管设置宽度分别为200px,但是浏览器会自动按照比例算出宽度

image.png

  • 同样是一个宽度为600的table,当有三列的时候,前两列设置宽度三百,后一列不设置宽度

浏览器的渲染规则是根据后面的实际宽度,剩余宽度前面两列等分
image.png

  • 如果前两个的宽度加上第三个未设置宽度元素的宽度小于总宽度,则前两个按照设置大小显示

第三个自适应

3.css中容易理解错的属性

::after伪元素

after伪元素是在添加该节点的子节点的最后面添加一个伪元素
eg:利用伪元素去除浮动
image.png
容易错误的理解成是在bfc元素后面添加伪元素
其实应该是在bfc最后一个子元素的后面添加伪元素

:first-child

在菜鸟教程中的解释和例子为
匹配<p>元素的父元素的第一个<p>元素
image.png
但是下面这种情况
image.png
所以当元素后面跟first-child的时候,需要这个元素必须是父元素的第一个子元素才能生效
当为元素跟在类名后面也是同样
image.png
生效的前提是faketest的父元素的第一个子元素的同时,还有有faketest类别
image.png
换个顺序之后,样式不生效

:margin-left:百分比

这个属性经常用,但是属性为百分比的时候
表示的是该元素的父元素的百分比
image.png

然后在w3school网站上还看到错误的描述(2020.03.26日)
image.png

4.解决.gitignore不生效问题

git rm -r --cached .
git add .
git commit -m 'update .gitignore'

这个操作相当于重新整理了版本管理控制


pan463859
21 声望0 粉丝

永远的前端小白~