我有一个问题,在我的其他网站上,这一切都适合我,但对于我的新网站,它不是。但这是我的问题,我试图在我的网站上有不同的部分,所以我没有设置任何价值的部分的位置。左上方。我不是在CSS或其他任何东西中给他们postion:absolute
,因为我希望他们“堆叠”。
但是现在,他们已经落后于我网站上的所有内容,好像z-index低于其他版本,但绝对不是我玩了多少。
这是我的代码,click here for an UPDATED example on JSFiddle.
HTML
<div id="bg_reg"></div>
<div id="bg_blur"></div>
<div id="section2">You can't see this div.</div>
的Javascript
$(function() {
// hide #back-top first
$("#bg_blur").hide();
// fade in #back-top
$(function () {
$(window).scroll(function () {
if ($(this).scrollTop() > 70) {
$('#bg_blur').fadeIn(600);
} else {
$('#bg_blur').fadeOut(600);
}
});
});
});
CSS
#section2{
width:100%;
background:url(../images/white.jpg) #FFF;
-webkit-box-shadow: 0px 0px 30px rgba(50, 50, 50, 1);
-moz-box-shadow: 0px 0px 30px rgba(50, 50, 50, 1);
box-shadow: 0px 0px 30px rgba(50, 50, 50, 1);
z-index:150;
}
#bg_reg {
background: url(../images/bg_reg.jpg) no-repeat right top;
background-size: cover;
position: fixed;
bottom: 0%;
left: 0%;
width: 100%;
height: 100%;
-webkit-transition: opacity 500ms;
-moz-transition: opacity 500ms;
-o-transition: opacity 500ms;
-ms-transition: opacity 500ms;
transition: opacity 500ms;
z-index:0;
}
#bg_blur {
background: url(../images/bg_blur.jpg) no-repeat right top;
background-size: cover;
position: fixed;
bottom: 0%;
left: 0%;
width: 100%;
height: 100%;
z-index:0;
}
可能是一个非常愚蠢的问题,有人会轻易地知道答案,但我很难过。提前感谢您的帮助!
**我现在知道z-index不适用于非定位元素,但我怎样才能使这些网站内容有效?我让它在This site上按照我想要的方式工作,我无法找到我做的不同的事情。
答案 0 :(得分:1)
我不确定您希望#section2
出现在哪里,但为了使其在堆叠顺序中可见,只需按以下方式设置position: relative
:
#section2 {
position: relative;
height:100px;
width:100%;
background:#FFF;
-webkit-box-shadow: 0px 0px 30px rgba(50, 50, 50, 1);
-moz-box-shadow: 0px 0px 30px rgba(50, 50, 50, 1);
box-shadow: 0px 0px 30px rgba(50, 50, 50, 1);
z-index:150;
}
请参阅演示:http://jsfiddle.net/audetwebdesign/HM5Ct/
设置position: relative
会将元素保留在文档流中,并允许它以新的堆叠顺序以及固定和绝对定位的元素进行渲染。
答案 1 :(得分:0)
在规范中,元素必须定位才能拥有z-index。
点,注意
仅适用于定位元素(position:absolute;,position:relative;或position:fixed;)。
如果您不想使用position: relative;
,则需要应用position: absolute;
。
您还可以通过将负z-index应用于背景来归档相同的效果,因此您无需设置任何z-index或定位到其他元素。
#bg_blur {
background: url(http://s7.postimg.org/lyra1ksah/bg_blur.jpg) no-repeat right top;
background-size: cover;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: -1; <-----
}
来源:
编辑基于评论
在页面darrylhuffman.com上,您使用相同的技术,但#section1
仍然不可见。
#section1
内的文字会从其父级继承z-index:4
,并将position:absolute;
应用于#welcome
,使其可见。
<div id="section1">
NOTICE THAT THIS TEXT IS NOT VISIBLE!
<div id="welcome">
THIS IS VISIBLE
<center><span id="hdh">HELLO, MY NAME IS DARRYL HUFFMAN AND I</span>
...
#section1 { /*Still invisible*/
width: 100%;
height: 100%;
z-index: 4;
}
#welcome {
position: absolute; /* THIS MAKE THE TEXT VISIBLE */
...
}