1. 程式人生 > >【常見面試題】網易遊戲前端面試題集錦1

【常見面試題】網易遊戲前端面試題集錦1

一、塊級元素和行內元素的區別,行內塊級元素是什麼東西?
解答:
(1)塊級元素獨佔一行,可以單獨設定寬高等特性,塊級元素內可以包含非塊級元素和塊級元素
(2)行內元素不獨佔一行,在一行內可以完整顯示時會在一行內顯示元素,設定寬高以及垂直方向上的margin、padding將不會起作用(可以設定line-height),當然替換元素除外。其中只能包含非塊級元素
(3)行內塊級元素:display:inline-block/inline-table ,同時具有以上兩種元素的特性,既可以在一行顯示,同時可以設定元素的寬高以及垂直方向上的特性。
當然可以通過display屬性對元素的顯示方式進行轉換。

二、HTML語義化的理解和作用
解答:
1、什麼是HTML語義化?
HTML語義化指的是根據具體的內容結構,選擇合適的標籤元素,便於開發者閱讀和寫出更加優雅的程式碼,同時有利用瀏覽器引擎和爬蟲的解析,有利於網站的SEO。
2、為什麼要實現HTML的語義化?
(1)在沒有CSS樣式的情況下,是的頁面的樣式結構更加完整
(2)提升使用者體驗:如給圖片元素新增Alt和title屬性,在沒有圖片的時候不至於一片空白,同時還可以給出圖片的描述資訊。
(3)有利於SEO,對於添加了h1-h6標籤以及title標籤的網頁,蜘蛛爬蟲會更容易爬取
(4)有利於其他裝置的解析,(如螢幕閱讀器、盲人閱讀器、移動裝置)以意義的方式來渲染網頁
(5)提高程式碼的可讀性,可維護性等
3、使用語義化標籤的注意事項
(1)儘量減少div、span等非語義化標籤的使用
(2)使用語義化標籤strong、em(兩者的預設的強調方式分別是:加粗、傾斜,但是實際上不止於此)表示強調時最好是藉助CSS樣式表示。
(3)對於純樣式標籤改用CSS樣式替代

三、元素的水平居中和垂直居中
水平居中

1、行內元素
text-align:center
2、塊級元素
margin:0 auto
垂直居中
1、行內元素
(1) line-height
(2)vertical-align:middle
2、塊級元素
padding-top/bottom設定的設定相同的值即可實現垂直居中

塊級元素的水平與垂直居中
1、已知元素的寬高
{
position: absolute;
left:50%;
right:50%;
margin-left:-width/2;
margin-top:-height/2;
}
2、不知道寬高
(1)利用translate
{
position: absolute;
left:50%;
right:50%;
transform:translate(-50%,-50%)
}
(2)flex實現居中
在父元素上設定如下屬性:
{
display:flex;
justify-content:center;//水平居中
align-items:center;//垂直居中
}

四、0 ==null嗎?為什麼?
0==null 測試將會返回false
0<=null、0>=null將會返回true
前者不會做型別轉換而後者會進行型別轉換,將null轉換為number型別,詳情見為什麼null==0返回false

五、移動端適配的是哪種方式
下面有一篇介紹的比較好的博文
適配方式