【问题标题】:Vertical align text in a Responsive Div在响应式 Div 中垂直对齐文本
【发布时间】:2015-04-01 03:02:17
【问题描述】:

我正在尝试为我们使用 Bootstrap 框架的网站创建促销框。

我想要一个带有背景图像的 div 来容纳垂直对齐的内容。我相信我已经部分成功了,当 div 的宽度变得大于我为背景图像大小设置的数量时,就会出现问题。有什么解决方法吗?

例如,在列宽为 6 时,div 的宽度为 455px,但在某些断点期间,div 变得比这更宽,但文本内容仍然认为它是 455px。

这是我的html:

<div class="col-md-6 col-sm-6">
    <div class="promo-box01">
        <div class="promo-text">
            <h3>CTA</h3>
            <p>Limited time sale $45.00</p>
            <a href="#" class="btn btn-primary">Shop Now</a>
        </div>    
</div>
</div>

这是我的 CSS:

.promo-box01 {
background-image:url('../images/promo1.jpg');
background-size: cover;
width:100%;
height:150px;
background-repeat:none;
text-align: center;
border-radius:3px;
box-shadow: 0 0 4px #888;
}

.promo-box01 .promo-text {
font-family:'Roboto',arial,sans-serif;
color:#FFF;
vertical-align: middle;
width:450px;
height:150px;
line-height:1.5em;
display: table-cell;
}

.promo-text h3 {
font-family:'Anton',arial,sans-serif;
color:#FFF;
font-size:28px;
}

【问题讨论】:

  • 我认为 .promo-box01 应该显示:table
  • 我想我可能已经想出了一个解决方法,尽管它可能不是很优雅。通过将 .promo-text 设置为 600px 的宽度,它比任何断点处的 div 都大,从而保持居中格式。

标签: html css vertical-alignment


【解决方案1】:

尝试将这些类添加到“promo-box01”:
-webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-18
    • 2012-12-09
    • 2016-07-18
    • 2016-12-02
    • 2014-04-15
    • 2017-01-17
    相关资源
    最近更新 更多