国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

CSS制作網頁:position:relative

2024-07-11 09:02:22
字體:
來源:轉載
供稿:網友

武林網(www.survivalescaperooms.com)文章簡介:css心得之善用 position:relative。

CSS制作網頁:position:relative


可能是個人習慣吧,我個人在寫css 樣式的時候 position:relative 都很少用。不到逼不得已不用,因為這東西在面對IE大叔的時候總是會各種被推到,比如多個positon 嵌套的的時候 會產生 類似 z-index 優先級的失控,不知道其他coder們碰到過這個問題沒?反正我是碰到不下1次了。

舉個栗子如下:html 代碼 節略寫法,你懂的

ul.ppli 大寶 span 大寶的屁屁li 二寶 span 二寶的屁屁li 三寶 span 三寶的屁屁

從上面 的代碼 本來沒啥問題,問題在于給他穿上衣服(css)之后,因為一些需求,你講li 的css position:relative 了,
那么li 就傻逼了,這個時候你怎么設置li 的z-index 為多大 都蓋不過 之后下一個li 的內容。
不理解上面表達的意思可以見下圖。

CSS制作網頁:position:relative

css代碼

.pp{ width:300px; margin:50px auto; background:#fff; height:300px; padding:10px;}.pp li{ border:1px solid #ccc; margin-bottom:10px; height:30px; position:relative; background:#fff; z-index:9;}.pp span{ display:block; width:40px; height:40px; background:#f09; position:absolute; right:10px; bottom: -20px; z-index:10;}

如圖,左邊是chrome 下的效果,右側是IE6的效果,可見,當給li 設置positon:relative 后無論 里面的 元素設置z-index 為多大,都改不過之后的li 內容。(爺的我又把上面的字重新打了一遍 = =)

解決方案

從視覺上面理解,這樣的情況就像 AI(Illustrator)里的圖層一樣,一層比一層高,也像個沙箱,內部的z-index 是怎么也不能超越下一層的z-index。
最好不要給列表型的li 或者 div 添加 position:relative,一直以來針對IE這樣頭疼的bug,都是以避開這樣的情況來解決。(其實應該不算bug,應該是瀏覽器開發者理解性上的不同)。

當然還有一種辦法,由于是因為下一個li 設置了position 蓋住了前一個position 的 li,那么只要避免position蓋住position就可以勉強實現這樣的情況。所以你只需要在position:absolute的dom外面套一層div,做到不蓋住前一個li中的 position:absolute就可以。

另外一種方法是在特定的情況下如hover事件,如觸發式 彈出浮窗(顯示更多信息),
這個時候我是這樣來實現, 當hover的時候 給 li 添加一個class “hover”, 然后只要定義hover 的時候是position:relative就可以了,這樣的好處是hover 的時候其他 li 沒有position:relative ,那么就沒有之前的bug了。
對于高級瀏覽器 可以直接寫:hover 甚至都可以脫離 js 效率會更高

position:relative 在:hover 上的妙用

先看下圖,左側這樣的按鈕不知道應該會在一些效果里接觸過吧?類似向左向右的按鈕,

CSS制作網頁:position:relative


仔細觀察發現按鈕中間的線是共享的,但是按下去的時候顏色會變深。
實現辦法很多,我一般是對其中一個按鈕使用負邊距,然后在:hover效果上動手腳(由于IE6只支持a上的hover,所以一般都是使用a),其實很簡單就是在hover 的時候,給它設置position:relative,然后將z-index 設置一個數字就可實現。

以此類推,上圖中apple 的導航也可以使用這樣的辦法來實現效果。是不是挺帶感^__^

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 洛川县| 玉环县| 阜平县| 乌鲁木齐县| 石屏县| 永昌县| 衡南县| 普陀区| 台南县| 仙居县| 寻乌县| 楚雄市| 五莲县| 沂南县| 洪雅县| 泽库县| 凌海市| 双城市| 曲沃县| 黎城县| 鞍山市| 五原县| 应用必备| 山阴县| 龙山县| 绥芬河市| 温州市| 子洲县| 莱西市| 北安市| 全椒县| 花莲市| 含山县| 东莞市| 遵义县| 星座| 龙泉市| 呼和浩特市| 墨竹工卡县| 衢州市| 卓尼县|