I h*_*ode 18 javascript css jquery
我有一个包含fixeddiv(#navigation)的布局,其中包含按钮.布局还包括可滚动内容(.card).
#navigation目前有一个绿色背景用于演示目的.像这样:
#navigation {
position: fixed;
top: 20px;
left: 50%;
transform: translate(-50%, 0%);
background: green;
padding: 25px;
}Run Code Online (Sandbox Code Playgroud)
<div id="navigation"><button id="btn1">Button</button>
<button id="btn2">Button</button>
<button id="btn3">Button</button>
<button id="btn4">Button</button>
</div>Run Code Online (Sandbox Code Playgroud)
我想.card在绿色背景后面隐藏任何元素的任何部分.所以,我使用z-index堆叠顺序,它运作良好.像这样:
#card-wrapper {
width: 250px;
margin: 100px auto;
}
.card {
height: 200px;
width: 200px;
background: #131418;
margin: 1em auto;
display: inline-block
}
#navigation {
position: fixed;
top: 20px;
left: 50%;
transform: translate(-50%, 0%);
z-index: 1;
background: green;
padding: 25px;
}
#main {
text-align: center;
}Run Code Online (Sandbox Code Playgroud)
<div id="main">
<div id="navigation"><button id="btn1">Button</button>
<button id="btn2">Button</button>
<button id="btn3">Button</button>
<button id="btn4">Button</button>
</div>
<div id="card-wrapper">
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
</div>
</div>Run Code Online (Sandbox Code Playgroud)
但是,我也不想在生产中使用绿色背景.这意味着不#navigation应该有背景,只有里面的按钮应该是可见的.
所以我的问题是如何在#card-wrapper到达假设的绿色背景时立即隐藏顶部溢出?
#card-wrapper {
width: 250px;
margin: 100px auto;
}
.card {
height: 200px;
width: 200px;
background: #131418;
margin: 1em auto;
display: inline-block
}
#navigation {
position: fixed;
top: 20px;
left: 50%;
transform: translate(-50%, 0%);
z-index: 1;
padding: 25px;
border: 1px solid;
background: transparent
}
#main {
text-align: center;
}
body {
margin: 0 auto;
background: url(http://svgur.com/i/42T.svg);
background-attachment:fixed;
background-size:cover;
}Run Code Online (Sandbox Code Playgroud)
<div id="main">
<div id="navigation"><button id="btn1">Button</button>
<button id="btn2">Button</button>
<button id="btn3">Button</button>
<button id="btn4">Button</button>
</div>
<div id="card-wrapper">
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
</div>
</div>Run Code Online (Sandbox Code Playgroud)
注意,body元素有一个SVG背景,我不能为#navigation添加任何背景,因为它看起来很糟糕.
我对所有解决方案CSS/JS/jQuery持开放态度,只要它们不涉及硬编码值
kas*_*aku 15
尝试为#navigation设置相同的背景,具有相同的背景位置(参见下面的示例)
#card-wrapper {
width: 250px;
margin: 100px auto;
}
.card {
height: 200px;
width: 200px;
background: #131418;
margin: 1em auto;
display: inline-block
}
#navigation {
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 1;
padding: 40px 25px 25px 25px;
background: #ffffff url(http://svgur.com/i/42T.svg);
background-attachment: fixed;
background-size: cover;
background-position: 0 0;
}
#main {
text-align: center;
}
body {
margin: 0 auto;
background: #ffffff url(http://svgur.com/i/42T.svg);
background-attachment: fixed;
background-size: cover;
background-position: 0 0;
}Run Code Online (Sandbox Code Playgroud)
<div id="main">
<div id="navigation">
<button id="btn1">Button</button>
<button id="btn2">Button</button>
<button id="btn3">Button</button>
<button id="btn4">Button</button>
</div>
<div id="card-wrapper">
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
</div>
</div>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
964 次 |
| 最近记录: |