分享前端面試真題(一)

一、行內元素有哪些?塊級元素有哪些? 空元素有那些?

(1)行內元素有:a b span img input select strong。

(2)塊級元素有:div ul ol li dl dt dd h1 h2 h3 h4…p 

(3)常見的空元素:<br> <hr> <img> <input> <link> <meta>

二、常見的瀏覽器內核有哪些?

Trident 內核:IE,MaxThon,TT,The World,360,搜狗瀏覽器。

Gecko 內核:Netscape6 及以上版本,FF,MozillaSuite/SeaMonkey 

Presto 內核:Opera7 及以上

Webkit 內核:Safari,Chrome 

三、請描述一下 cookies,sessionStorage 和 localStorage 的區別?

cookie 是網站爲了標示用戶身份而儲存在用戶本地終端(Client Side)上的數據(通常經過加密),cookie 數據始終在同源的 http 請求中攜帶(即使不需要),記會在瀏覽 器和服務器間來回傳遞。 

sessionStorage 和 localStorage 不會自動把數據發給服務器,僅在本地保存。 

存儲大小: cookie 數據大小不能超過 4k;sessionStorage 和 localStorage 雖然也有存儲大小的限制,但比 cookie 大得多,可以達到 5M 或更大。 

有期時間: localStorage存儲持久數據,瀏覽器關閉後數據不丟失除非主動刪除數據; sessionStorage數據在當前瀏覽器窗口關閉後自動刪除;cookie設置的 cookie 過期時間之前一直有效,即使窗口或瀏覽器關閉 。

四、如何在頁面上實現一個圓形的可點擊區域? 

1、map+area 或者 svg  

2、border-radius  

3、純 js 實現需要求一個點在不在圓上簡單算法、獲取鼠標座標等等 

五、介紹一下標準的 CSS 的盒子模型?低版本 IE 的盒子模型有什麼不同的? 

(1)有兩種, IE 盒子模型、W3C 盒子模型

(2)盒模型: 內容(content)、填充(padding)、邊界(margin)、 邊框 (border)

(3)區別: IE 的 content 部分把 border 和 padding 計算了進去

六、如何居中 div?

1、水平居中:給 div 設置一個寬度,然後添加 margin:0 auto 屬性 

div{     width:200px;     margin:0 auto;     } 

2、讓絕對定位的 div 居中 

div {     position: absolute;     width: 300px;     height: 300px;     margin: auto;  top: 0;     left: 0;     bottom: 0;     right: 0;    }

3、水平垂直居中,確定容器的寬高,寬 500 高 300 。 
 
div {  position: relative;  width:500px; height:300px; top: 50%; left: 50%; margin: -150px 0 0 -250px; } 

4、水平垂直居中,未知容器的寬高,利用 `transform` 屬性 

div {   position: absolute;  width:500px;     height:300px;     top: 50%;     left: 50%;     transform: translate(-50%, -50%); }

5、水平垂直居中,利用 flex 佈局 ,實際使用時應考慮兼容性 

.container {  display: flex; align-items: center;   /* 垂直居中 */     justify-content: center; /* 水平居中 */  }    

.container div {  width: 100px; height: 100px; }

七、 用純 CSS 創建一個三角形的原理是什麼? 

把上、左、右三條邊隱藏掉(顏色設爲 transparent)  

#demo {  width: 0; height: 0;  border-width: 20px;  border-style: solid;   border-color: transparent transparent red transparent;   } 

八、請解釋一下爲什麼需要清除浮動?清除浮動的方式 。

清除浮動是爲了清除使用浮動元素產生的影響。浮動的元素,高度會塌陷, 而高度的塌陷使我們頁面後面的佈局不能正常顯示。 
1、父級 div 定義 height;  

2、父級 div 也一起浮動;  

3、常規的使用一個 class;    .

clearfix::before, .clearfix::after {  content: " ";   display: table;    }    .clearfix::after {  clear: both;    }    .clearfix {  *zoom: 1;    } 
 
 
 

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