您现在的位置:首页 >> 前端 >> 内容

CSS面试题实例

时间:2017/11/20 15:45:46 点击:

  核心提示:Q :一个p,宽度是100px,此时设置padding是20px,添加一个什么css属性可以让p的实际宽度仍然保持在100px,而不是140px?A : box-sizing : border-box...

Q : 一个p,宽度是100px,此时设置padding是20px,添加一个什么css属性可以让p的实际宽度仍然保持在100px,而不是140px?

A : box-sizing : border-box


Q : 清除浮动的方式,提供尽可能多的方案。

A :

1. 找到父元素添加overflow : hidden

2. 额外标签 clear : both

3. 伪元素

clearfix :after {

content : "" ;

clear : both ;

height : 0;

line-height : 0;

display : block;

visibility :hidden;

}


Q : 如何让两个p分别以40%和60%的比例排在一行内,提供尽可能多的方案。

A : 1. display : inline-block 注 : 中间的空白文本元素

2. float : left

3. position : absolute

4. 父元素 display : flex


Q : 如何用css实现一个p的一秒内向右平滑移动100px的动画 。

A : transition : 1s


Q : localStorage,sessionStorage,Cookie的区别和用途。

A : cookie : 体积小 、每次发送请求时携带。可由服务端设置http-only的cookie,客户端也可以设置自己的cookie,可设置失效时间,浏览器关闭后失效。

localStorage : 体积大,除非手动清除否则不会消失

sessionStorage : 体积大,浏览器关闭后消失


Q :

var string = "我的账户余额:2,235,467.20";
                   console.log(?);

A :parseFloat(string.match(/\d+|\./g).join(""))


Q :

function person() {
    return this.name;
}
var someOne = {
    name: 'Jenny',
    age: 18
};
// 此处如何输出 'Jenny'

A : person.call(someOne)


Q :

4.语法题 有一个合法的 JSON 对象(即不包含函数等值的对象),设计一个函数,取出该对象内所有 key 为 “id” 并且其值不为对象、数组的值,装入一个数组并返回。

function extractIds(data) {
    // implement
}
样例数据:
var data = {
    id: 1,
    items: [
        { id: 2 },
        { item: 3, id: [
            { id: 4 },
            { id: 5 }
        ]}
    ]
};

A :

function getId(data){ 
 let stack = [ data ] ,ret = [];
 while(stack.length > 0){
  let cur = stack.pop();
  for(let key in cur){
      if(cur[key] instanceof Object ){
        stack.push(cur[key]);
      }else{
       if(key === "id") ret.push(cur[key]);
      }
  }
return ret ;
} 

Q : 闭包 下面五段代码分别输出什么?并且什么时候输出什么?

for(var i = 0; i < 5; i++) {
    console.log(i);
}
for(var i = 0; i < 5; i++) {
    setTimeout(function() {
        console.log(i);
    }, 1000 * i);
}
for(var i = 0; i < 5; i++) {
    (function(i) {
        setTimeout(function() {
            console.log(i);
        }, i * 1000);
    })(i);
}
for(var i = 0; i < 5; i++) {
    (function() {
        setTimeout(function() {
            console.log(i);
        }, i * 1000);
    })(i);
}
for(var i = 0; i < 5; i++) {
    setTimeout((function(i) {
        console.log(i);
    })(i), i * 1000);

A : 1. 立即输出0-4

2. 0-4秒间输出 5

3. 0-4秒间输出 0-4

4. 0-4秒间输出 5

5. 立即输出 0-4

Tags:CS SS S面 面试 
作者:网络 来源:u012564122