html – 覆盖/悬停Flexbox容器div中的div

前端之家收集整理的这篇文章主要介绍了html – 覆盖/悬停Flexbox容器div中的div前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试覆盖一个可以在flexBox容器中浮动的div.

标头是一个flexBox容器,有三个flexBox div在容器中工作.覆盖我想覆盖其他三个div但仍然受限于.header flexBox容器div.

我已经在stackoverflow和其他地方尝试了多种方法,但是当结合使用flexBox时,怎么没有看到解决覆盖或分层的解决方案.

谢谢你的任何建议!

链接到以下的jsfiddle:Link

HTML:

  1. <div class="header">
  2. <div class="headerLeft">Left</div>
  3. <div class="headerMiddle">Middle</div>
  4. <div class="headerRight">Right</div>
  5. <div class="overlay">Overlay</div>
  6. </div>

CSS:

  1. .header {
  2. border: 3px solid orange;
  3. width: 100%;
  4. display: -webkit-flex;
  5. display: flex;
  6. z-index: 0;
  7. }
  8.  
  9. .headerLeft {
  10. border: 2px solid chartreuse;
  11. -webkit-flex: 1;
  12. flex: 1;
  13. z-index: 1;
  14. }
  15. .headerMiddle {
  16. border: 2px solid darkorchid;
  17. -webkit-flex: 1;
  18. flex: 1;
  19. z-index: 1;
  20. }
  21. .headerRight {
  22. border: 2px solid darkorange;
  23. -webkit-flex: 1;
  24. flex: 1;
  25. z-index: 1;
  26. }
  27.  
  28. .overlay {
  29. border: 2px solid green;
  30. z-index: 10;
  31. background: rgba(0,0.3);
  32. }

解决方法

查看所有已注释掉的代码,您就可以在flex容器上找到相对定位的正确轨道.你只需要绝对定位你的叠加元素.

http://jsfiddle.net/UHECE/4/

添加/取消注释这些样式:

  1. .header {
  2. position: relative;
  3. }
  4.  
  5. .overlay {
  6. position: absolute;
  7. left: 0; top: 0; right: 0; bottom: 0;
  8. }

猜你在找的HTML相关文章