首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在浏览器视口缩小时防止列堆叠

如何在浏览器视口缩小时防止列堆叠
EN

Stack Overflow用户
提问于 2018-07-23 01:41:41
回答 1查看 28关注 0票数 0

我不想让我的列在浏览器视口缩小时堆叠,我希望列保持原样,但有一个水平滚动条显示,这样在较小设备上的用户只需向右滑动滚动即可。

既然我使用了flex,这是可能的吗?

body {
      color: #333;
    font-family: Helvetica Neue,Arial,Helvetica,sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
}

.board-container {
  background-color: rgb(0, 121, 191);
  height: 100%;
  position: relative;
  background-size: cover;
  overflow: hidden;
}

#board-surface {
 display: flex;
 flex-direction: column;
}

#board-surface, body, html {
    height: 100%;
}


#content {
  flex-grow: 1;
  overflow-y: auto;
  outline: none;
}

.board-wrapper {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

.board-main-content {
    height: 100%;
    display: flex;
    flex-direction: column;
    margin-right: 0;
    transition: margin .1s ease-in;
}


.board-canvas {
    position: relative;
    flex-grow: 1;
}

/*#board {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    white-space: nowrap;
    margin-bottom: 8px;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 8px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}*/

.list-wrapper {
  width: 272px;
  margin: 0 4px;
  height: 100%;
  box-sizing: border-box;
  display: inline-block;
  vertical-align: top;
  white-space: nowrap;
  background-color: #cccccc;
}

.list {
    background: #e2e4e6;
    border-radius: 3px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    max-height: 100%;
    position: relative;
    white-space: normal;
}


.list-card {
    background-color: #fff;
    border-radius: 3px;
    box-shadow: 0 1px 0 #ccc;
    cursor: pointer;
    display: block;
    margin-bottom: 8px;
    max-width: 300px;
    min-height: 20px;
    position: relative;
    text-decoration: none;
    z-index: 0;
}
<html>
<head>
  <title></title>
</head>
<body>

<div class="board-container">
  <div class="board-inner">

    <div id="board-surface">
      <div id="header">
        main header goes here
      </div>
      <div id="content">
        <div class="board-wrapper">
          <div class="board-main-content">
            <div class="board-header">board header</div>
            <div class="board-canvas">
              <div id="board">
                

                <div class="list-wrapper">
                 
                  <div class="list">
                    <div class="list-header">list header</div>
                    <div class="list-cards">
                      <div class="list-card">
                        this is a list card
                      </div>

                       <div class="list-card">
                        this is a list card
                      </div>

                       <div class="list-card">
                        this is a list card
                      </div>

                       <div class="list-card">
                        this is a list card
                      </div>
                    </div>
                  </div>
                </div> <!-- /list-wrapper -->



                <div class="list-wrapper">
                 
                  <div class="list">
                    <div class="list-header">list header</div>
                    <div class="list-cards">
                      <div class="list-card">
                        this is a list card
                      </div>

                       <div class="list-card">
                        this is a list card
                      </div>

                       <div class="list-card">
                        this is a list card
                      </div>

                       <div class="list-card">
                        this is a list card
                      </div>
                    </div>
                  </div>
                </div> <!-- /list-wrapper -->




                <div class="list-wrapper">
                 
                  <div class="list">
                    <div class="list-header">list header</div>
                    <div class="list-cards">
                      <div class="list-card">
                        this is a list card
                      </div>

                       <div class="list-card">
                        this is a list card
                      </div>

                       <div class="list-card">
                        this is a list card
                      </div>

                       <div class="list-card">
                        this is a list card
                      </div>
                    </div>
                  </div>
                </div> <!-- /list-wrapper -->


                <div class="list-wrapper">
                 
                  <div class="list">
                    <div class="list-header">list header</div>
                    <div class="list-cards">
                      <div class="list-card">
                        this is a list card
                      </div>

                       <div class="list-card">
                        this is a list card
                      </div>

                       <div class="list-card">
                        this is a list card
                      </div>

                       <div class="list-card">
                        this is a list card
                      </div>
                    </div>
                  </div>
                </div> <!-- /list-wrapper -->




              </div> <!-- /board-->


            </div>
          </div>
        </div>
      </div>
      <div id="footer">

      </div>
    </div>
  </div>
</div>

</body>
</html>

EN

回答 1

Stack Overflow用户

发布于 2018-07-23 02:19:00

演示:https://codepen.io/anon/pen/wxJGMx?editors=0110

我能够在flex容器上实现水平滚动。我已经将min-width赋予了.list-wrapper,并将以下样式添加到#board item:

.list-wrapper {
  min-width: 272px;
  width: 272px;
  margin: 0 4px;
  height: 100%;
  box-sizing: border-box;
  display: inline-block;
  vertical-align: top;
  white-space: nowrap;
  background-color: #cccccc;
}

#board {
  display: flex;
  overflow: scroll;
}

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

https://stackoverflow.com/questions/51467721

复制
相关文章

相似问题

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