您好,登錄后才能下訂單哦!
本篇內容介紹了“CSS中的position和z-index屬性怎么使用”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
深入理解CSS中的position定位和z-index屬性
由于平時不太用到,所以過去寫CSS的時候對于position屬性的absolute、relative值理解比較模糊,對于z-index的層疊更是摸不著頭腦,除了理解的因素外,各個瀏覽器的不同解析結果也是一個大問題。今天仔細閱讀了一下CSS文檔,總算是對盒模型的浮動、定位有了比較深刻的理解。
我們在實踐中很有可能遇到這樣的問題:
1、做一個橫向導航,然后鼠標經過之后出現下拉菜單,那么這個下拉菜單的位置控制就是一個關鍵;
2、我們想在一個正常的頁面布局中放入幾個浮在頁面上的氣泡提示,這時既不想讓氣泡提示破壞正常的文檔布局,又不想氣泡提示的定位在不同的瀏覽器中到處亂飄。
3、當我們在一句正常的文本中插入一個小圖標的話,一般會使用
◆relative:相對定位。這個屬性值保持對象所在文檔流中的位置,也就是說它具有和static相同的呈現方式,它同樣占有在文檔流中的固定位置,后面的對象不會侵占或覆蓋;與static屬性值不同的是,設置了relative的對象,可以通過top,left,right,bottom屬性設定自己的新顯示位置,這4個屬性的取值是相對于文檔流的前一個對象的,你可以自由設置這4個屬性偏移到新的位置而不對文檔流中的其他對象產生任何影響,原來的頁面呈現仍然會我行我素:
◆absolute:絕對定位。和relative不同的是,這個屬性值會將當前對象拖出文檔流,后面的對象會占有原來的位置,也就是說,當前對象的呈現是獨立顯示的,但是它的位置在指定top,left,right,bottom任一屬性之前仍是有繼承性的,這時的4個屬性的取值是相對于瀏覽器的,和文檔流無關了。如果把示例中的B區域設定為absolute而不指定4個位置屬性,通過設定margin來改變它的相對位置,用這個方法可以解決前面提到的問題2。
提示a:蘇昱的CSS2.0手冊中提到relative和absolute定位的滾動條區別不是絕對的,至少在firefox、opera和safari中滾動條該出現還是會出現。
提示b:屬性值為absolute對象的z-index屬性可以設置層疊顯示的次序,它是直接有效的;
而屬性值為relative對象的z-index屬性在設置時要小心,把當前對象的z-index設置為-1是不行的,在firefox中它會無法顯示,必須設置為0以上,我們如果想讓別的對象擋住它,只有將其他對象也設置position為relative,并將z-index屬性取一個比它大的值即可。
上面的表述不知道也許不是很清晰,具體的理解還是要自己親自動手操作一下。
這樣看來,前面的問題就有解了,問題3我們可以根據設計的要求將其設置為相對或絕對定位;
問題1的解決方法也有很多,個人推薦使用有語義的dl,dt,dd來實現,而且這個方法在不同瀏覽器中的表現基本相同(已在ie,firefox,opera,safari中測試),僅在top的屬性上有幾像素的差異,由于時間關系我只能給出自己測試時的代碼以供參考:
◆示例代碼:
body{ color:#fff; font-size:12px; } ulli{ float:left; height:30px; background-color:#99CC99; margin:010px; padding:0; border:1pxsolid#c30; width:100px; } ullidiv{ border:1pxsolid#f00; background-color:#996666; width:100px; height:100px; position:absolute; margin-top:15px; margin-left:-1px; *margin-left:-79px; } ullidl, ullidldt, ullidldd{ margin:0; padding:0; } ullidldd{ border:1pxsolid#f00; background-color:#996666; width:100px; height:100px; position:absolute; margin-top:11px; *margin-top:10px; margin-left:-1px; } <ul> <li> 標題-#text <div> 下拉菜單-div div> li> <listylelistyle="position:relative;">列表bli> <li>列表cli> <li> <dl> <dt>標題-dtdt> <dd>下拉菜單-dddd> dl> li> ul>
“CSS中的position和z-index屬性怎么使用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。