前端 - 怎樣讓scale縮小的元素不占據(jù)原來的空間?
問題描述
demo在這 , https://jsfiddle.net/qk83j2wv/使用scale(0.5)縮小一個元素,但縮小后的元素還是占據(jù)原來元素的大小空間,怎樣讓那個元素縮小后的大小和所占據(jù)的空間一樣大呢?
但外層元素還是以縮小前來布局的...
問題解答
回答1:同是菜鳥,好像無解,但是可以定位縮放的點(diǎn),transform-origin:left top,使用這個可以從左上角縮放,至于大小還是原始大小,給父元素加個overflow:hidden吧
回答2:transform是不會引起重排的,也就是說對元素進(jìn)行縮放等操作不會影響到其他元素的布局,這樣做動畫之類的效果性能會更好。如果你要在縮放的同時改變元素的占據(jù)空間,那就用zoom做縮放。
回答3:同大小透明p放到下面
回答4:希望對你有幫助<style>
#d1 { width:200px; height:60px; border:1px solid red; transform-origin:left top; }#d1>span { display:block; font-size:32px; line-height:60px; background:#F90; }
</style><body>
<p id='d1'><span>內(nèi)容</span></p><span class='btn'>點(diǎn)我</span><script> $(function(){var i = true; $(’.btn1’).click(function(){ if(i){$(’#d1’).css({transform:’scale(0.5)’});i = false;}else {$(’#d1’).css({transform:’scale(1)’});i = true; } }); })</script>
</body>
回答5:試試zoom縮小
回答6:理論上是無解的,這個要試著調(diào)整一下整體布局來達(dá)到你要的效果
回答7:純CSS不會,囧。不過有一個思路,可以給一個父元素做為wrapper,然后用 JavaScript 計(jì)算出compute style的高和寬,再相應(yīng)縮小為50%。
相關(guān)文章:
1. mysql - 這條聯(lián)合sql語句哪里錯了2. mysql優(yōu)化 - 關(guān)于mysql分區(qū)3. 請教各位大佬,瀏覽器點(diǎn) 提交實(shí)例為什么沒有反應(yīng)4. java - Atom中文問題5. java - MySQL中,使用聚合函數(shù)+for update會鎖表嗎?6. css3 - 這個形狀使用CSS怎么寫出來?7. javascript - 為什么這個點(diǎn)擊事件需要點(diǎn)擊兩次才有效果8. node.js - 在vuejs-templates/webpack中dev-server.js里為什么要exports readyPromise?9. javascript - ionic2 input autofocus 電腦成功,iOS手機(jī)鍵盤不彈出10. java - C語言算法題-韓信點(diǎn)兵 求解?
