div class 中的右对齐元素
Right align element in div class
我正在使用 angular 2 与 Bootstrap 4 和 Angular Material。但是,我无法正确对齐容器内的元素 div。我希望我的按钮和文本都与右侧对齐
这是我尝试生成如图所示结果的代码
<div class="container">
<div class="pull-right">
<p class="d-inline pull-right">Some text</p>
<button type="button" class="btn btn-primary pull-right">+</button>
</div>
</div>
我也尝试过 Whosebug
的这个解决方案
<div class="container">
<div class="asdf">
<p class="d-inline pull-right">Some text</p>
<button type="button" class="btn btn-primary pull-right">+</button>
</div>
</div>
.asdf {
margin-left:auto;
margin-right:0;
}
这两种解决方案都不会向右移动元素。我做错了什么?
你没有做错任何事。只需将您的代码复制并粘贴到任何在线 bootstrap 编辑器中,您就会得到正确的结果。但是你可以写得更有条理
HTML代码:
<div class="container">
<div class="row">
<div class="col-md-12 .asdf">
<button type="button" class="btn btn-primary pull-right">+</button>
<p class="pull-right">Some text</p>
</div>
</div>
</div>
CSS代码
.asdf {
margin-left:auto;
margin-right:0;
}
我已经从 button
和 p
标签中删除了 class pull-right
class 并添加了 text-right
class 到 div.container
。
我想这就是你需要的。
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.1.1.slim.min.js" integrity="sha384-A7FZj7v+d/sdmMqp/nOQwliLvUsJfDHW+k9Omg/a/EheAdgtzNs3hpfag6Ed950n" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" crossorigin="anonymous"></script>
<div class="container text-right">
<p class="d-inline">Some text</p>
<button type="button" class="btn btn-primary d-inline">+</button>
</div>
Bootstrap 5(2021 年更新)
由于新的 RTL 支持,*-left
和 *-right
类 已更改为 *-start
和 *-end
。以下是 Bootstrap 4 到 Bootstrap 5 次转化:
float-left
=> float-start
float-right
=> float-end
ml-auto
=> ms-auto
mr-auto
=> me-auto
Bootstrap 4(原答案)
在 Bootstrap 4 中,pull-right
已替换为 float-right
。
如果float-right
不行,记得Bootstrap4现在是flexbox,还有很多元素是 display:flex
可以阻止 float-right
工作。在某些情况下,类 实用程序 align-self-end
或 ml-auto
用于右对齐 flexbox 容器内的元素,例如 Bootstrap 4 .row、Card 或 Nav。 ml-auto
(margin-left:auto) 在 flexbox 元素中用于将元素推到右边。
此外,请记住 text-right
仍然适用于内联元素。
处理对齐选项的一种简单方法
<div class="col-sm-12" align="right">
<button type="submit" class="btn btn-primary"><i class="fa fa-check-circle" aria-hidden="true"></i> Approve</button>
我正在使用 angular 2 与 Bootstrap 4 和 Angular Material。但是,我无法正确对齐容器内的元素 div。我希望我的按钮和文本都与右侧对齐
这是我尝试生成如图所示结果的代码
<div class="container">
<div class="pull-right">
<p class="d-inline pull-right">Some text</p>
<button type="button" class="btn btn-primary pull-right">+</button>
</div>
</div>
我也尝试过 Whosebug
的这个解决方案<div class="container">
<div class="asdf">
<p class="d-inline pull-right">Some text</p>
<button type="button" class="btn btn-primary pull-right">+</button>
</div>
</div>
.asdf {
margin-left:auto;
margin-right:0;
}
这两种解决方案都不会向右移动元素。我做错了什么?
你没有做错任何事。只需将您的代码复制并粘贴到任何在线 bootstrap 编辑器中,您就会得到正确的结果。但是你可以写得更有条理
HTML代码:
<div class="container">
<div class="row">
<div class="col-md-12 .asdf">
<button type="button" class="btn btn-primary pull-right">+</button>
<p class="pull-right">Some text</p>
</div>
</div>
</div>
CSS代码
.asdf {
margin-left:auto;
margin-right:0;
}
我已经从 button
和 p
标签中删除了 class pull-right
class 并添加了 text-right
class 到 div.container
。
我想这就是你需要的。
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.1.1.slim.min.js" integrity="sha384-A7FZj7v+d/sdmMqp/nOQwliLvUsJfDHW+k9Omg/a/EheAdgtzNs3hpfag6Ed950n" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" crossorigin="anonymous"></script>
<div class="container text-right">
<p class="d-inline">Some text</p>
<button type="button" class="btn btn-primary d-inline">+</button>
</div>
Bootstrap 5(2021 年更新)
由于新的 RTL 支持,*-left
和 *-right
类 已更改为 *-start
和 *-end
。以下是 Bootstrap 4 到 Bootstrap 5 次转化:
float-left
=>float-start
float-right
=>float-end
ml-auto
=>ms-auto
mr-auto
=>me-auto
Bootstrap 4(原答案)
在 Bootstrap 4 中,pull-right
已替换为 float-right
。
如果float-right
不行,记得Bootstrap4现在是flexbox,还有很多元素是 display:flex
可以阻止 float-right
工作。在某些情况下,类 实用程序 align-self-end
或 ml-auto
用于右对齐 flexbox 容器内的元素,例如 Bootstrap 4 .row、Card 或 Nav。 ml-auto
(margin-left:auto) 在 flexbox 元素中用于将元素推到右边。
此外,请记住 text-right
仍然适用于内联元素。
处理对齐选项的一种简单方法
<div class="col-sm-12" align="right">
<button type="submit" class="btn btn-primary"><i class="fa fa-check-circle" aria-hidden="true"></i> Approve</button>