1.重绘和重排
1.重排(回流) :布局引擎根据所有样式计算出盒子模型在页面上的位置和大小,第一次渲染回流是必须发生的,当DOM改变位置大小,会造成重排
2.重绘:计算好盒子模型的位置,大小,浏览器会进行绘制。当颜色修改时,进行重绘,不需要重新计算DOM大小位置。
2.网页中使用奇数还是偶数字体
使用偶数居多
1.页面设计稿便于计算,方便开发
2、字体偶数在浏览器上展示更加好看,同时方便计算。
3.雪碧图
多个小图标合成一个大图片,优点减少http请求次数,提高性能。缺点维护不方便,图片进行修改。
4.rese
重置CSS样式,浏览器默认样式进行重置样式,公共样式进行提取出来。 可以用一些css库,增加跨浏览器渲染的一致性,Normalize.css库
5.px和rem
px:像素,显示器呈现的画面像素。
rem:相对单位,相对于html根节点的font-size的值,直接给html根节点设置62.5%
1rem=10px; (16px*62.5%=10px)
6.src和href的区别
src用于替代这个元素,href用于建立这个标签与外部资源的关系。
link与script 使用src时,link时浏览器渲染和解析不会暂停,使用script时会执行完js才会继续
7.get与post区别
get一般用于从服务器上获取数据,post向服务器传送数据。
get传送数据量较小,post传送数据量大
get安全性没有post高
8.不定宽高的盒子水平垂直居中
-
{ display:flex; justify-content: center; align-item:center; } -
{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%) } -
{ position:absolute; top:0; left:0; right:0; bottom:0; margin:auto; }
9.display:none 与 visibility:hidden的区别
visibility:hidden将元素隐藏,但是在网页依然占用位置。
display:none将元素的显示设为无,即在网页中不占任何的位置。
10.height和line-height区别
height:元素的高度值
line-height:行高,是每一行文字的高,换行整个盒子高度会增大。
11.css选择符
- 通配
id选择器
类选择器
标签选择器
- 相邻的选择器
后代选择器
子元素选择器 >
属性选择器 []
继承:
文字系列color,font-size
不可继承:border padding margin
12.css优先级
!imports > 内联样式>id>class>标签
计算优先级权重进行相加
13.清除浮动
clear:both
或加入虚拟标签
:after{ content:''; display:block; clear:both }
或添加一个空标签
或触发
14.BFC
页面上隔离的独立容器,里面的子元素不会影响到外面元素。
当高度塌陷时触发BFC解决
触发条件:float值非none,overflow值非visible,display值为inline-block position值为absoute,fixed
解决办法如: overflow:hidden
15.定位
1.static 默认值 没有定位
2.absoute 相对于父元素有relative定位,脱离文档流
3.fixed 固定定位,视口进行定位,浏览器窗口
4.relative 生成自身定位,不脱文档流
5.粘性定位Sticky 相对定位和固定定位之间的一种定位方式,粘性定位的元素会根据正常文档流进行布局,但在滚动到指定位置时会固定在屏幕上。