觸發transition的幾種方式


鼠標單擊 獲取焦點 或元素發生任何改變,怎么說呢,目前的理解是,元素發生了什么改變,使得它跟以前不一樣了。比如同樣是p元素,先有一個樣式。后來這個p被hover了、被focus了。或者通過另外一條途徑才能得到它。比如原來是<div><p></p></div> 獲取div p就可以了。但是如果有個div.addclass p的css樣式。這時給div加上addclass的類也可以觸發transition。當然,transition設置在最初始的p中。

現在有一個問題,如果給p加上一個類,類的css里面有對屬性的更改,會觸發么 ?閉着眼睛想想明天試一下(明天到了)

試了一下,過度必須要有一個動態的觸發(改變)過程


        div{
            width: 200px;
            height: 200px;
            border: 1px solid red;
            border-radius: 5px;
            padding: 20px;
        }
        p{
            width: 100px;
            height: 100px;
            /*border-radius: 5px;*/
            border: 1px solid black;
            -moz-transition:all 3s ease 1s;

        }
        .add{
            width: 50px;
            height: 50px;

        }

    <div><p class =‘add’></p></div> 
//沒有任何效果,同樣,設置另外一個p的樣式,同樣沒有過度,只是覆蓋罷了。
//如果改成add:hover{...} 或者js動態加入.add 就會使P有過度效果

 再總結一下吧,觸發分為偽類觸發 比如 :hover : focus  :checked  :active

                               js觸發就是toggleClass

過度應該是這樣的吧,就是對同一個元素(元素獲取,或者類,ID獲取都可以,針對同一個元素就行),有兩個不同樣式(兩個途徑獲取的)。如果一開始這兩個途徑就可以獲取該元素(第二個直接覆蓋第一個),就沒有過度。

如果第二途徑的實現依賴於某種改變才會獲取該元素,就會有過度。

途徑1獲取一個元素{

   //樣式

}

途徑2獲取一個元素{ 

    //樣式

}

 對於這個例子的觸發可以是 div:hover p{}     p:hover{}    或者動態加一個類,只要是使途徑二可以獲取到該元素都可以。

至於別的例子中,覺得觸發有固定的思路但是沒有固定的形式,看着辦吧,哈哈。感覺把自己都繞糊塗了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM