HTML   发布时间:2022-04-15  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了html – 如何在父元素和父元素的兄弟元素上显示子元素?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我的问题与这个问题有关:

Show child element above parent element using CSS

对该问题的回答,设置溢出:可见,仅适用于一个孩子的一个父母.但是,我有这些元素的行;父母的行,我需要孩子在父母身上显示.我可以让孩子显示原来的父母,但我不能让孩子显示父母的兄弟姐妹.为了让您了解我在说什么,这是一个截图:

我想要的是选项弹出窗口,隐藏在接下来的两行后面的元素,显示在这两行上,就像它显示在它的直接父级上一样.我一直在搞乱它,并没有想出来,所以希望这里的人能够提供帮助.

这是基本结构:

.row,.SELEctor {
  position: relative;
}

.label,.SELEctor {
  display: inline-block;
}

.SELEctor {
  overflow: visible;
}

.SELEctor-inner {
  display: block;
}

.SELEctor-arrow {
  float: right;
  width: 21px;
  height: 21px;
  BACkground: url(arrow.png) no-repeat center center;
}

.SELEctor-caption {
  display: inline-block;
}

.options-popup {
  position: absolute;
  z-index: 100;
  top: 0px;
  right: 0px;
}

.options-item {
  /* only for fonts and sizes */
}
<div class="row">
  <div class="label">Color scheR_156_11845@e:</div>
  <div class="SELEctor">
    <div class="SELEctor-inner">
      <div class="SELEctor-arrow"></div>
      <div class="SELEctor-caption">Standard</div>
    </div>
    <div class="options-popup">
      <div class="options-item">Standard</div>
      <div class="options-item">Dark</div>
      <div class="options-item">Light</div>
    </div>
  </div>
</div>

我该怎么做才能让选项弹出窗口显示在所有其他元素上?我需要对HTML做些什么吗?

解决方法

position:元素的relative创建一个新的定位上下文.此元素的子元素位于此本地上下文中.他们不能离开这种背景.如果要将子元素放在其父元素的兄弟元素之上,则应将其父元素的z-index设置为高于其兄弟元素的z-index的值.

如果元素相对于其兄弟节点的有效z-index位置完全取决于它们的DOM树顺序,那么在DOM树中的所有兄弟节点之后将元素移动到位置(如果在语义上合适)也可以帮助.

请注意,您始终可以通过JavaScript动态更改z-index(只是,根据Unobtrusive JS,不要忘记提供合理的纯CSS替代方案,以便在禁用JS时不隐藏内容).

大佬总结

以上是大佬教程为你收集整理的html – 如何在父元素和父元素的兄弟元素上显示子元素?全部内容,希望文章能够帮你解决html – 如何在父元素和父元素的兄弟元素上显示子元素?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。