【问题标题】:CSS: Text behind bootstrap 3 thumbnailCSS:引导程序 3 缩略图后面的文本
【发布时间】:2014-12-22 02:47:01
【问题描述】:

我对 bootstrap 3 中的缩略图有一些问题。您可以在此处查看代码:http://amazing-vt.de/#portfolio

当您悬停图片时,您可以看到图片后面的文字。现在我想将此文本居中,但填充不会影响任何这些链接。我还使用类缩略图为<a> 设置了一个高度。我如何改变我的css,所以我不需要设置高度?如何使文本居中?谁能解释一下,为什么图像在悬停时闪烁?

【问题讨论】:

  • 在 Firefox 34 上查看投资组合图像,下方的文本已经居中。
  • stylesheet.css line : 326 Remove padding:0px !important 然后尝试任何可能的更改
  • @VipulHadiya 删除填充 0px 并不是那么好。现在我在图像周围有一个绿色边框。
  • @Martin 我的意思也是垂直居中。现在我只将它水平居中。
  • 但是无论如何你都可以管理那个边界。您当前的 HTML 不太好。 li 的高度是 467px 实际很小

标签: html css twitter-bootstrap twitter-bootstrap-3


【解决方案1】:

我建议您尽可能多地使用引导类,例如.img-responsive 使图像缩放到其容器的宽度。

创建您自己的.thumb 元素,其中包含用于图像的.thumb__image 和用于覆盖文本的.thumb__text.thumb_image 包含图像并使用正常定位,.thumb__text 具有 position: absolute 并将所有坐标设置为零以使其成为图像。

.thumb__text 内有一个thumb__text-inner,它使用来自 css-tricks.com/centering-css-complete-guide/ 的垂直居中技术来居中文本。

确保所有图像具有相同的纵横比,并且文本适合图像的尺寸。

请参见下面的示例。我添加了一个负边距 -15px 以抵消可能不需要的 Bootstraps 网格排水沟。

.thumb {
  position: relative;
  margin: 0 -15px; // offsetting the grid
}

.thumb__text {
  z-index: -1;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(39, 174, 96, .5);
  color: #fff;
}

.thumb__text-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}

.thumb:hover .thumb__text {
  z-index: 1;
}
<link href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css" rel="stylesheet" />
<div class="container">
  <div class="row">
      <div class="col-sm-4">
        <div class="thumb">
          <img src="http://placekitten.com/800/400" class="img-responsive thumb__image" />
          <div class="thumb__text">
            <div class="thumb__text-inner">
              Omg! What a lovely kitten that is!
            </div>
          </div>
        </div>
      </div>
      <div class="col-sm-4">
        <div class="thumb">
          <img src="http://placekitten.com/g/800/400" class="img-responsive thumb__image" />
          <div class="thumb__text">
            <div class="thumb__text-inner">
              Omg! What a lovely kitten that is!
            </div>
          </div>
        </div>
      </div>
    </div>  
  </div>
</div>

【讨论】:

  • 我没有将灯箱添加到我的示例中,只有关于缩略图和覆盖文本的部分。尝试将我的示例与您已有的代码集成。接下来,我注意到一张图像(拿着吉他的人)具有不同的纵横比(纵向而不是横向)。那看起来不太好。一种选择是将屏幕分成三列,并将多个图像垂直堆叠到每一列中。
【解决方案2】:

Stylesheet.css line : 326 Remove padding:0px !important 然后尝试任何可能的更改

同时删除padding-top:25% 和 Bootstrap.css 4585

padding:0px
margin-bottom:16px;

您的设计将如您所愿。我已经测试过了

【讨论】:

  • 也许小提琴会帮助 DummerTroll?我看到你已经实现了,但我不能轻易看出如何。但是,这不是我的代码...
  • 我已经按照你说的修改了代码。现在我的锚标签上仍然有一个固定的高度。我该如何替换这个?我的文字也不是垂直居中的。
  • 为什么不在

    元素中使用 .text-center 类而不是这个 CSS?

猜你喜欢
  • 2015-12-08
  • 1970-01-01
  • 2012-06-22
  • 1970-01-01
  • 1970-01-01
  • 2013-01-01
  • 2014-11-20
  • 2023-03-27
  • 2015-11-02
相关资源
最近更新 更多