javascript - 如何不让横幅与 HTML/CSS 中的文本和图像重叠?

标签 javascript html css web web-deployment

所以我为我的元素创建了一个横幅,出于某种原因,横幅似乎与文本和图像重叠,因为它隐藏在它们后面。我将如何解决这个问题?我将分享我的元素的链接,因为还有很多其他文件,我无法在此处发布。

我所说的横幅是在右下角写着“你好!谢谢......”的地方。另外,我想让它出现在所有内容的前面,就像它不应该隐藏在任何图像或文本后面一样。请帮忙,因为我无法解决这个问题。横幅的 css 位于 assets/css/banner.css 横幅的 html 位于 HTML 文件的顶部附近。但我也会将代码粘贴到此处,因为可能有一些我遗漏的东西需要添加,这样它就不会与任何东西重叠。

 (function() {
  requestAnimationFrame(function() {
    var banner;
    banner = document.querySelector('.exponea-banner');
    banner.classList.add('exponea-in');
    return banner.querySelector('.exponea-close').addEventListener('click', function() {
      return banner.classList.remove('exponea-in');
    });
  });

}).call(this);
@import url("https://fonts.googleapis.com/css?family=Roboto:300,400,500");
html,
body {
  width: 100vw;
  height: 100vh;
  position: relative;
}

.exponea-banner {
  font-family: Roboto, sans-serif;
  position: fixed;
  right: 20px;
  bottom: 20px;
  background-color: #2e364d;
  color: #ebeef7;
  padding: 30px 80px 30px 35px;
  font-size: 16px;
  line-height: 1;
  border-radius: 5px;
  box-shadow: 0 3px 30px rgba(116, 119, 176, 0.3);
  opacity: 0;
  transition: opacity 0.2s;
}
.exponea-banner.exponea-in {
  opacity: 1;
  transition-duration: 0.4s;
}
.exponea-banner .exponea-close {
  position: absolute;
  top: 0;
  right: 0;
  padding: 5px 10px;
  font-size: 25px;
  font-weight: 300;
  cursor: pointer;
  opacity: 0.75;
}
.exponea-banner .exponea-label {
  position: absolute;
  bottom: 10px;
  right: 10px;
  font-size: 12px;
  opacity: 0.75;
}
.exponea-banner .exponea-text {
  margin-bottom: 8px;
}
.exponea-banner .exponea-count {
  font-weight: 500;
}
.exponea-banner .exponea-label {
  text-align: left;
  bottom: 10px;
  right: 10px;
  font-size: 12px;
  opacity: 0.75;
}
<div class="exponea-banner">
  <div class="exponea-close">
    &times;
  </div>
  <div class="exponea-text">
    Hi there! Thanks for stumbling upon my website!
  </div>
  <div class="exponea-label">
    - Hussain Omer
  </div>
  <div class="exponea-label2">
    (scroll down a bit to close this banner) &#128515
  </div>
</div>

提前致谢!

最佳答案

使用z-index。例如,在您的 CSS 中试试这个:

.exponea-banner,
.exponea-close,
.exponea-text,
.exponea-label,
.exponea-label2 {
    z-index: 10;
}

请记住,z-index 属性控制重叠元素的垂直堆叠顺序。使用较大的数字(如 10)可以确保此元素位于页面中其他元素的顶部。

关于javascript - 如何不让横幅与 HTML/CSS 中的文本和图像重叠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65659502/

相关文章:

html - 使用属性选择器在 CSS 伪元素中换行

javascript - ArcGIS JS API 搜索源 searchFields - 多个字段不起作用

javascript - 基于原型(prototype)的类语法和 JavaScript 中的类语法有什么区别?

javascript - 如何在react js中的map函数中进行增量

javascript - 自动排列div,同时放大一个div

html - CSS,轮廓偏移 : setting the offset for each side individually

css - 使用 html5reset 复制 css 行

jquery - 最简单的增加 - 使用 jquery 减少选择区域中的值选项

javascript - CSS JQuery Div 起始位置相对于窗口大小

javascript - 在 jQuery 中使用动态 div ID