web前端面试题集锦二

1、为什么要初始化CSS样式?

答案:因为浏览器的兼容问题,不同浏览器对有些标签的默认值是不同的,如果没对CSS初始化往往会出现浏览器之间的页面显示差异。

当然,初始化样式会对SEO有一定的影响,但鱼和熊掌不可兼得,但力求影响最小的情况下初始化。

2、浮动元素引起的问题?

答案:a. 父元素的高度无法被撑开,影响与父元素同级的元素

b. 与浮动元素同级的非浮动元素会跟随其后

c. 若非第一个元素浮动,则该元素之前的元素也需要浮动,否则会影响页面显示的结构

3、line-height三种赋值方式有何区别?(带单位、纯数字、百分比)?

答案:带单位:px不用计算,em则会使元素以其父元素font-size值为参考来计算自己的行高

纯数字:把比例传递给后代,例如父级行高为1.5,子元素字体为18px,则子元素行高为1.5*18=27px

百分比:将计算后的值传递给后代

4、 :link、:visited、:hover、:active的执行顺序是怎么样的?

答案:L-V-H-A,l(link)ov(visited)e h(hover)a(active)te,即用喜欢和讨厌两个词来概括

5、css属性content有什么作用?有什么应用?

答案:css的content属性专门应用在 before/after 伪元素上,用于来插入生成内容,可以配合自定义字体显示特殊符号。。

6、文字超出显示为省略号?

答案://单行:

overflow: hidden;

text-overflow:ellipsis;

white-space: nowrap;

//多行:

display: -webkit-box;

-webkit-box-orient: vertical;

-webkit-line-clamp: 3;

overflow: hidden;

7、HTML5有哪些新增的表单元素?

答案:datalist   datetime   output   date   month   week time   color   number   range    email   url

8、用纯CSS创建一个三角形的原理是什么?

答案:首先,需要把元素的宽度、高度设为0。然后设置边框样式。

width: 0;

height: 0;

border-top: 40px solid transparent;

border-left: 40px solid transparent;

border-right: 40px solid transparent;

border-bottom: 40px solid #ff0000;

9、什么时候可以触发BFC?

答案:根元素,即html

float的值不为none(默认)

overflow的值不为visible(默认)

display的值为inline-block、table-cell、table-caption

position的值为absolute或fixed

10、style标签写在body后与body前有什么区别?

答案:页面加载自上而下 当然是先加载样式。

写在body标签后由于浏览器以逐行方式对HTML文档进行解析,当解析到写在尾部的样式表(外联或写在style标签)会导致浏览器停止之前的渲染,等待加载且解析样式表完成之后重新渲染,在windows的IE下可能会出现FOUC现象(即样式失效导致的页面闪烁问题)

猜你喜欢

转载自www.cnblogs.com/gcghcxy/p/10968589.html