css3 - css before作為父級(jí)元素的背景色遮住了文字怎么辦?
問(wèn)題描述
//less.mk-nav{ li{ position: relative; &:before{ position: absolute; content: ’’; top:0; left:0; background:@mkcolor4;transform:scale(0);} &:hover:before{transform:scale(1);} }}
//html<ul class=’mk-nav’> <li>首頁(yè)</li> <li>簡(jiǎn)介</li></ul>
li相對(duì)定位,before絕對(duì)定位,鼠標(biāo)滑過(guò)想讓before作為li的背景色,這樣就不用再加標(biāo)簽了,但是發(fā)現(xiàn)before遮住了li里面的文字
之所以不給li設(shè)置background是因?yàn)槲蚁胪ㄟ^(guò)before的高度做一個(gè)交互小動(dòng)畫(huà)
我想到一個(gè)方法就是降低透明度,opacity:.15;,發(fā)現(xiàn)是可行的,文字漏出來(lái)了,點(diǎn)擊文字鏈接竟然也能觸發(fā),這一點(diǎn)頗為神奇。
問(wèn)題解答
回答1:遮住的話你用rgba不就透過(guò)來(lái)了……但還是不明白這個(gè)交互是要做什么,li:hover不一樣可以做動(dòng)畫(huà)交互么
回答2:那你為什么不直接給li設(shè)置。。。。background
回答3::hover不行嗎?
回答4:好像絕對(duì)定位總是會(huì)浮動(dòng)到元素的最上層的(相對(duì)于其他定位方式)。所以用絕對(duì)定位的元素做背景怕是不行。題主你可以考慮換換試試,把li設(shè)成絕對(duì)定位。
回答5:你也可以這樣:<li>首頁(yè)</li>,(給文字一個(gè)標(biāo)簽包裹起來(lái)),然后給偽類befor設(shè)置z-index:-666(負(fù)值),給a標(biāo)簽設(shè)置z-index:10(正值),然后就看到文字在偽類的上面了
相關(guān)文章:
1. android - Genymotion 微信閃退 not find plugin.location_google.GoogleProxyUI2. mac里的docker如何命令行開(kāi)啟呢?3. android webview返回自動(dòng)刷新4. objective-c - iOS開(kāi)發(fā)使用什么對(duì)html進(jìn)行代碼高亮5. angular.js - 關(guān)于ng-model和ng-bind的疑問(wèn)6. html - 特殊樣式按鈕 點(diǎn)擊按下去要有凹下和彈起的效果7. angular.js - 在ionic下,利用javascript導(dǎo)入百度地圖,pc端可以顯示,移動(dòng)端無(wú)法顯示8. javascript - 單個(gè)控件多個(gè)字段搜索9. javascript - npm安裝報(bào)錯(cuò) 系統(tǒng)w7 求大神解答10. html5 - 微信瀏覽器視頻播放失敗
