1.---------------------CSS 选择器及其优先级
!import>内联>id>class,伪类,属性>标签,伪元素
2.---------------------隐藏元素的方法
visible:hidden dispaly:none opative:0 transform: scale(0,0): 缩放为0 postion 移出可视范围 z-index 设为负值
3.--------------------link 和@import 的区别
link属于html 标签,@import属于css语法,时css2.0提出的,可能存在兼容性问题 link 同页面一起加载,@import等页面加载完再加载 link可以操作dom,@import不可以
4.---------------------transition 和 animation
transiton 是过度效果,需要事件触发 animation 定好时间自动触发,需要触发事件
5--------------------display:none 与 visibility:hidden 的区别
dispaly是将元素从文档中彻底移除,会引起重排 visible是将元素隐藏,文档中元素还存在,并且还占有空间,会引起重绘
6-----------------------伪元素(::after,::before)和伪类(:hover,:firstchild)的区别和作用?
伪元素是在元素前后添加新的元素,这样的元素在文档中不会生成,也找不到,因此称为伪元素 而伪类只是给特定的元素添加特定的样式,并没有新增元素
7------------------------盒子模型
box-sizing : conten 盒子宽度由width决定
box-sizing :border 盒子宽度由width+padding+margin决定
8-------------------------为什么有时候用translate来改变位置而不是定位?
因为postion消耗内存较大,会触发重排,
9.---------------------css3新特性
圆角,线性渐变,tranform 平移,旋转,缩放,弹性盒子模型,媒体查询,阴影shadow,文字特效 text-shadow
10--------------常见的图片格式及使用场景
jpeg 有损 gif 无损 小动图 png 无损 存图片 svg 无损 矢量图 一般用于图标和logo
11.-------------对line-height 的理解及其赋值方式
一行文本的高度,值文本上一行到下一行的高度 light-height 和height都能撑开高度 与高度一致时文本垂直居中
12---------- CSS 优化和提高性能的方法有哪些?
加载性能 将css打包压缩减少体积 尽量使用link 不用@import 因为link会用文档一起加载,而@import会等文档加载才加载
选择器性能 尽量少用标签选择器,选用class选择器
渲染性能 少使用高性能选属性:浮动,定位 尽量减少重排重绘 选择器别嵌套太深 不使用@import,会影响css加载速度
可维护性,健壮性 抽取公共样式 样式与内容分离,将css定义在外部css样式里 可以大大减少页面代码,加载页面的时间也会减少
13.----------------CSS 预处理器/后处理器是什么?为什么要使用它们? sass,less ,在css基础上提供了一些更强大的功能:层级,变量,循环,函数,mixin混入 使css编写更加友好,结构清晰
14,--------------单行、多行文本溢出隐藏
单行 overflow:hidden text-overflow:ellipisis whiteSpace:no-wrap
多行 overflow:hidden text-overflow:ellipisis display:-webkit-box; // 作为弹性伸缩盒子模型显示。 -webkit-box-orient:vertical; // 设置伸缩盒子的子元素排列方式:从上到下垂直排列 -webkit-line-clamp:3; // 显示的行数
15.-----------------对媒体查询的理解? 在不同的屏幕尺寸上,设计不同的样式
16---------------------对 CSS 工程化的理解
使用css预处理器对css的目录结构进行优化,对css进行复用,并具有更强的拓展能力( 提供了传统css所没有的功能函数,变量,混入,嵌套,循环 ) 使用webpack loader 对css 进行打包压缩
17.--------------------- z-index 属性在什么情况下会失效 position为static时,不是其他定位元素 父元素为position:relective 设置z-index同时 ,也设置了float(float去除,将diaplay改为inline-block)
18--------------CSS3 中的 transform 有哪些属性 缩放 scale 平移 tanslatex 旋转 rotate
如何判断元素是否到达可视区域(滚动过的距离加上可视区高度 大于 元素距离顶部的高度) 浏览器可视区高度 window.innerHeight 浏览器滚动过的距离 document.body.screenTop 元素距离浏览器顶部的距离(包括滚动过的距离); img.offsetTop 可视区域 window.innerHeight + document.body.scrollTop>img.offsetTop