css關鍵基礎點

CSS中 link 和@import 的區別是什麼?

a. link屬於HTML標籤,而@import是CSS提供的,且只能加載 CSS
b. 頁面被加載時,link會同時被加載,而@import引用的CSS會等到頁面被加載完再加載
c. import只在IE5以上才能識別,而link是HTML標籤,無兼容問題
d. link方式的樣式的權重 高於@import的權重
e. 當使用 Javascript 控制 DOM 去改變樣式的時候,只能使用 link 方式,因爲 @import 眼裏只有 CSS ,不是 DOM 可以控制

position的absolute與fixed共同點與不同點

相同
a. 改變行內元素的呈現方式,display被置爲block
b. 讓元素脫離普通流,不佔據空間
c. 默認會覆蓋到非定位元素上
區別
a. absolute的”根元素“是可以設置的,而fixed的”根元素“固定爲瀏覽器窗口。
b. 當你滾動網頁,fixed元素與瀏覽器窗口之間的距離是不變的。

position的值, relative和absolute分別是相對於誰進行定位的?

absolute:生成絕對定位的元素,相對於 static 定位以外的第一個祖先元素進行定位
fixed:生成絕對定位的元素,相對於瀏覽器窗口進行定位。 (IE6不支持)
relative:生成相對定位的元素,相對於其在普通流中的位置進行定位
static:默認值。沒有定位,元素出現在正常的流中

解釋下 CSS sprites原理,優缺點

CSS Sprites其實就是把網頁中一些背景圖片整合到一張圖片文件中,
再利用CSS的“background-image”,“background- repeat”,“background-position”的組合進行背景定位,
background-position可以用數字精確的定位出背景圖片的位置。
優點
a. 減少網頁的http請求
b. 減少圖片的字節
c. 解決了網頁設計師在圖片命名上的困擾,只需對一張集合的圖片上命名就可以了,不需要對每一個小元素進行命名
d. 更換風格方便,只需要在一張或少張圖片上修改圖片的顏色或樣式,整個網頁的風格就可以改變。
缺點
a. 在寬屏,高分辨率的屏幕下的自適應頁面,你的圖片如果不夠寬,很容易出現背景斷裂
b. CSS Sprites在開發的時候,要通過photoshop或其他工具測量計算每一個背景單元的精確位置
c. 在維護的時候比較麻煩,如果頁面背景有少許改動,一般就要改這張合併的圖片

經常遇到的瀏覽器兼容性有哪些?如何解決?

a. 瀏覽器默認的margin和padding不同
b. IE6雙邊距bug
c. 在ie6,ie7中元素高度超出自己設置高度。原因是IE8以前的瀏覽器中會給元素設置默認的行高的高度導致的
d. min-height在IE6下不起作用
e. 透明性IE用filter:Alpha(Opacity=60),而其他主流瀏覽器用 opacity:0.6
f. input邊框問題,去掉input邊框一般用border:none;就可以,但由於IE6在解析input樣式時的BUG(優先級問題),在IE6下無效

rgba()和opacity的透明效果有什麼不同?

a. opacity作用於元素,以及元素內的所有內容的透明度,rgba()只作用於元素的顏色或其背景色。
b. 設置rgba透明的元素的子元素不會繼承透明效果!

清除浮動的方法

a. 設置父元素高度
b. 在末尾添加一個div設置爲clear:both;
c. 父元素使用bfc來清除浮動

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章