好程式設計師web前端培訓分享HTML/CSS部分面試題

好程式設計師發表於2020-07-15

  好程式設計師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>

  <div></div>

  </div>

  CSS

  .wrapper{position:relative;}

  .content{

  background-color:#6699FF;

  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/69913864/viewspace-2704633/,如需轉載,請註明出處,否則將追究法律責任。

相關文章