【问题标题】:Using image taller than the navbar使用高于导航栏的图像
【发布时间】:2020-07-16 02:07:00
【问题描述】:

我在一个项目中有这个导航栏:

<nav class="navbar navbar-dark bg-dark">
  <a class="navbar-brand" href="#">
    <img th:src="@{/img/bootstrap-solid.svg}" width="30" height="30" class="d-inline-block align-top" alt="">
    Kleber App Store
  </a>
</nav>

而不是这个:

    <img th:src="@{/img/bootstrap-solid.svg}" width="30" height="30" class="d-inline-block align-top" alt="">
    Kleber App Store

我想要这样的东西:

    <img th:src="@{/img/bootstrap-solid.svg}" width="120" height="240" class="d-inline-block align-top" alt="Kleber App Store">

但不改变导航栏的高度(图像应在开始时与导航栏重叠,并留出下方区域,如级联)。

我已经尝试在 stackoverflow 上按照一些答案添加 style="position: absolute;",但是使用此解决方案,图像显示时与顶部有一点差距,在导航栏下方区域的 list-group 后面。

有人知道怎么解决吗?

【问题讨论】:

  • 嗨 Kleber,您能否在您的问题中添加一个演示
  • 你是否尝试过 position: absolute solution with top:0 on img and margin-bottom: 120px;在导航栏上?
  • 刚刚做了。同样的结果:jsfiddle.net/klebermo/wq84623n/12
  • 好吧,差距仍然存在。但由于导航栏和导航栏品牌上的填充,它在那里。所以如果你要重置它们(padding-top:0;)你应该没问题jsfiddle.net/m7k6ozhu

标签: html css image twitter-bootstrap


【解决方案1】:

问题不在于图像,而在于navbar 引导类。 navbar 类具有 height: auto;。这就是为什么它会随着里面的内容而增加它的大小。

您可以尝试自定义导航栏高度

.navbar {
  height: 3rem;
}

img {
  position: absolute;
}

<span class="pl-3">Brand Name</span> <! –– padding-left or whatever required ––>

【讨论】:

  • 他在寻找“不改变导航栏高度”的解决方案
  • 是的,但如果出现以下情况,答案可能会起作用:1)图像的边距顶部为 0;现在图像和顶部之间存在差距。 2)在导航栏下方的区域有一个list-group,现在的图像在这个元素的后面。无论如何,如果有一个不涉及更改导航栏高度的解决方案,那就太好了。
  • @Vova 我明白了,但是,我所要求的只是重新创建引导导航栏高度 CSS,而不是让它保持自动。或者我们可以做position: absolute;img标签,然后用&lt;span&gt;Kleber App Store&lt;/span&gt;包装品牌名称,然后给它一个padding-left: 3.5rem;只是想其他方法。
  • 我已经尝试了答案中的建议,但我认为不起作用?也许我做错了什么。 jsfiddle-.jsfiddle.net/klebermo/2uLrwvds/4
猜你喜欢
  • 1970-01-01
  • 2014-06-17
  • 2016-02-29
  • 2014-01-17
  • 1970-01-01
  • 2019-03-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多