可调整大小的div不响应百分比高度 [英] Resizable div not responding to percentage height

查看:84
本文介绍了可调整大小的div不响应百分比高度的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在父级中有2个div,其中一个具有.resizable,但是我希望它具有百分比的最大高度,我找到了设法调整DOM大小的代码,但我无法让它工作我,我已经非常接近了。



我希望可调整大小的div的最大高度为70%,最小高度为30%(原始静止点)



我的小提琴:

小提琴 [ ^ ]

HTML



我尝试过的事情:



我的小提琴:

小提琴 [ ^ ]

HTML



I have 2 divs within a parent, one has .resizable, however i want it to have a max height in percentages, I have found the code that manages to resize the DOM, but i can't get it to work for me, I have got pretty close.

I want the resizable div to have a max height of 70% and min height of 30% (original resting point)

My fiddle:
fiddle[^]
HTML

What I have tried:

My fiddle:
fiddle[^]
HTML

<link rel="stylesheet" href="//code.jquery.com/ui/1.12.0/themes/base/jquery-ui.css">
  <link rel="stylesheet" href="/resources/demos/style.css">
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>

<body>
<div class="wrapper">
<div class="div">
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
<h4>header</h4>
</div>
<div class="resizable" id="resizable">





JS



JS

$("#resizable").resizable({
    autoHide: true,
    handles: "n",
    resize: function( event, ui ) {
        var parent = ui.element.parent();
        var height = ui.element.height();

        // Get the min value of height or 70% of parent height
        height = Math.min(height, parent.height() * 0.7);

        // Get the max value of height or 30% of parent height
        height = Math.max(height, parent.height() * 0.3);

        ui.element.css({
            height: height + 'px'
        });
    }
});





CSS



CSS

.wrapper {
  position: fixed;
  width: 100%;
  height: 100vh;
}

.div {
  position: absolute;
  left: 0px;
  top: 0px;
  right: 0px;
  width: 100%;
  height: 70%;
  background-color: #0098ff;
}

.resizable {
  position: absolute;
  left: 0px;
  right: 0px;
  bottom: 0px;
  width: 100%;
  height: 30%;
  background-color: red;
}

推荐答案

( #resizable)。resizable({
autoHide:true,
句柄:n,
resize:function(event,ui){
var parent = ui.element。父();
var height = ui.element.height();

//获取高度的最小值或父高度的70%
height = Math.min(height,parent.height()* 0.7);

//获取高度的最大值或父高度的30%
height = Math.max(height,parent.height()* 0.3);

ui.element.css({
height:height +'px'
});
}
});
("#resizable").resizable({ autoHide: true, handles: "n", resize: function( event, ui ) { var parent = ui.element.parent(); var height = ui.element.height(); // Get the min value of height or 70% of parent height height = Math.min(height, parent.height() * 0.7); // Get the max value of height or 30% of parent height height = Math.max(height, parent.height() * 0.3); ui.element.css({ height: height + 'px' }); } });





CSS



CSS

.wrapper {
  position: fixed;
  width: 100%;
  height: 100vh;
}

.div {
  position: absolute;
  left: 0px;
  top: 0px;
  right: 0px;
  width: 100%;
  height: 70%;
  background-color: #0098ff;
}

.resizable {
  position: absolute;
  left: 0px;
  right: 0px;
  bottom: 0px;
  width: 100%;
  height: 30%;
  background-color: red;
}


这篇关于可调整大小的div不响应百分比高度的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆