CSS:使 div 可调整大小

Posted

技术标签:

【中文标题】CSS:使 div 可调整大小【英文标题】:CSS: Making div resizable 【发布时间】:2017-05-09 03:07:02 【问题描述】:

假设我有一个 flex 布局并且想要调整它的大小。

我希望能够通过水平拖动一个 div 的边框来调整其大小。

看看这个Fiddle

html

#main 
  display: flex;
  justify-content: space-between;
  height: 100vh;
  .flex 
    width: 100%;
    &:nth-child(2) 
      background: red;
      overflow: auto; resize: horizontal;
    
  
<div id="main">
  <div class="flex">ABC</div>
  <div class="flex">
    DEF
  </div>
  <div class="flex">GHI</div>
</div>

我该怎么做?

【问题讨论】:

你试过overflow: auto; resize: both;吗?它应该可以工作,但在使用 flexbox 模型的元素上可能会有点奇怪。 @HiddenHobbes 看起来就是这样:Fiddle 【参考方案1】:

检查这个 plunkr

https://plnkr.co/edit/sxs6RLXVV6REzQnipfgj?p=preview

$( "#second" ).resizable();

【讨论】:

感谢您的回答!关于您的解决方案,我遇到了一些问题:看看这个Fiddle。它还说Uncaught TypeError: $(...).resizable is not a function,即使它在技术上有效。【参考方案2】:

您应该遵循此代码

#main 
    display: flex;
    justify-content: space-between;
    height: 100vh;
    .flex 
        width: 100%;
        &:nth-child(2) 
            background: red;
            resize: both;
            overflow: auto;
        
    

【讨论】:

看看这个Fiddle。我猜是 flexbox 布局导致了这个结果。

以上是关于CSS:使 div 可调整大小的主要内容,如果未能解决你的问题,请参考以下文章

检测单击可调整大小元素的调整大小手柄

如何使 iframe 可调整大小?

如何使用纯 Javascript 使 HTML 元素可调整大小?

如何使用纯 Javascript 使 HTML 元素可调整大小?

Jquery 可调整大小的问题,其中 div 合同的宽度和高度为零

当父可调整大小时,如何防止嵌套DIV的内容溢出父级?