聚美优品Android面试题,聚美优品面试题.docx

聚美优品面试题

聚美优品面试题 1. overflow-x 属于 CSS2 还是 CSS3 2. 请列举几种可以清除浮动的方法(至少两种) 先来说说浮动的原理和清除浮动的原因:浮动的框可以左右移动,直至它的外边缘遇到包含框或者另一个浮动框的边缘。浮动框不属于(或脱离了)文档中的普通流,当一个元素浮动之后,不会影响到块级框的布局而只会影响行内元素(如span、a、em)的排列,即行内元素浮动后就会表现得像块级元素一样。当浮动框高度超出包含框的时候,也就会出现包含框不会自动伸高来闭合浮动元素(或者可以称为“高度塌陷”现象)。在实际布局中,往往这并不是我们所希望的,所以需要闭合浮动元素,使其包含框表现出正常的高度。 清除浮动方法: (1)添加额外(空)标签 通过在浮动元素末尾添加一个空的标签例如 优点:通俗易懂,容易掌握; 缺点:增加无意义的标签,有违结构与表现的分离。 (2)父元素设置 overflow:hidden 通过设置父元素overflow值为hidden;在IE6中还需要触发 hasLayout ,例如 zoom:1; 优点:不存在结构和语义化问题,代码量极少; 缺点:内容增多时候容易造成不会自动换行导致内容被隐藏掉,无法显示需要溢出的元素。 (3)父元素也设置浮动 优点:不存在结构和语义化问题,代码量极少; 缺点:使得与父元素相邻的元素的布局会受到影响,不可能一直浮动到body,不推荐使用。 (4)给父元素添加clearfix类 由于IE6-7不支持:after,使用 zoom:1触发 hasLayout。 优点:结构和语义化完全正确,代码量居中; 缺点:复用方式不当会造成代码量增加。 clearfix类代码如下: //:after会在元素内容——而不是元素后面插入一个伪素,该规则只添加了一个清除的包含句点作为非浮动元素,注意,:after不是伪类,而是伪元素 .clearfix:after { content: "."; display: block; height: 0; visibility: hidden; clear: both; } // 触发IE6、7下的haslayout .clearfix { *zoom: 1; } 3. display:none 和 visibility:hidden 的区别是什么 相同点:display:none与visibility:hidden都可以用来隐藏某个元素; 不同点:display:none在隐藏元素的时候,将其占位空间也去掉;而visibility:hidden只是隐藏了内容而已,其占位空间仍然保留。 4. 请缩写以下代码: .box { background-position: 10px 20px; background-repeat: no-repeat; background-attachment: fixed; background-color: red; background-image: url(); } 这个没什么好说的,只要是使用过css背景属性的人都知道缩写形式,另外需一提的是color属性可放在最前面也可以放在最后面。 .box { background: red url() no-repeat 10px 20px fixed; } 5. 如何让一段文本中的所有英文单词的首字母大写 css的text-transform:none(默认值) | capitalize | uppercase | lowercase | full-width(css3新增); 取值方面可查看手册,具体是什么就不多说了。 Javascript 1. 请解释一下什么是闭包 对于闭包,相信每个人都有自己的见解,并且网上一大推关于闭包的概念,我的理解是能够访问到其包含(外部)函数内部变量的函数。 主要有两个特性: 一个是可以读取其包含函数内部的变量;另一个就是让这些变量的值始终保持在内存中。 使用闭包的注意点: 过多使用会造成内存泄露的现象,因为闭包会引用其包含函数作用域的变量对象,使得即使包含函数执行完毕后,其作用域的变量对象不会被销毁,即其占用的内存无法得到回收,直至闭包执行完毕后才会被销毁。所以不能滥用闭包,否则会造成网页的性能问题,在IE中可能导致内存泄露。解决方法是,在退出函数之前,将不使用的局部变量全部删除。对于作用域(或者成为执行环境)、作用域链、变量对象的概念,大家可参考javascript高级程序设计的第四章节,关于变量、作用域、内存的分析。这就是为什么说理解闭包前首先要理解js中作用域从产生到销毁过程发生的一系列有趣的事情。 2. call 和 apply 的区别是什么 相同点:都可以在特定作用域(环境)下调用函数; 不同点:传递的参数形式不同,call方法的参数必须一

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值