css3動畫 - CSS3 transition動畫屬性指定前后問題
問題描述
img{ opacity: 0.5; transition: 0.35s all;}img:hover{ opacity: 1; margin-left: -50px;}<img src='http://m.propowerdrill.cn/wenda/img/1.jpg'>
如上簡單動畫代碼也知道transtion屬性各個參數(shù)以及日常用法,但我嘗試了下改變transition: 0.35s all;屬性的設(shè)置位置,比如第一種情況也就是如上代碼,呈現(xiàn)的效果是我想要的效果,就是鼠標(biāo)移入離開都過渡很平緩,但我將transition: 0.35s all;從img{}標(biāo)簽移到hover里如下:(則效果不是我想要的,鼠標(biāo)移入后過渡平緩,可鼠標(biāo)離開后幾乎沒有平緩過渡效果,我的問題是兩種位置設(shè)置呈現(xiàn)不同的效果的原因是什么,有什么講究呢,謝謝)
img{ opacity: 0.5; }img:hover{ opacity: 1; margin-left: -50px; transition: 0.35s all;}<img src='http://m.propowerdrill.cn/wenda/img/1.jpg'>
問題解答
回答1:第一種 img 一直 有 transition 屬性, mouseover transtion 變化, mouseout transition 回復(fù)第二種, 只有mouseover 才有 transition 屬性, 所以 mouseover transition 變化, mouseout 沒有 transition屬性, 直接就變到結(jié)果了
回答2:其實就是樣式選擇器能否匹配的問題:img標(biāo)簽無論鼠標(biāo)是否懸停在其上都能匹配img{}選擇器,只有鼠標(biāo)移入img時才能匹配img:hover{}選擇器;
當(dāng)元素?fù)碛衪ransition:all;屬性并且其他屬性發(fā)生變化
才會有緩動效果。第一種情況transition:all;在img{}選擇器下,無論當(dāng)鼠標(biāo)移入移出img都能匹配transition:all;第一個條件滿足;另外移入移出時margin變化了,第二個條件滿足,所以移入移出都會緩動。
第二種情況移入移出都滿足margin變化,但是只有鼠標(biāo)移入img能匹配到transition:all;,所以,第二種情況只有鼠標(biāo)移入時才會發(fā)生緩動。
相關(guān)文章:
1. node.js - nodejs+express+vue2. javascript - vue2.0中使用vue2-dropzone的demo,vue2-dropzone的github網(wǎng)址是什么??百度不到。3. objective-c - ios 怎么實現(xiàn)微信聯(lián)系列表 最好是swift4. vue計算屬性怎么樣與for結(jié)合使用5. angular.js - vue/react 渲染內(nèi)容抖動6. PHP能實現(xiàn)百度網(wǎng)盤的自動化么?7. Python 子類能否覆蓋全局函數(shù)?8. mysql - sql 找出2個數(shù)據(jù)庫的差異表名9. javascript - vue上傳圖片,并顯示在頁面中的插件10. kv存儲 - 怎樣用 Redis 緩存微博的評論列表?
