我有两个使用ion-slides
组件的滑块,我创建了一个带有两个按钮(导航按钮)的页脚。直到没事。
但是......我在其中一个滑块中有一个表单,所以当我关注input text
元素时,virtual keyboard
会打开并向上移动页脚,将其放在表单前面
我知道hide-on-keyboard-open
类,但这不是中级的(您可以看到页脚如何放置在表单前面几秒钟),所以我想到了使用{{1 }}
因此,当z-index
向上移动时,它会隐藏在表单下面。但我无法让它发挥作用。
也许有人可以帮我解决这个问题?
我的意图是绿色块在联系时隐藏在蓝色块下面...我已经创建了一个codepen来显示此问题:https://codepen.io/anon/pen/QEBxRK?editors=1111
(由于您无法在台式计算机上打开虚拟键盘,因此可以调整页面高度以查看footer
不起作用)
问候!
答案 0 :(得分:1)
z-index
需要设置为.footerTest
的兄弟<ion-slides options="sliderOptions" slider="slider">
元素。
一个选项是移动幻灯片中的.footerTest
。
下面的示例显示z-index
如何应用于元素及其子元素。
Src:https://developer.mozilla.org/en/docs/Web/CSS/z-index
.dashed-box {
position: relative;
z-index: 3;
border: dashed;
height: 8em;
margin-bottom: 1em;
margin-top: 2em;
}
.gold-box {
position: absolute;
z-index: 2;
background: gold;
width: 65%;
left: 60px;
height: 7em;
top: 3em;
}
.green-box {
position: absolute;
z-index: 1;
background: lightgreen;
width: 20%;
left: 65%;
top: -25px;
height: 8em;
opacity: 0.9;
}
.red-box {
position: relative;
z-index: 0;
background: red;
height: 8em;
margin-bottom: 1em;
margin-top: -4em;
text-align: right;
}
&#13;
<div class="dashed-box">Dashed box
<span class="gold-box">Gold box</span>
<span class="green-box">Green box</span>
</div>
<div class="red-box">Red box</div>
&#13;
但是,如果您省略z-index
上的dashed-box
并使用负值,就像在蓝色框中一样,蓝色就在它们之下。
.dashed-box {
position: relative;
/* z-index: 3; */
border: dashed;
height: 8em;
margin-bottom: 1em;
margin-top: 2em;
}
.gold-box {
position: absolute;
z-index: 2;
background: gold;
width: 65%;
left: 60px;
height: 7em;
top: 3em;
}
.green-box {
position: absolute;
z-index: 1;
background: lightgreen;
width: 20%;
left: 65%;
top: -25px;
height: 8em;
opacity: 0.9;
}
.blue-box {
position: absolute;
z-index: -1;
background: lightblue;
width: 20%;
left: 25%;
top: -25px;
height: 18em;
opacity: 0.9;
}
.red-box {
position: relative;
z-index: 0;
background: red;
height: 8em;
margin-bottom: 1em;
margin-top: -4em;
text-align: right;
}
&#13;
<div class="dashed-box">Dashed box
<span class="gold-box">Gold box</span>
<span class="green-box">Green box</span>
<span class="blue-box">Blue box</span>
</div>
<div class="red-box">Red box</div>
&#13;