html - Safari iOS 中绝对定位元素不高于其他绝对定位元素

标签 html css css-position mobile-safari absolute

我有一个带有下拉菜单的表格 enter image description here

表格的下拉菜单和标题是绝对定位的。

下拉菜单的“z-index:20” header 具有“z-index:10” 下拉列表的“top”和“left”属性在代码中设置。

这是下拉菜单和标题的样式

.data-table-head {
    overflow: hidden;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    flex: 0 0 auto;
    height: 24px;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 12;
}  

 .custom-select-list {
        position: absolute;
        margin: 34px 0 0 0;
        min-width: 84px;
        font-weight: normal;
        right: 15px;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translateZ(1px);
        z-index: 10000;
 }

下拉菜单应位于表标题上方。

此问题仅出现在 iOS 设备上的 Safari 中 - 下拉菜单位于标题下方。 有谁知道如何解决这个问题吗?

最佳答案

我发现问题出在哪里了。这是因为布局复杂,样式繁多。

下拉列表实际上已渲染,但下拉列表的一部分是不可见的(似乎与其他 div block 重叠),但用户仍然可以与该不可见部分进行交互。

问题是外部父 div 容器之一具有属性 -webkit-overflow-scrolling:触摸; 因此,在 Safari 中渲染 Webkit 时隐藏了下拉菜单的一部分。所以我删除了该属性,但保留了 -webkit-transform:translate3d(0, 0, 0);到下拉菜单,一切开始工作得很好!

关于html - Safari iOS 中绝对定位元素不高于其他绝对定位元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37070670/

相关文章:

html - 获取此 "simon says"游戏中间控件的标题和按钮

jquery - float 与绝对定位难题

CSS3 过渡和边框

html - 我的元素或背景在 Chrome 中不显示,但在所有其他浏览器中显示,为什么?

javascript - Jquery Plugin qTip2 这是在 Hypem.com 上使用的吗?

html - angular 4 应用程序不填满屏幕高度

jquery - 当相邻图像使用 jQuery 动画时,文本在 Safari 中消失

html - Bootstrap 前置图标以选择列表

html - 位置 :fixed element within a position:relative parent. 哪个浏览器渲染正确?

javascript - Jquery mobile 中的 setInterval 不起作用