html - 是否可以创建 2 个 50% 的列,边距为 5 像素,而不指定每列的确切宽度?

标签 html css

如何创建一个简单的 2 列布局,它们之间的边距为 5 像素?

像这样:

这很棘手,因为如果您尝试将两列的宽度都设置为 50%,然后尝试为其中一列或两列添加边距,其中一列将被推到另一列下方,以便填充 50%。

最佳答案

您没有提供大量信息,但一个简单但丑陋的解决方案是使用包装器 div:

<!doctype html>
<html>
  <head>
    <style type="text/css">
        #right {
            float: right;
            width: 50%;
        }
        #left {
            float: left;
            width: 50%;
        }
        .left {
            margin-right: 2px;
            background-color: #F9F;
        }
        .right {
            margin-left: 3px;
            background-color: #9FF;
        }
        </style>
  </head>
  <body>
  <div id="left"><div class="left">Left</div></div>
  <div id="right"><div class="right">Right</div></div>
  </body>
</html>

由于额外的 div 而显得丑陋,但是当您开始混合单位(像素和%)时,这是很难避免的。

关于html - 是否可以创建 2 个 50% 的列,边距为 5 像素,而不指定每列的确切宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5354055/

相关文章:

javascript - 单击后移除 Bootstrap 5 切换按钮上的焦点

html - H1 标签不再显示在页面主体上

html - Gmail 中的响应式电子邮件宽度

html - Bootstrap 是压倒一切的

java - Dropwizard,为同一 URI 提供两种 Assets

javascript - 允许输入以 7,8 或 9 开头的手机号码

html - 如何根据值为表格条目着色

HTML 在 WebIOPi 中使用时无法正常工作

javascript - 如果文本框值等于单选按钮值,单选按钮将激活

javascript - 在不使用类或 ID 的情况下使用 jQuery 更改元素 css?