首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用带有``inline block``元素的`box` with : border-box`

使用带有``inline block``元素的`box` with : border-box`
EN

Stack Overflow用户
提问于 2012-11-01 05:57:47
回答 1查看 4.1K关注 0票数 3

我想使用box-sizing: border-box CSS属性将一个表单拆分为左右两半:

代码语言:javascript
复制
<form class=container>
  <fieldset class=left>
    <label>Description</label>
    <textarea name=description></textarea>
  </fieldset>
  <fieldset class=right>
    <label>Name</label>
    <input type=text name=name />
  </fieldset>
</form>

为了实现这一点,我需要将两个<fieldset>元素都向左浮动:

代码语言:javascript
复制
.left, .right {
  width: 50%;
  margin-left: 0px;
  marign-right: 0px;
  box-sizing: border-box;
  float: left;
}

当然,问题是由于浮点数是浮动的,它们不再是流中的,<form>元素的高度为0(除非我添加了一个clearfix或其他东西)。如果我删除<fieldset>属性并将它们的显示更改为inline-block,它们将返回到流中,但它们不再相邻排列。

有没有什么方法可以在这里使用border-box而不需要添加一个clearfix元素(或者:after伪元素)?

作为参考,here's是一个使用浮点数的小提琴,here's是一个使用inline-block的小提琴。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-01 06:04:34

这是一个相当常见的问题。

在容器上添加overflow值,将使浏览器重新计算容器的尺寸,尽管它没有非浮动元素。

代码语言:javascript
复制
.container { overflow: hidden; }

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

https://stackoverflow.com/questions/13168048

复制
相关文章

相似问题

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