首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在容器中垂直居中按钮

如何在容器中垂直居中按钮
EN

Stack Overflow用户
提问于 2019-07-26 02:46:04
回答 2查看 104关注 0票数 0

如何在框容器中垂直居中我的视图按钮。

我试着用vertical-align:center;设置按钮的样式,但不起作用。

我尝试添加:position: relative; top: 50%; transform: perspective(1px) translateY(-50%);

但这只会使按钮的一半出现在容器的顶部,另一半出现在容器内。

查看:

代码语言:javascript
运行
复制
<div class="container signup2">
<div class="title container">
  <h2> Enrolled Courses: </h2>
</div>
<div class="container box">
  <div class="row col-centered">
    <div class="col-xs-8 col-sm-8 col-md-8 col-lg-8 index">
      <h3><%= course.name %></h3>
      <p><%= course.description %></p>
    </div>
    <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">
      <%= link_to "View", course_path(course), class: "btn button buttonmargin align" %>
    </div>
  </div>
</div>
</div>

custom.scss:

代码语言:javascript
运行
复制
.signup2 {
  margin-top: 120px;
}

.title {
  margin-bottom: 15px;
}

.box {
  background-color: #f7f7f7;
  margin-bottom: 20px;
}

.index {
  text-align: left;
}

.align {
  position: relative;
  top: 50%;
  transform: perspective(1px) translateY(-50%);
}

.button {
  background-color: #20B2AA;
  color: white;
}

.buttonmargin {
  margin-left: 150px;
}

This is how it looks like

EN

回答 2

Stack Overflow用户

发布于 2019-07-26 03:00:11

尝试使用flex。

代码语言:javascript
运行
复制
<div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 align"> //moved align class here
      <%= link_to "View", course_path(course), class: "btn button buttonmargin" %>
    </div>

和用于align的css:

代码语言:javascript
运行
复制
.align {
  display: flex;
  justify-content: center;
  align-items: center;
}

这是codesandbox link

票数 0
EN

Stack Overflow用户

发布于 2019-07-26 03:30:05

舒布汉姆的答案几乎是正确的。但是,需要具有display:flex属性的css类实际上位于行本身。Bootstrap4.0没有修改CSS,而是有一个名为.d-flex的内置类,您可以将它与.align-items-center配对,它将会工作。请参见下面的示例:

没有定义的高度属性:

代码语言:javascript
运行
复制
<div class="container">
    <div class="row d-flex align-items-center">
        <div class="col-12">
            Anything in here will be vertically centered
        </div>
    </div>
</div>

在容器上定义了height属性:

代码语言:javascript
运行
复制
<div class="container d-flex align-items-center" style="height:500px">
    <div class="row">
        <div class="col-12">
            Anything in here will be vertically centered
        </div>
    </div>
</div>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57208419

复制
相关文章

相似问题

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