html - CSS 子 div 定位

标签 html css

我正在为即将到来的 HTML 考试做准备并正在练习 CSS。我遇到了一个问题,我的 sub-div 不会留在我的 main-div 中。我想要的是让 3 个子 block 均匀地填满大块内的所有空间。如果你们中的任何人可以提供帮助,将不胜感激! 这是代码。

HTML:

    <div id="blk1">
    <div id="sb1">
        <p id="htitle">Hotel 1</p>
        <img id="hpic" src="hpic1.jpg">
    </div>

    <div id="sb2">
        <p id="htitle">Hotel 2</p>
        <img id="hpic" src="hpic2.jpg">
    </div>

    <div id="sb3">
        <p id="htitle">Hotel 3</p>
        <img id="hpic" src="hpic3.jpg">
    </div>
    </div><!-- End of Blk1 -->

CSS:

#blk1{
border: 1px solid blue;
position:relative;
}

#sb1{
border: 1px solid black;
float: left;
position:relative;
width:33%;
}

#sb2{
border: 1px solid black;
float: left;
width:33%;
}

#sb3{
border: 1px solid black;
float: left;
width:33%;
}

最佳答案

您正在复制 CSS 代码,我建议改用类。然后使用 box-sizing: border-box; 属性将边框考虑到 width 的计算:

.sb{
  border: 1px solid black;
  float: left;
  position:relative;
  width:33.33%;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
}

然后,一个元素的id应该是唯一,所以你只需要使用这个id #htitle一次,对于#hpic 或改用类。

See this fiddle

关于html - CSS 子 div 定位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37156215/

相关文章:

overriding - 覆盖 CSS 文本转换

html - 单选按钮填充

html - Bootstrap 轮播中的垂直居中文本

javascript - 如何拆分 Javascript 和 HTML 文件?

html - 为什么添加 &lt;!DOCTYPE html> 会缩小我的网页正文?

javascript - 以不响应复选框的形式过滤

html - Bootstrap 中的切换按钮菜单不起作用

html - 网站的移动 View 菜单

javascript - 如何使用 jqplot 将数据标签放置在带有线条的圆环图之外?

html - 标签之间持续存在不需要的空间