我一直试图将这张图片放在它的父级按钮下面,这样按钮就覆盖了图像的一部分,like thisnot this,这样图像的底部就会弹出到按钮下面.

我try 使用z-index并将两者都设置为相对位置,但似乎没有任何作用,即使Inspect元素显示按钮的z-index高于图像.

这是这两个项目的html代码.Id用于悬停效果,应忽略.

<a href="film.html">
            <button id="!01Hover" type="button" class="block link">
                <div id="!01HoverChild" class="hoverUp">FILM</div>
                <img src="static/assets/logos/logoHOME1k.webp" id="!01HoverChildLogo" class="navbarLogo" onclick="location.href='./index.html'" alt="Logo">
            </button>
        </a>

以下是上述代码的相关css:

.block {
    display: block;
    position: relative; 
    width: 10.6vw;
    height: 6vw;
    line-height: 1.5vw;
    border: none;
    background-color: #333;
    padding: 2.1vw 0vw 2.1vw 0vw;
    font-size: 1.275vw;
    cursor: pointer;
    color: #FFF;
    font-family: Roboto, sans-serif;
    text-decoration: none;
    transition-property: all;
    transition-duration: 0.75s;
    font-weight: bold;
    filter: brightness(100%);
    z-index: 5;
}

.hoverUp{
    transition-property: all;
    transition-duration: 0.75s;
    transform: translateY(0vw);
    pointer-events: none;
}

.navbarLogo{
    position: relative;
    margin: 0vw 0vw 0vw 0vw;
    align-items: center;
    transform: translate3d(0,0,0);
    transition-property: all;
    transition-duration: 0.75s;
    height:auto; 
    width: 80%;
    z-index: 1;
}

.link用于光标,与定位无关.

推荐答案

要将子元素(图像)定位在其父元素(按钮)的后面,需要对子元素进行绝对定位.

button {
  position: relative; 
  border: 0;
  cursor: pointer;
  color: white;
  font-family: sans-serif;
  width: 150px;
  height: 50px;
  background-color: #333333;
}

img {
  position: absolute;
  width: 75%;
  top: 50%;
  left: 50%;
  transform: translateX(-50%);
  border: 3px solid red;
  z-index: -1;
}

.b2 {
  /* partially transparent to expose the image underneath */
  background-color: #333333df;
}
<button>
  <div>FILM</div>
  <img src="http://picsum.photos/250">
</button>

<button class="b2">
  <div>FILM</div>
  <img src="http://picsum.photos/250">
</button>

PS.看看当你把你的代码变成一个可运行的代码片段时会变得多么容易?而代码是证明这一点所需的最低代码?

Html相关问答推荐

我需要两个HTML标签,以便当另一个隐藏时,一个可见,反之亦然

将CSS应用于TD标记内的div

如何在所有屏幕大小下使带有背景图像的伪元素作为标题的衬底?

响应CSS中的两到三列布局

我怎样才能在我的网站上制作花哨的角落

有没有办法根据另一个项目调整FlexBox项目的大小?

列表项文本在占据剩余空间之前在标记下换行

浮动Div在CSS中未按预期工作

为什么我的 html 对话框在 React 中没有渲染在我的内容之上?

如何围绕中心zoom svg 并使父级达到其子级大小的 100%

Sass 混合动画未正确应用

如何让一个 div 元素粘在另一个元素上?

如何截断一些文本并用双引号引起来?

如何删除输入中输入类型数字中的箭头?

需要禁用聚焦输入的工具提示(jquery)

悬停一个 div 时更改所有其他 div 上的字体 colored颜色

有没有办法使用 CSS border-radius 创建 HTML 视频标签的三角形显示?

按部分划分的表行带

如何在单击按钮时切换 Blazor 中的类?

所有幻灯片上的 Quarto RevealJS 标题