我正在尝试在事件上创建一个不会影响其余布局的事件。似乎z-index是这样做的方式,但我无法让它工作。我试图坚持使用css,但jQuery是可行的。
完整的应用:http://jsfiddle.net/9cRdq/
HTML
<div class="big-square" id="br">
<div class="little-square" id="br-tl"></div>
<div class="little-square" id="br-tr"></div>
<div class="little-square" id="br-bl"></div>
<div class="little-square" id="br-br"> </div>
</div>
CSS
.big-square
{
position: relative;
z-index: 1;
font-size: 2em;
float: left;
width: 30%;
min-width: 4em;
min-height: 4em;
margin: 0 2% 2% 0;
background: #000;
}
.little-square
{
position: relative;
z-index: 1;
cursor: pointer;
float: left;
width: 48%;
height: 48%;
background: #cd2626;
}
.little-square:hover
{
z-index: 1000;
}
jquery的
$(document).ready(resizeBigSquare);
window.onresize = resizeBigSquare;
function resizeBigSquare() {
$('.big-square').css(
{
'height': ($('.big-square').width() * .85) + 'px',
'line-height': ($('.big-square').width() * .85) + 'px'
});
$('.little-square, .rectangle-top, .rectangle-bottom').css(
{
'line-height': $('.little-square').height()+ 'px'
});
}
答案 0 :(得分:1)
您的z-index
悬停更改工作正常。事实上,here's a fiddle通过使用box-shadow
显示了它。你的 div.little-square 实际上是在它上面的同龄人之上,否则box-shadow
将会落后于其他人。
请注意z-index
仅影响z轴上的堆叠顺序,没有别的(尺寸,颜色等)
如果您想在悬停时更改 div.little-square 的大小(不破坏网格),请考虑在每个方块内创建子元素。然后,将position:absolute
应用于新的子元素,将小方块的一些属性传递给它,并相应地设置它的悬停状态。 This fiddle有一个我正在谈论的例子。