首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >bootstrap 4动态改变列宽

bootstrap 4动态改变列宽
EN

Stack Overflow用户
提问于 2017-03-23 23:00:35
回答 3查看 13K关注 0票数 16

我有两个这样的专栏:

代码语言:javascript
复制
<div class="container">
    <div class="row">
        <div class="col-9"></div>
        <div class="col-3"></div>
    </div>
</div>

我通过angular将类名切换为col-8 offset-2col-0col-0width:0;margin:0;padding:0

我想知道如何使列的宽度和位置都具有动画效果。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-03-23 23:51:06

由于Bootstrap4使用了flexbox,除非你在列上设置一个数字flex-growflex-shrink,否则CSS过渡动画是不会起作用的。

代码语言:javascript
复制
.col-8 {
  flex-grow: 1;
  transition: all 400ms ease;
}

.col-0 {
  width: 0; 
  flex-shrink: 1;
  transition: all 400ms ease;
}

演示:http://www.codeply.com/go/4Un0Q8CvkQ

要在网格列更改媒体查询断点时对其进行动画处理(而不是通过jQuery切换类),只需在网格列上使用CSS过渡即可。

代码语言:javascript
复制
.row [class*='col-'] {
    transition: all 0.5s ease-in-out;
}

演示:https://www.codeply.com/go/IHUZcvNjPS

票数 30
EN

Stack Overflow用户

发布于 2020-04-17 11:18:23

我使用Bootstrap提供的列大小更改了列大小。例如,将col-2转换为col-1,然后我将转换调整为仅针对特定类型

代码语言:javascript
复制
.row [class*='col-'] {
    transition: flex 0.5s ease-in-out, max-width .5s ease-in-out;
}
票数 3
EN

Stack Overflow用户

发布于 2021-08-19 02:39:06

我一直在做这个实验。谢谢你们的回答,伙计们!你可以试试这个。

代码语言:javascript
复制
.container {
    /*transition: flex 0.5s ease-in-out, max-width 0.5s ease-in-out;
    */
    transition: flex 0.75s cubic-bezier(0.23, 1, 0.32, 1),
        max-width 0.75s cubic-bezier(0.23, 1, 0.32, 1);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42979772

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档