1.有哪項(xiàng)方式可以對(duì)一個(gè)DOM設(shè)置它的CSS樣式?
外部樣式表,引入一個(gè)外部css文件
內(nèi)部樣式表,將css代碼放在??標(biāo)簽內(nèi)部
內(nèi)聯(lián)樣式,將css樣式直接定義在?HTML?元素內(nèi)部
2.CSS都有哪些選擇器?
派生選擇器(用HTML標(biāo)簽申明)
id選擇器(用DOM的ID申明)
類選擇器(用一個(gè)樣式類名申明)
屬性選擇器(用DOM的屬性申明,屬于CSS2,IE6不支持,不常用,不知道就算了)
除了前3種基本選擇器,還有一些擴(kuò)展選擇器,包括
后代選擇器(利用空格間隔,比如div?.a{??})
群組選擇器(利用逗號(hào)間隔,比如p,div,#a{??})
那么問題來了,CSS選擇器的優(yōu)先級(jí)是怎么樣定義的?
基本原則:
一般而言,選擇器越特殊,它的優(yōu)先級(jí)越高。也就是選擇器指向的越準(zhǔn)確,它的優(yōu)先級(jí)就越高。
復(fù)雜的計(jì)算方法:
用1表示派生選擇器的優(yōu)先級(jí)
用10表示類選擇器的優(yōu)先級(jí)
用100標(biāo)示ID選擇器的優(yōu)先級(jí)
div.test1?.span?var?優(yōu)先級(jí)?1+10?+10?+1
span#xxx?.songs?li?優(yōu)先級(jí)1+100?+?10?+?1
#xxx?li?優(yōu)先級(jí)?100?+1
? ? ? ? ? ? ? ?那么問題來了,看下列代碼,標(biāo)簽內(nèi)的文字是什么顏色的?

中的先后關(guān)系無關(guān)。
3.CSS中可以通過哪些屬性定義,使得一個(gè)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分別是什么?
答案:針對(duì)不同的瀏覽器寫不同的CSS?code的過程,就是CSS?hack。
示例如下:

6.請(qǐng)用Css寫一個(gè)簡(jiǎn)單的幻燈片效果頁面
答案:知道是要用css3。使用animation動(dòng)畫實(shí)現(xiàn)一個(gè)簡(jiǎn)單的幻燈片效果。

7.行內(nèi)元素和塊級(jí)元素的具體區(qū)別是什么?行內(nèi)元素的padding和margin可設(shè)置嗎?
塊級(jí)元素(block)特性:
總是獨(dú)占一行,表現(xiàn)為另起一行開始,而且其后的元素也必須另起一行顯示;
寬度(width)、高度(height)、內(nèi)邊距(padding)和外邊距(margin)都可控制;
內(nèi)聯(lián)元素(inline)特性:
和相鄰的內(nèi)聯(lián)元素在同一行;
寬度(width)、高度(height)、內(nèi)邊距的top/bottom(padding-top/padding-bottom)和外邊距的top/bottom(margin-top/margin-bottom)都不可改變(也就是padding和margin的left和right是可以設(shè)置的),就是里面文字或圖片的大小。
那么問題來了,瀏覽器還有默認(rèn)的天生inline-block元素(擁有內(nèi)在尺寸,可設(shè)置高寬,但不會(huì)自動(dòng)換行),有哪些?
答案:input img button texterea label
8.什么是外邊距重疊?重疊的結(jié)果是什么?
答案:
外邊距重疊就是margin-collapse。
在CSS當(dāng)中,相鄰的兩個(gè)盒子(可能是兄弟關(guān)系也可能是祖先關(guān)系)的外邊距可以結(jié)合成一個(gè)單獨(dú)的外邊距。這種合并外邊距的方式被稱為折疊,并且因而所結(jié)合成的外邊距稱為折疊外邊距。
折疊結(jié)果遵循下列計(jì)算規(guī)則:
兩個(gè)相鄰的外邊距都是正數(shù)時(shí),折疊結(jié)果是它們兩者之間較大的值。
兩個(gè)相鄰的外邊距都是負(fù)數(shù)時(shí),折疊結(jié)果是兩者絕對(duì)值的較大值。
兩個(gè)外邊距一正一負(fù)時(shí),折疊結(jié)果是兩者的相加的和。
9.rgba()和opacity的透明效果有什么不同?
答案:
rgba()和opacity都能實(shí)現(xiàn)透明效果,但最大的不同是opacity作用于元素,以及元素內(nèi)的所有內(nèi)容的透明度,
而rgba()只作用于元素的顏色或其背景色。(設(shè)置rgba透明的元素的子元素不會(huì)繼承透明效果?。?/p>
10.css中可以讓文字在垂直和水平方向上重疊的兩個(gè)屬性是什么?
答案:
垂直方向:line-height
水平方向:letter-spacing
那么問題來了,關(guān)于letter-spacing的妙用知道有哪些么?
答案:可以用于消除inline-block元素間的換行符空格間隙問題。
11.如何垂直居中一個(gè)浮動(dòng)元素?
