1. 程式人生 > 實用技巧 >xx公司筆試題解答

xx公司筆試題解答

1.display:inline-block;行內塊元素

在行內元素中有幾個特殊的標籤——<img />、<input />、<td>,
可以對它們設定寬高和對齊屬性,有些資料可能會稱它們為行內塊元素。
行內塊元素的特點:
(1)和相鄰行內元素(行內塊)在一行上,但是之間會有**空白縫隙**
(2)**預設寬度就是它本身內容的寬度。**
(3)高度,行高、外邊距以及內邊距都可以控制。

display:inline;行內元素

(1)** 預設寬度就是它本身內容的寬度。 **
(2)高、寬無效,但水平方向的padding和margin可以設定,垂直方向的無效。
(3)和相鄰行內元素在一行上。
(4)行內元素只能容納文字或則其他行內元素。 a標籤除外

display:block;塊級元素

(1)**寬度預設是容器的100%**
(2)高度,行高、外邊距以及內邊距都可以控制。
(3)總是從新行開始
(4)可以容納內聯元素和其他塊元素。

2.link和@import

link:1.可以定義rss、rel等作用;2.當引入到link標籤時,頁面會同步載入所引的css;3.可以使用js動態引入

@import:1.只能載入css樣式;2.等到頁面載入完才會被載入;3.需要ie5以上才能使用

3.盒模型

W3C標準盒模型:(預設)box-sizing:content-box;寬度width:width+padding+border

怪異盒模型(IE盒模型):box-sizing:border-box;寬度width:width(content+padding+border)

4.怎麼讓Chrome支援小於12px 的文字

谷歌瀏覽器Chrome是Webkit的核心,有一個 -webkit-text-size-adjust 的私有 CSS 屬性,通過它即可實現字型大小不隨終端裝置或瀏覽器影響。
CSS樣式定義如下:
-webkit-text-size-adjust:none;

但是在最新版的谷歌裡。已經不在支援這個屬性啦,需要通過css3的transform來解決,方法如下:

css部分 html佈局

body,p{ margin:0; padding:0;}
p{font-size:10px;}
span{-webkit-transform:scale(0.8);-o-transform:scale(1); display:inline-block;}

<p><span id="span1">我是一個小於12PX的字型</span></p>

解釋:

1.{webkit-transform:scale(0.8);display:inline-block}//0.8位縮放倍數,具體自己根據實際需求修改,只能縮放可以定義寬高的元素,而span是行內元素,

為什麼定義display:inline-block而不是display:block?轉為block就獨佔一行啦,所以轉換為inline-block

2.{-o-transform:scale(1);}opera現在最新版也是webkit核心,新版本的opera,本來就是10px的字型了。

5.null undefined的區別

6.react的框架中沒有巢狀關係的元件通訊有哪些方式?

7.React的生命週期?vue生命週期?

8.vue中data為什麼被設計成一個函式?

9.Html5提供了哪些常用的api?

10.什麼是跨域?為什麼會有跨域?

11.js中有哪些資料型別?資料型別分為哪幾種?他們有什麼區別?檢測資料型別的方法又有哪些?

12.迴圈遍歷一個數組的方法有哪些?分別是如何跳出迴圈?

13.(Less)sass裡如何定義變數?如何實現樣式繼承?

14.如何對一個數組做一個快速淺拷貝?

15.講講常用的http請求響應的狀態碼分別是什麼意思,1-5分別舉例?

16.vue跨元件通訊應該怎麼做?

17.非同步載入資料放在Vue哪個生命週期做更合適,為什麼?

18.vue或react在渲染列表時,key屬性的作用是什麼?

19.講講React元件中的props和state作用和區別?

20.Opacity是否有瀏覽器相容性?

21.Iframe如何自適應內容高度?