當內容改變時,如何使用width: auto 對元素的寬度進行動畫處理?內容是動態變化的,元素的寬度也應該隨著動畫的變化而改變。
雖然CSS不直接支援動畫自動值,但有兩種方法可以實現這種效果:
1。最大寬度/最大高度技巧
.myspan { display: inline-block; font-size: 30px; background-color: #ddd; max-width: 500px; /* Set a sufficiently large max-width */ }
2.基於腳本的寬度設定
$(document).ready(function() { $(".myspan").hover(function() { $(this).width($(this).find("span").outerWidth()); }, function() { $(this).width("auto"); }); });
使用max-width/max-height 技巧,我們可以創建一個簡單的範例,其中元素的寬度在懸停時動畫:
.myspan { display: inline-block; font-size: 30px; background-color: #ddd; vertical-align: bottom; } .myspan::after { content: " <pre class="brush:php;toolbar:false"><link href="https://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css" rel="stylesheet" /> <span class="myspan">Hello!</span>a0\f12a "; font-family: ionicons; font-size: 80%; display: inline-block; max-width: 0; transition: max-width .6s; vertical-align: bottom; overflow: hidden; } .myspan:hover::after { max-width: 80px; transition: max-width 1s; }
以上是當內容動態變化時,如何使用 CSS 對元素的寬度進行動畫處理?的詳細內容。更多資訊請關注PHP中文網其他相關文章!