html - 从 % 中减去 px 的 CSS calc() 将 px 值解释为 %

标签 html css

我在一个带有 1px 边框的容器中有两个 div。我希望每个 div 按宽度正好占据容器的一半,所以我尝试使用 CSS3 的 calc 函数从总宽度 (50%) 中减去预定的像素值(2px,div 的每一侧有一条边框线)。但是,由于我无法弄清楚的原因,它是从百分比值中减去百分比值而不是此操作的像素:calc(50% - 2px);

这是容器中 div 的相关样式:

.contained {
  border-width: 1px;
  width: calc(50% - 2px);
  display: inline-block;
}

最佳答案

按照 CKH4 的建议,使用 box-sizing: border-box 代替。 box-sizingcalc 得到更好的支持而且它也更整洁、更灵活。

.contained {
    border-width: 1px;
    width: 50%;
    display: inline-block;
    box-sizing: border-box;
}

关于html - 从 % 中减去 px 的 CSS calc() 将 px 值解释为 %,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36024706/

相关文章:

html - 在 html/CSS 中制作响应时间线

java - 我应该把我的 css 文件放在 Intellij IDEA 的什么地方

html - CSS:告诉 block 元素填充高度

html - 标签大小样式 (CSS) 属性的使用似乎被忽略了 - 可能是浏览器错误,在通知邮件列表之前要检查

css - 尝试更改子菜单链接的颜色

html - 将包含元素的文本强制换行到最大宽度

html - 复选框出现在 Bootstrap 面板之外

javascript - 在 div 内创建可点击的 div

html - 溢出-x :hidden; on mobile device not working

javascript - 如何解析引用的 html、javascript 中的背景图像 url 中的字符串?