CSS面试题
1. 如何居中一个div?
/* 使用Flexbox实现水平垂直居中 */ .container { display: flex; justify-content: center; align-items: center; }
2. CSS优先级是如何计算的?
CSS选择器的优先级是根据选择器的 specificity(特异性)决定的,通常表示为四位数:
- 1000:每个ID选择器
- 100:每个类,伪类选择器,属性选择器
- 10:每个元素选择器,伪元素选择器
- 1:每个通用选择器
优先级从左到右依次判断。如果存在一个以上的规则有相同的特异性,则使用样式表中最后的规则。
JS面试题
1. 如何判断一个变量是否是数组?
function isArray(obj) { return Object.prototype.toString.call(obj) === '[object Array]'; }
2. 如何实现原生的bind()函数?
Function.prototype.bind2 = function(context) { var fn = this; return function() { fn.apply(context, arguments); } }
以上是CSS和JS的几道常见面试题,希望能帮助大家更好地准备前端面试。