Web前端面試題及答案(姚聰經驗整理)

雖然個人認爲這些知識不是必須記憶的,需要的時候可以查閱筆記,但是對於得到面試的機會還是很重要的。 

CSS

1、清除浮動的幾種方式,各自的優缺點

清除浮動:使父元素圍住浮動的子元素,避免對後續元素造成影響。

(1)給父元素設置overflow:hidden;或float:left;或position:absolute;或position:relative;。觸發塊級格式化上下文(BFC),從正常文檔流脫離,父元素本身實現獨立佈局,圍住其中的浮動元素。但專門這樣設置,可能會改變佈局,對於後三者,使block變爲inline-block,父元素寬度變化。

(2)在子元素後面添加空的block元素。添加了額外的元素,且block元素帶有margin等。

(3)在父元素上加clearfix類名,在父元素的最後加塊級元素.(僞元素選擇器),通過clear:both使父元素括住浮動的元素來清除float的影響,使.不可見。常用這種方式,Bootstrap支持clearfix類名。

<style>
  .clearfix::after{content:".";display:block;clear:both;height:0;visibility:hidden;} 
  .clearfix{zoom:1;} /*IE低版本不支持after*/ 
  div{background-color:red;}
  #p1{float:left;background-color:yellow;}
  #p2{float:right;background-color:green;}
</style>

<div class="clearfix">
  <p id="p1">p1</p> 
  <p id="p2">p2</p> 
  <!-- <p style="clear:both"></p> 添加空的p元素,使div可以圍住p1p2,不推薦-->
</div>

2、塊級元素水平垂直居中的方法

3、CSS選擇器有哪些?優先級如何計算

4、px、em和rem的區別

px,像素,相對於顯示器屏幕分辨率而言;

em,相對長度單位,相對於當前對象內文本的字體大小,若字體大小未顯式設置,則相對於瀏覽器默認的字體大小;

rem,相對長度單位,相對於html根元素的字體大小。

5、display:none和visibility:hidden的區別

display:none設置元素不顯示,是徹底消失,不在文檔流中佔位,瀏覽器也不會解析該元素。visibility:hidden是視覺上消失,可理解爲透明度爲0的效果,在文檔流中佔位,瀏覽器會解析該元素。

使用visibility:hidden比display:none性能上要好,display:none切換顯示時,頁面產生迴流(頁面中的部分元素需要改變規模尺寸、佈局、顯示隱藏等,頁面重新構建),而visibility:hidden切換是否顯示時則不會引起迴流。

6、用一個div寫出三條橫線的小圖標

div{
  height:5px;
  width:30px;
  background-color:#DD575C;
  background-clip:content-box;
  padding-top:5px;
  padding-bottom:5px;
  border-top:#DD575C solid 5px;
  border-bottom:#DD575C solid 5px;
}

66、jQuery的事件委託方法bind 、live、delegate、on之間有什麼區別?(常見)

69、什麼叫優雅降級和漸進增強?(常見)

70、sessionStorage 、localStorage 和 cookie 之間的區別

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章