好程式設計師web前端教程分享HTML/CSS部分常見面試題

好程式設計師IT發表於2019-10-24

  好程式設計師web 前端教程分享HTML/CSS 部分常見面試題 。準備參加web 前端面試的小夥伴們一起看一看吧,希望對大家有所幫助!

 

1 、什麼是盒子模型 ?

 

在網頁中,一個元素佔有空間的大小由幾個部分構成,其中包括元素的內容(content) ,元素的內邊距 (padding) ,元素的邊框 (border) ,元素的外邊距 (margin) 四個部分。這四個部分佔有的空間中,有的部分可以顯示相應的內容,而有的部分只用來分隔相鄰的區域或區域。 4 個部分一起構成了 css 中元素的盒模型。

 

2 、行內元素有哪些 ? 塊級元素有哪些 (void) 元素有那些 ?

 

行內元素:a b span img input strong select label em button textarea

 

塊級元素:div ul li dl dt dd p h1-h6 blockquote

 

空元素:即系沒有內容的HTML 元素,例如: br meta hr link input img

 

3 CSS 實現垂直水平居中

 

一道經典的問題,實現方法有很多種,以下是其中一種實現:

 

HTML 結構:

 

<div class="wrapper">

 

<div class="content"></div>

 

</div>

 

CSS

 

.wrapper{position:relative;}

 

.content{

 

 

 

width:200px;

 

height:200px;

 

position: absolute; // 父元素需要相對定位

 

top: 50%;

 

left: 50%;

 

margin-top:-100px ; // 二分之一的 height width

 

margin-left: -100px;

 

}

 

4 、簡述一下 src href 的區別

 

href  是指向網路資源所在位置,建立和當前元素 ( 錨點 ) 或當前文件 ( 連結 ) 之間的連結,用於超連結。

 

src 是指向外部資源的位置,指向的內容將會嵌入到文件中當前標籤所在位置 ; 在請求 src 資源時會將其指向的資源下載並應用到文件內,例如 js 指令碼, img 圖片和 frame 等元素。當瀏覽器解析到該元素時,會暫停其他資源的下載和處理,直到將該資源載入、編譯、執行完畢,圖片和框架等元素也如此,類似於將所指向資源嵌入當前標籤內。這也是為什麼將 js 指令碼放在底部而不是頭部。

 

5 、什麼是 CSS Hack?

 

一般來說是針對不同的瀏覽器寫不同的CSS, 就是  CSS Hack

 

IE 瀏覽器 Hack 一般又分為三種,條件 Hack 、屬性級 Hack 、選擇符 Hack( 詳細參考 CSS 文件: css 文件 ) 。例如:

 

// 1 、條件 Hack

 

// 2 、屬性 Hack

 

.test{

 

color:#0909; /* For IE8+ */

 

*color:#f00; /* For IE7 and earlier */

 

_color:#ff0; /* For IE6 and earlier */

 

}

 

// 3 、選擇符 Hack

 

* html .test{color:#090;} /* For IE6 and earlier */

 

* + html .test{color:#ff0;} /* For IE7 */

 

6 、簡述同步和非同步的區別

 

同步是阻塞模式,非同步是非阻塞模式。

 

同步就是指一個程式在執行某個請求的時候,若該請求需要一段時間才能返回資訊,那麼這個程式將會一直等待下去,直到收到返回資訊才繼續執行下去;

 

非同步是指程式不需要一直等下去,而是繼續執行下面的操作,不管其他程式的狀態。當有訊息返回時系統會通知程式進行處理,這樣可以提高執行的效率。

 

7 px em 的區別

 

px em 都是長度單位,區別是, px 的值是固定的,指定是多少就是多少,計算比較容易。 em 得值不是固定的,並且 em 會繼承父級元素的字型大小。

 

瀏覽器的預設字型高都是16px 。所以未經調整的瀏覽器都符合 : 1em=16px 。那麼 12px=0.75em, 10px=0.625em

 

8 、什麼叫優雅降級和漸進增強 ?

 

漸進增強 progressive enhancement

 

針對低版本瀏覽器進行構建頁面,保證最基本的功能,然後再針對高階瀏覽器進行效果、互動等改進和追加功能達到更好的使用者體驗。

 

優雅降級 graceful degradation

 

一開始就構建完整的功能,然後再針對低版本瀏覽器進行相容。

 

區別:

 

a.  優雅降級是從複雜的現狀開始,並試圖減少使用者體驗的供給

 

b.  漸進增強則是從一個非常基礎的,能夠起作用的版本開始,並不斷擴充,以適應未來環境的需要

 

c.  降級 ( 功能衰減 ) 意味著往回看 ; 而漸進增強則意味著朝前看,同時保證其根基處於安全地帶

 

9 、瀏覽器的核心分別是什麼 ?

 

IE: trident 核心

 

Firefox gecko 核心

 

Safari webkit 核心

 

Opera :以前是 presto 核心, Opera 現已改用 Google Chrome Blink 核心

 

Chrome Blink( 基於 webkit Google Opera Software 共同開發 )

 

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913892/viewspace-2661228/,如需轉載,請註明出處,否則將追究法律責任。

相關文章