当前位置: 首页 > Web前端 > CSS

前端面试题整理_1

时间:2023-03-31 12:37:49 CSS

1.css样式的优先级和优先级如何计算优先级:!important>内联样式>嵌入样式或导入外部样式文件嵌入样式或导入外部样式文件:按权重计算优先级,权重高的优先级高。如果权重相同,按加载顺序判断,先加载的被覆盖(就近原则)选择器优先级:id选择器>类选择器>标签>*通用选择器>继承权重:id选择器100类选择器10标签的权重110个class选择器不会大于1个id选择器2.块级元素和行内元素的区别。块级元素会占据一行,垂直排列;内联元素将与其他内联元素水平排列。块级元素宽度、高度、外边距、内边距均可设置;不能为行内元素设置宽度和高度。行内元素的margin和padding在左边和右边有效,在顶部和底部无效。padding会扩大元素的范围,对页面布局没有影响补充:1.约束“a不允许嵌套div”是语义约束,不同于严格的约束,比如“a不允许嵌套div”嵌套一个”。在所有浏览器下都不允许严格限制;和语义约束,大多数浏览器都会处理错误,生成的文档树可能彼此不同(因为标准没有定义容错行为)。2.内联块级元素:宽高可设置,默认不换行3.实现一个布局:header固定,内容高度自适应,footer固定在底部高度小于一屏,否则跟随屏幕滚动。核心:设置内容最小高度补充:clientWidth水平宽度+左右paddingoffsetWidth水平宽度+左右padding+左右边框width4.js创建一个空对象obj,在构造函数中让this指向obj,并执行constructor来转换obj__proto__指向构造函数的原型对象来判断构造函数的返回值类型。如果是值类型,则返回obj;如果它是一个引用类型,它将返回一个引用类型的对象。代码2.微任务3.宏任务注意:promise中resolve()/reject()之后的代码仍然会被执行。6、let、const、var的区别要点:作用域、变量提升、重复声明、初始化、window1.let有块级作用域2、var有变量提升,let和const声明的变量在声明前不可用3.let,const不能重复声明变量4.const声明的变量必须初始化,不能重新赋值5.var声明的全局变量是全局对象的属性7.constarr=[[1,2,3],4,[5,[6,[7,8]]]]写一个扩展数组的函数现在几分钟就可以写出这个函数,面试的时候脑子里一片空白。多练习~加油~