要使圆角框(请参阅http://jsfiddle.net/L36nq/)可点击/可收回,我需要使用
a {
display: block;
}
然而,为了保持图像(两个方格)居中,我需要使用
#left {
display:table;
...
}
#right {
display:table;
...
}
如何在保持图像居中的同时使全圆框可点击/可悬空?
HTML
<div id="left">
<div id="cell">
<a href="http://google.com/">
<img src="box.svg" width="75%" height="75%" />
</a>
</div>
</div>
<div id="right">
<div id="cell">
<a href="http://bing.com/">
<img src="box.svg" width="75%" height="75%" />
</a>
</div>
</div>
CSS
#left {
display:table; position:absolute;
top:25%; left:25%; width:24%; height:50%;
vertical-align:middle; text-align:center; margin: auto; border-radius:30px;
background-color: #D88;
}
#right {
display:table; position:absolute;
top:25%; left:51%; width:24%; height:50%;
vertical-align:middle; text-align:center; margin: auto; border-radius:30px;
background-color: #88D;
}
#cell {display:table-cell; vertical-align:middle;}
a {
display: block;
}
body { background-color: #9D9; }
答案 0 :(得分:0)
a {
display: block;
min-width: 100%;
min-height: 100%;
position:absolute;
top:0;
}
你的锚标签不是继承,高度或宽度所以它基本上是0x0 px。以上css为我提供了小提琴:http://jsfiddle.net/MkfAe/
答案 1 :(得分:0)
这样的事可能适合你。 http://jsfiddle.net/ZNXvT/1/
我正在使用您的#cell
元素并将其保留为块级元素,并在其上设置height: 100%;
。我还在你的锚元素上设置了height: 100%;
。
#cell {
height: 100%;
}
a {
display: block;
height: 100%;
}
现在进入魔术。您可以在a中添加一个元素(我称之为我的.valign-height
)并将其设置为height: 100%;
,并添加vertical-align: middle;
。
a .valign-height {
display: inline-block;
height: 100%;
vertical-align: middle;
width: 0;
}
然后使用图像(或svg)本身,我将其设置为vertical-align: middle;
。
a img {
vertical-align: middle;
}
元素本身不能垂直对齐,因为vertical-align与其兄弟对齐。如果我们有一个隐藏元素会欺骗您的垂直对齐,它将始终将您的内容置于中心位置。这样,您可以保持锚点填充空间,并使img元素保持垂直居中。