首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bootstrap 3折叠(从左到右)

Bootstrap 3折叠(从左到右)
EN

Stack Overflow用户
提问于 2013-11-03 10:50:31
回答 3查看 50.8K关注 0票数 16

http://getbootstrap.com/javascript/#collapse

有没有办法让菜单从左向右滑动?我环顾四周,没有看到太多,但我想知道是否有人有更多的洞察力。

EN

回答 3

Stack Overflow用户

发布于 2014-03-05 04:03:26

首先,在所有Twitter Bootstrap CSS之后定义以下CSS:

代码语言:javascript
复制
.collapse {
  height: auto;
  width: auto;
}

.collapse.height {
  position: relative;
  height: 0;
  overflow: hidden;
  -webkit-transition: height 0.35s ease;
  -moz-transition: height 0.35s ease;
  -o-transition: height 0.35s ease;
  transition: height 0.35s ease;
}

.collapse.width {
  position: relative;
  width: 0;
  overflow: hidden;
  -webkit-transition: width 0.35s ease;
  -moz-transition: width 0.35s ease;
  -o-transition: width 0.35s ease;
  transition: width 0.35s ease;
}

.collapse.in.width {
  width: auto;
}

.collapse.in.height {
  height: auto;
}    

接下来,在目标元素(定义.collapse类的位置)上,您需要添加类.width或.height,具体取决于您想要设置动画效果的属性。

最后,如果要对宽度进行动画处理,则必须包装目标元素的内容并显式定义其宽度。如果要设置高度动画,则不需要执行此操作。

Twitter Bootstrap Collapse plugin Direction—Horizontal instead of Vertical

票数 1
EN

Stack Overflow用户

发布于 2014-03-05 04:12:18

我还发现了这个

http://jc-designs.net/blog/2011/07/how-to-build-a-horizontal-jquery-accordion/

HTML

代码语言:javascript
复制
<div id="accordion">
    <div class="panel">
      <div class="pink"></div>
      <div class="panelContent p1"> <strong>Section 1 Header</strong><br/>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit. In iaculis volutpat quam, non suscipit arcu accumsan at. Aliquam pellentesque.
      </div>
</div>    

CSS

代码语言:javascript
复制
#accordion {
    list-style:none;
    margin:30px 0;
    padding:0;
    height:270px;
    width:980px;
    margin:0 0 0 11px;
    border-top:2px solid #000000;
    border-bottom:2px solid #000000;
    overflow:hidden;
}
#accordion .panel {
    float:left;
    display:block;
    height:270px;
    width:44px;
    overflow:hidden;
    color:#666666;
    text-decoration:none;
    font-size:16px;
    line-height:1.5em
}
#accordion .panel.active {
    width:848px
}
.panelContent {
    padding:15px 15px 15px 55px;
    height:240px;
    width:778px;
}
.pink {
    width:42px;
    height:270px;
    float:left;
    background:url(../images/accordionSprite.png) no-repeat 4px 85px #f980a1;
    border-right:2px solid #ffffff;
    cursor:pointer
}
.last {
    border:none
}

Jquery

代码语言:javascript
复制
$(document).ready(function(){

    activePanel = $("#accordion div.panel:first");
    $(activePanel).addClass('active');

    $("#accordion").delegate('.panel', 'click', function(e){
        if( ! $(this).is('.active') ){
            $(activePanel).animate({width: "44px"}, 300);
            $(this).animate({width: "848px"}, 300);
            $('#accordion .panel').removeClass('active');
            $(this).addClass('active');
            activePanel = this;
         };
    });
});
票数 1
EN

Stack Overflow用户

发布于 2016-06-23 10:41:23

这是一个简单但有效的方法来实现目标元素左上角的淡入/切换/滑动。

提供的解决方案不使用Bootstrap来完成示例,但您可以将该解决方案与Bootstrap元素结合使用。

比如,

代码语言:javascript
复制
var main = function() {
 var slide = $('.targetEle');
 var press = $('button');
 
 press.click(function() {
   slide.toggle('slow');            
 });
}

$(document).ready(main);
代码语言:javascript
复制
.targetEle {
  display: none;
  margin-top: 5px;
  border-radius: 5px;
}

nav {
  padding: 5px;
  background-color: red;
  color: white;
}
代码语言:javascript
复制
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<button class="btn btn-primary" type="button">
  Button with target element
</button>

<div class="targetEle">
  <nav>
    <p>Menu Item</p>
    <p>Menu Item</p>
    <p>Menu Item</p>
  </nav>
 </div>

希望这能有所帮助!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19749361

复制
相关文章

相似问题

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