web前端面试题
A:会形成
B:不会
答案:会。 分析: BFC:它是一个独立的渲染区域,只有Block-level box参与, 它规定了内部的Block-level
Box如何布局,并且与这个区域外部毫不相干。
那些元素会产生BFC:
1根元素
2float属性不为none
3position为absolute或fixed
4display为inline-block, table-cell,table-caption, flex, inline-flex
5overflow不为visible
...
"display:none">
"mypic.jpg" alt="My photo">
会
A 元素中所有的属性都可以继承的
B font-size font-family color 属性是可以继承的
C margin border padding width height 是不可以继承的
D 以上说法都正确
CSS:表单元素不继承body的字体属性,所以排除DA,
margin border padding width height 是不可以继承的,这个是可以继承的,所以C错。
所以正确答案是B,(很勉强,但是要记得:CSS表单元素不继承body的字体属性)
A selector{ +property:value; }
B selector{ _property:value; }
C selector{ *property:value; }
D *html selector{ +property:value;}
分析 答案是B
下划线hack(适用于IE6及其以下版本) _width: [BorderBox Model];
星号hack(适用于IE7以下版本) *width: [BorderBox Model];
星号 HTML hack(适用于IE4-6) * html p {font-size: 5em; }
星号加号HACK(适用于IE7)
虽然IE7不再识别以前的* html hack,但它使用了一个相似的新的hack。
*:first-child+html p { font-size: 5em; }
或者:
*+html p { font-size: 5em; }
A BFC格式化上下文,一个创建了新的BFC的盒子是一个独立布局的,盒子里边的子元素的样式不会影响到外边元素的。
B 在同一个BFC中的两个毗邻的块级盒子在垂直方向(和布局方面方向有关系)的margin会发生折叠
C W3C css2.1规范中的一个概念,他决定了元素如何对其内容进行布局,以及与其他元素的关系和相互作用
D 以上说法都不对。
A正确 B正确 C正确 答案ABC
Box垂直方向的距离由margin决定。属于同一个BFC的两个相邻Box的margin会发生重叠
1)number;
2)string;
3)boolean;
4)object
5)function;
6)undefined.
null不存在对象
undefined存在此对象,但没有初始化.
答案
var obj = {};
obj.__proto__ = Base.prototype;
Base.call(obj);
具体做了三件事:
第一行,创建了一个空对象
第二行,将obj__proto__(当然IE这个是没有的,这里好说事,所以这么说)指向Base.prototype
第三行,Base函数对象的this替换成obj,然后再调用Base函数。
对于第一个参数意义都一样,但对第二个参数:
apply传入的是一个参数数组,也就是将多个参数组合成为一个数组传入,而call则作为call的参数传入(从第二个参数开始)