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{??})
那么問(wèn)題來(lái)了,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
? ? ? ? ? ? ? ?那么問(wèn)題來(lái)了箍邮,看下列代碼,標(biāo)簽內(nèi)的文字是什么顏色的叨叙?
3.CSS中可以通過(guò)哪些屬性定義,使得一個(gè)DOM元素不顯示在瀏覽器可視范圍內(nèi)钮呀?
最基本的:
設(shè)置display屬性為none剑鞍,或者設(shè)置visibility屬性為hidden
技巧性:
設(shè)置寬高為0,設(shè)置透明度為0爽醋,設(shè)置z-index位置在-1000
4.超鏈接訪問(wèn)過(guò)后hover樣式就不出現(xiàn)的問(wèn)題是什么蚁署?如何解決?
答案:被點(diǎn)擊訪問(wèn)過(guò)的超鏈接樣式不在具有hover和active了,解決方法是改變CSS屬性的排列順序:?L-V-H-A(link,visited,hover,active)
5.什么是Css Hack蚂四?ie6,7,8的hack分別是什么光戈?
答案:針對(duì)不同的瀏覽器寫不同的CSS?code的過(guò)程哪痰,就是CSS?hack。
示例如下:
6.請(qǐng)用Css寫一個(gè)簡(jiǎn)單的幻燈片效果頁(yè)面
答案:知道是要用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è)置的)边灭,就是里面文字或圖片的大小。
那么問(wèn)題來(lái)了健盒,瀏覽器還有默認(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ì)繼承透明效果!)
10.css中可以讓文字在垂直和水平方向上重疊的兩個(gè)屬性是什么辱匿?
答案:
垂直方向:line-height
水平方向:letter-spacing
那么問(wèn)題來(lái)了键痛,關(guān)于letter-spacing的妙用知道有哪些么炫彩?
答案:可以用于消除inline-block元素間的換行符空格間隙問(wèn)題。
11.如何垂直居中一個(gè)浮動(dòng)元素絮短?