【问题标题】:Maintain vertically centered alignment of overlay text保持覆盖文本的垂直居中对齐
【发布时间】:2021-04-21 02:15:39
【问题描述】:

我正在使用绝对定位的大型英雄图像,以便在其顶部放置文本覆盖。我还确保无论屏幕尺寸如何,英雄图像都是响应式的。我遇到的问题是确保覆盖文本在背景图像中垂直居中,无论屏幕大小如何。

以下链接显示了我尝试使用覆盖文本实现的效果:https://www.youtube.com/watch?v=gfzWLbAbcCw

我的jsx代码如下:

   <>
      <div className="container">
        <div className="container-background">
          <img
            src="https://i.imgur.com/iyFtMNA.jpg"
            alt="bg"
            className="container-background-img"
          />
        </div>
        <div className="content">
          <Navbar />
          <div className="page-outer">
            <div className="page-inner">
              <div className="wel-top-header">text</div>
              <div className="wel-top-middle">
                <div style={{ marginTop: -30 }}>text</div>
                <div style={{ marginTop: -48 }}>text</div>
              </div>
              <div className="wel-tagline">
                Pagerland offers a great, smooth looking and ultra-fast landing
                page templates build on Gatsby and React.
              </div>
            </div>
          </div>
        </div>
      </div>
    </>

我的css代码如下:

* {
  margin: 0;
  padding: 0;
}

.navbar {
  height: 80px;
  background-color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  border: solid black 1px;
}



.container {
  position: relative;
}
.container .container-background {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0.25;
}


以下链接包含用于调试的代码沙箱! https://codesandbox.io/s/charming-dijkstra-im7nb?file=/src/styles.scss:0-1101

我们将不胜感激任何和所有建议

【问题讨论】:

    标签: css reactjs sass


    【解决方案1】:

    通过为容器指定固定高度而不是 img 来解决问题。不确定这是否会造成任何其他额外问题。

    https://codesandbox.io/s/stackoverflow-hill-oyr5l-forked-udlsr?file=/src/styles.scss

    【讨论】:

    • 我注意到提供的代码,它不再遵守 1170 的最大宽度,这可能是什么原因造成的?
    • 我希望叠加层的最大宽度为 1170
    • 添加 .page-outer{margin:0 auto;width:100%;} ,将解决这个问题。已更新代码。
    • 这似乎完成了工作!非常感谢
    猜你喜欢
    • 1970-01-01
    • 2013-06-06
    • 2013-05-25
    • 1970-01-01
    • 1970-01-01
    • 2018-09-23
    • 1970-01-01
    • 2013-02-13
    • 2019-11-17
    相关资源
    最近更新 更多