核心提示:一.怎么让Chrome支持小于12px 的文字?这个我们在做移动端的时候,设计师图片上的文字假如是10px,我们实现在网页上之后。往往设计师回来找我们,这个字体能小一些吗?我设计的是10px?为啥是1...
一.怎么让Chrome支持小于12px 的文字?
这个我们在做移动端的时候,设计师图片上的文字假如是10px,我们实现在网页上之后。往往设计师回来找我们,这个字体能小一些吗?我设计的是10px?为啥是12px?其实我们都知道,谷歌Chrome最小字体是12px,不管你设置成8px还是10px,在浏览器中只会显示12px,那么如何解决这个坑爹的问题呢?
我们的做法是:
针对chrome浏览器,加webkit前缀,用transform:scale()这个属性进行放缩.
测试10px
二、如何修改chrome记住密码后自动填充表单的黄色背景?
使用-webkit-autofill这个属性进行修改.
/*通过input : -webkit-autofill来进行修改!*/ input:-webkit-autofill { background-color: #FAFFBD; background-image: none; color: #000; }
三、写出最简单的去重方式
1、es6的new Set()方式
let array=[0,3,4,5,3,4,7,8,2,2,5,4,6,7,8,0,2,0,90]; [...new Set(array)]
2、es5的Array filter()
[1,3,4,5,1,2,3,3,4,8,90,3,0,5,4,0].filter(function(elem,index,Array){ return index === Array.indexOf(elem); })
四、数组对象全等比较
// 这些可以 'abc' === 'abc' // true 1 === 1 // true // 然而这些不行 [1,2,3] === [1,2,3] // false {a: 1} === {a: 1} // false {} === {} // false
因为[1,2,3]和[1,2,3]是两个不同的数组,只是它们的元素碰巧相同。因此,不能简单的通过===来判断
五、经典面试题目
const Greeters = [] for (var i = 0 ; i < 10 ; i++) { Greeters.push(function () { return console.log(i) }) } Greeters[0]() // 10 Greeters[1]() // 10 Greeters[2]() // 10
把 var 改成 let试试!
const Greeters = [] for (let i = 0 ; i < 10 ; i++) { Greeters.push(function () { return console.log(i) }) } Greeters[0]() // 0 Greeters[1]() // 1 Greeters[2]() // 2
六、Math.min()比Math.max()大
Math.min() < Math.max() // false Math.min() > Math.max() // true //因为Math.min() 返回 Infinity, 而 Math.max()返回 -Infinity。