各大互聯(lián)網(wǎng)公司前端面試題集錦

思而思學(xué)網(wǎng)

1

有哪項方式可以對一個DOM設(shè)置它的CSS樣式?

答案:外部樣式表,引入一個外部css文件

內(nèi)部樣式表,將css代碼放在 標(biāo)簽內(nèi)部

內(nèi)聯(lián)樣式,將css樣式直接定義在 HTML 元素內(nèi)部

2

CSS都有哪些選擇器?

答案:

派生選擇器(用HTML標(biāo)簽申明)

id選擇器(用DOM的ID申明)

類選擇器(用一個樣式類名申明)

屬性選擇器(用DOM的屬性申明,屬于CSS2,IE6不支持,不常用,不知道就算了)

除了前3種基本選擇器,還有一些擴(kuò)展選擇器,包括

后代選擇器(利用空格間隔,比如span .a{ })

群組選擇器(利用逗號間隔,比如p,span,#a{ })

那么問題來了,CSS選擇器的優(yōu)先級是怎么樣定義的?

基本原則:

一般而言,選擇器越特殊,它的優(yōu)先級越高。也就是選擇器指向的越準(zhǔn)確,它的優(yōu)先級就越高。

復(fù)雜的計算方法:

用1表示派生選擇器的優(yōu)先級

用10表示類選擇器的優(yōu)先級

用100標(biāo)示ID選擇器的優(yōu)先級

span.test1 .span var 優(yōu)先級 1+10 +10 +1

span#xxx .songs li 優(yōu)先級1+100 + 10 + 1

#xxx li 優(yōu)先級 100 +1

那么問題來了,看下列代碼,

標(biāo)簽內(nèi)的文字是什么顏色的?

123

答案:red。與樣式定義在文件中的先后順序有關(guān),即是后面的覆蓋前面的,與在

中的先后關(guān)系無關(guān)。

3

CSS中可以通過哪些屬性定義,使得一個DOM元素不顯示在瀏覽器可視范圍內(nèi)?

答案:

最基本的:

設(shè)置display屬性為none,或者設(shè)置visibility屬性為hidden

技巧性:

設(shè)置寬高為0,設(shè)置透明度為0,設(shè)置z-index位置在-1000

4

超鏈接訪問過后hover樣式就不出現(xiàn)的問題是什么?如何解決?

答案:被點(diǎn)擊訪問過的超鏈接樣式不在具有hover和active了,解決方法是改變CSS屬性的排列順序: L-V-H-A(link,visited,hover,active)

5

什么是Css Hack?ie6,7,8的hack分別是什么?

答案:針對不同的瀏覽器寫不同的CSS code的過程,就是CSS hack。

示例如下:

#test {

width:300px;

height:300px;

background-color:blue; /firefox/

background-color:red\9; /all ie/

background-color:yellow\0; /ie8/


熱門推薦

最新文章