Sav*_*ado 5 css z-index css3 transitions css-transitions
对于新的网页设计,我试图通过CSS过渡和z-index控制两个50%宽度的图层,但是似乎存在冲突:z-index似乎太慢了。正如您在小提琴中看到的那样,悬停时右侧滑块div后面隐藏着白色框,直到转换完成为止。有没有一种替代方案可以更快地起作用?还是有其他方法可以做到?任何帮助将非常感激!
这是我的CSS:
body {
background:black;
}
div {
-webkit-transition:opacity 0.6s ease, width 0.6s ease;
transition:opacity 0.6s ease, width 0.6s ease;
}
.slide {
position:absolute;
top:0;
bottom:0;
width:50%;
-webkit-transform:skew(-15deg);
-moz-transform:skew(-15deg);
-ms-transform:skew(-15deg);
-o-transform:skew(-15deg);
transform:skew(-15deg);
z-index:2;
}
.slide:hover {
width:60%;
z-index:3;
}
.slide#left {
left:0;
}
.slide#right {
right:0;
}
.wrap {
width:100%;
height:100%;
position:absolute;
overflow:hidden;
}
.inner {
width:100%;
height:100%;
-webkit-transform:skew(15deg) scale(1.5);
transform:skew(15deg) scale(1.5);
opacity:0.5;
position:absolute;
}
.inner:hover {
opacity:1;
}
.inner#left {
background:url(//savado.nl/new/key.jpg) no-repeat center center;
-webkit-background-size:cover;
-moz-background-size:cover;
-ms-background-size:cover;
-o-background-size:cover;
background-size:cover;
}
.inner#right {
background:url(//savado.nl/new/code2.jpg) no-repeat center center;
-webkit-background-size:cover;
-moz-background-size:cover;
-ms-background-size:cover;
-o-background-size:cover;
background-size:cover;
}
.slide .logo {
position:absolute;
z-index:99;
top:50%;
height:20%;
padding-left:20%;
background:white;
}
.logo#left {
right:0;
-webkit-transform:translateX(50%) translateY(-50%) skew(15deg);
-moz-transform:translateX(50%) translateY(-50%) skew(15deg);
-ms-transform:translateX(50%) translateY(-50%) skew(15deg);
-o-transform:translateX(50%) translateY(-50%) skew(15deg);
transform:translateX(50%) translateY(-50%) skew(15deg);
}
.logo#right {
left:0;
-webkit-transform:translateX(-50%) translateY(-50%) skew(15deg);
-moz-transform:translateX(-50%) translateY(-50%) skew(15deg);
-ms-transform:translateX(-50%) translateY(-50%) skew(15deg);
-o-transform:translateX(-50%) translateY(-50%) skew(15deg);
transform:translateX(-50%) translateY(-50%) skew(15deg);
}
Run Code Online (Sandbox Code Playgroud)
这是小提琴!
PS:我是刚开始在这个论坛上发表自己的问题,所以对我不遵守任何规则感到抱歉。除此之外,我的英语不是最好的,因为它不是我的母语(我是荷兰语)。但是请帮帮我!
看起来问题仅在Chrome中存在,而在FF中不存在。您需要做的是像这样在包装容器上设置一个较小的z-index
.wrap {
z-index:1;
}
Run Code Online (Sandbox Code Playgroud)
那应该修复它,这是更新的JSFIDDLE