您好,登錄后才能下訂單哦!
如何在css中使用position屬性?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
position 屬性值的含義:
static
元素框正常生成。塊級元素生成一個矩形框,作為文檔流的一部分,行內(nèi)元素則會創(chuàng)建一個或多個行框,置于其父元素中。
relative
元素框偏移某個距離。元素仍保持其未定位前的形狀,它原本所占的空間仍保留。
absolute
元素框從文檔流完全刪除,并相對于其包含塊定位。包含塊可能是文檔中的另一個元素或者是初始包含塊。元素原先在正常文檔流中所占的空間會關(guān)閉,就好像元素原來不存在一樣。元素定位后生成一個塊級框,而不論原來它在正常流中生成何種類型的框。
fixed
元素框的表現(xiàn)類似于將 position 設(shè)置為 absolute,不過其包含塊是視窗本身。
事實上默認(rèn)的static和fixed這兩種情況是比較容易辨別的,而容易混淆的是relative和absolute。
用更簡單的說法就是absolute是將原本在文檔流中所占的位置去掉,并以第一個非static定位的父元素進行定位,一般這樣我們都會用top,left等來控制位置,這就是絕對定位。
而relative這種定位方式則是,在原有的文檔流位置(也就是未設(shè)置POSITION屬性的時候的位置)基礎(chǔ)上移動。
所以當(dāng)我們一般需要讓某些元素隨父元素移動而不會因為瀏覽器窗口大小變動而變形時,一般我們會把父元素定義為relative,而子元素定義為absolute,也就是說absolute是以第一個非static定位的父元素作為參考對象。
而一般我們會讓內(nèi)容居中,讓margin:0 AUTO;就好了。
至于top和margin-top的區(qū)別,有些人可能分不清什么時候用,經(jīng)常會用margin-top來實現(xiàn)定位,事實上這種做法是錯誤的,margin它是外邊距,是占內(nèi)容的,往往用這個來勉強實現(xiàn)定位都會使其他元素位置改變或?qū)е缕渌Ч@個效果并非我們想要的。
所以要認(rèn)清absolute和relative的區(qū)別和用法,加上TOP LEFT RIGHT BOTTOM來定位就可以減少錯誤了。
順帶一提,CSS3之后多了挺多新屬性的,自己還沒一個個看,暫時記一下,background-size:cover;這個是本身就有還是后來才有的?我用DW8的時候并沒有這個屬性提示;
另外CSS3有很多屬性IE是不能支持的,即使有那也是9甚至10以上才能兼容,所以在寫的時候要注意瀏覽器的判斷,根據(jù)不同瀏覽器設(shè)計不同的樣式
<!--[if !IE]><!--> 除IE外都可識別 <!--<![endif]-->
<!--[if IE]> 所有的IE可識別 <![endif]-->
<!--[if IE 6]> 僅IE6可識別 <![endif]-->
<!--[if lt IE 6]> IE6以及IE6以下版本可識別 <![endif]-->
<!--[if gte IE 6]> IE6以及IE6以上版本可識別 <![endif]-->
<!--[if IE 7]> 僅IE7可識別 <![endif]-->
<!--[if lt IE 7]> IE7以及IE7以下版本可識別 <![endif]-->
<!--[if gte IE 7]> IE7以及IE7以上版本可識別 <![endif]-->
<!--[if IE 8]> 僅IE8可識別 <![endif]-->
<!--[if IE 9]> 僅IE9可識別 <![endif]-->
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注億速云行業(yè)資訊頻道,感謝您對億速云的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。