Kesan kecerunan sifat paparan CSS
P粉608647033
2023-08-21 11:08:32
<p>Saya sedang mereka bentuk "jatuh turun super" CSS - pada asasnya lungsur turun CSS tulen biasa, tetapi dengan pelbagai jenis kandungan di dalamnya. </p>
<p>Pada masa ini, <strong> nampaknya kesan peralihan CSS 3 tidak digunakan pada atribut "display"</strong>, iaitu, tiada cara untuk beralih daripada <code>display: none</ kod> untuk <kod>paparkan: blok</kod> </p>
<p>Dalam contoh di atas, adakah terdapat cara untuk menjadikan menu tahap kedua "pudar masuk" apabila seseorang menuding di atas item menu atas? </p>
<p>Saya tahu anda boleh menggunakan kesan peralihan pada atribut <kod>keterlihatan:</code> tetapi saya tidak dapat memikirkan cara untuk menggunakannya dengan berkesan. </p>
<p>Saya juga cuba menggunakan ketinggian, tetapi hasilnya sangat mengerikan. </p>
<p>Saya juga tahu bahawa perkara ini boleh dicapai dengan mudah menggunakan JavaScript, tetapi saya ingin mencabar diri saya untuk menggunakan CSS sahaja, tetapi saya rasa saya agak tidak tahu apa-apa. </p>
Anda perlu menyembunyikan elemen dengan cara lain untuk menjadikannya berfungsi dengan baik.
Saya mencapai kesannya dengan menggabungkan dua
<div>
都设置为绝对定位,并将隐藏的一个设置为opacity: 0
.Jika anda menambah
display
属性从none
切换到block
, kesan peralihan untuk elemen lain tidak akan berlaku.Untuk membetulkan perkara ini, sentiasa benarkan elemen menjadi
display: block
, tetapi sembunyikan elemen dengan mana-mana yang berikut:height
设置为0
.opacity
设置为0
.overflow: hidden
.Mungkin terdapat lebih banyak penyelesaian, tetapi jika anda menukar elemen kepada
display: none
anda tidak boleh melakukan peralihan. Contohnya, anda mungkin mencuba sesuatu yang serupa dengan:Tetapi ini tidak berfungsi. Dalam pengalaman saya, saya mendapati bahawa ini tidak mempunyai sebarang kesan.
Jadi, anda sentiasa perlu mengekalkan elemen
display: block
- tetapi anda boleh mengatasinya dengan:Anda boleh menyambungkan dua atau lebih kesan peralihan, dan
visibility
ini berguna.