我製作了一個響應式菜單,其中第4個之後的列表項元素在手機上獲得display:none; opacity:0
。第四個元素是另一個列表項,它是一個圖標。當你將鼠標懸停在圖標的隱藏菜單項顯示爲一個塊列表下方使用當鼠標懸停在元素上時,CSS不透明度轉換無法在兄弟選擇器上工作
li:nth-child(4):hover ~ li { display:block; opacity:1; }
無論在哪裏我堅持transition: all 0.5s ease
在我的CSS我不能讓一個過渡下去。我是否正在嘗試做一些行不通的工作,因爲我是在兄弟姐妹選擇器上工作,或者我做錯了什麼?
查看小提琴:https://jsfiddle.net/nicoleamurray/zap1L8hq/顯示手機版本。
更新:與height
很好地工作!
`.mainmenu{
float: right;
text-align: right;
}
.mainmenu li{
display:inline-block;
}
.mainmenu li:nth-child(4):hover ~ li{
opacity:1;
transition-delay: 0s;
height: 20px;
}
.mainmenu li:nth-child(n+5){
opacity:0;
overflow: hidden;
height: 0;
display: block;
transition: all 0.5s 1s;
}`
我知道你不能轉換顯示,這就是爲什麼我添加了一個不透明所有國家/元素。這個解決方案的問題是因爲顯示不是'none',不可見的菜單項在技術上仍然存在,只是在0不透明度。將鼠標懸停在菜單項所在的位置,鼠標將轉到指針。我確實需要他們實際上隱藏。 – nicole
根據您的反饋,雖然我要試試這個:http://stackoverflow.com/questions/22103006/css3-transition-doesnt-work-with-display-property – nicole