我有以下html代码.

<div style="height: 100px;" class="col-6 bg-success mt-40 d-inline-block">1</div>
<div style="height: 100px;" class="col-6 bg-success mt-40 d-inline-block">2</div>
<div style="height: 100px;" class="col-6 bg-success mt-40 d-inline-block">3</div>
<div style="height: 100px;" class="col-6 bg-success mt-40 d-inline-block">4</div>
<div style="height: 100px;" class="col-6 bg-success mt-40 d-inline-block">5</div>
<div style="height: 100px;" class="col-6 bg-success mt-40 d-inline-block">6</div>
<div style="height: 100px;" class="col-6 bg-success mt-40 d-inline-block">7</div>

当然,我想要的是在页面上并排看到2个div.但结果是这样的:

wrong result

连续第二个div向下逃逸.我是不是遗漏了什么,比如div之间的边距等等.

我不知道该怎么办

推荐答案

我认为这是因为您没有用容器和行将列包围起来,如下所示:

<div class="container">
  <div class="row">
    <..... your columns here ....>
  </div>
</div>    

正是这些元素使Bootstrap列具有响应性.

列总是彼此接触,因为你为它们的背景着色,所以背景 colored颜色 也会接触.通过一点CSS,您可以防止这种情况:

.col-styling {
  height: 100px;
  margin-bottom: 1.5rem;
  background-color: green;
  background-clip: content-box;
}

其中将此样式应用于每一列.请参阅:https://codepen.io/kikosoft/pen/VwBZWQK

正是这background-clip: content-box;使这成为可能.它会导致背景不会绘制在填充边框的后面.有时非常有用的css属性.

使用Bootstrap时,这不是解决此问题的正常解决方案.通常情况下,您不会为列指定背景 colored颜色 ,该列只是一个框,您可以在其中放置内容.该内容可以有背景 colored颜色 ,如果您给它留出边距,则背景不会接触到.就像这样:

<div class="container">
  <div class="row">
    <div class="col-6">
      <div class="content-styling">1</div>
    </div>  
    <div class="col-6">
      <div class="content-styling">2</div>
    </div>  
    <div class="col-6">
      <div class="content-styling">3</div>
    </div>  
    <div class="col-6">
      <div class="content-styling">4</div>
    </div>  
    <div class="col-6">
      <div class="content-styling">5</div>
    </div>  
    <div class="col-6">
      <div class="content-styling">6</div>
    </div>  
    <div class="col-6">
      <div class="content-styling">7</div>
    </div>  
  </div>
</div>    

然后设置内容样式,如下所示:

.content-styling {
  height: 100px;
  margin-bottom: 1.5rem;
  background-color: green;
}

请参阅:https://codepen.io/kikosoft/pen/RwBbMoR

Html相关问答推荐

无法使xpath为HTML代码块工作

如何在一个div中心字体图标?

为什么这个高度为100%的页面会出现滚动条?

如何在一行文本溢出省略号后显示文本?

无法从路径参数获取ID

仅在过渡之前删除填充

为什么我得不到有错误的字段?迈克尔·哈特尔教程.7.3.3

Flex:第一个 div 有列,下一个 div 有行

(HTML框架标签)点击后目标框架将不再工作

下划线在 Bootstrap 5 导航链接下无法正常工作

无法在 CSS 中将 h1 标签居中

当作为常规图片输入时,Cloudfront分布式图像可显示,但作为背景图像不显示

如何使用CSS将页面标题水平居中对齐