如何右对齐 div 元素?

新手上路,请多包涵

我的 html 文档的主体由 3 个元素组成,一个按钮、一个表单和一个画布。我希望按钮和表单右对齐,画布保持左对齐。问题是当我尝试对齐前两个元素时,它们不再相互跟随而是水平相邻?这是我到目前为止的代码,我希望表单直接跟在右边的按钮之后中间没有空格。

 #cTask {
  background-color: lightgreen;
}

#button {
  position: relative;
  float: right;
}

#addEventForm {
  position: relative;
  float: right;
  border: 2px solid #003B62;
  font-family: verdana;
  background-color: #B5CFE0;
  padding-left: 10px;
}
 <!DOCTYPE html>
<html lang="en">
<head>
  <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js"></script>
  <script type="text/javascript" src="timeline.js"></script>
  <link rel="stylesheet" href="master.css" type="text/css" media="screen" />
</head>

<body bgcolor="000" TEXT="FFFFFF">
  <div id="button">
    <button onclick="showForm()" type="button" id="cTask">
        Create Task
    </button>
  </div>
  <div id="addEventForm">
    <form>
      <p><label>Customer name: <input></label></p>
      <p><label>Telephone: <input type=tel></label></p>
      <p><label>E-mail address: <input type=email></label></p>
    </form>
  </div>
  <div>
    <canvas id="myBoard" width="600" height="600" style="background:lightgray;">
      <p>Your browser doesn't support canvas.</p>
    </canvas>
  </div>
</body>
</html>

原文由 MEURSAULT 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 926
2 个回答

您可以制作一个包含表单和按钮的 div,然后通过设置 float: right; 使 div 向右浮动。

原文由 vantrung -cuncon 发布,翻译遵循 CC BY-SA 3.0 许可协议

浮点数没问题,但 IE 6 和 7 有问题。

我更喜欢在内部 div 上使用以下内容:

 margin-left: auto;
margin-right: 0;

有关原因的说明,请参阅 IE Double Margin Bug

原文由 pstanton 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏