【发布时间】:2012-08-20 05:56:57
【问题描述】:
我有一个<a> 包围一个<div>,它还有一些图像、一个<h2> 和一段文字。 <a> 都是inline-block。每当 H2 延伸到两行时,下一个 <a> 就会偏移。下面是截图。
HTML:
<a href="#">
<div>
<div class="imgOverflow">
<img src="/hello/there">
</div>
<h2>This is the title</h2>
<p>This is a paragraph</p>
</div>
</a>
CSS:
a {
display:inline-block;
font-size:16px;
border:1px solid grey;
width:260px;
margin:5px;
color:black;
overflow: hidden;
}
div {
display:block;
padding:5px;
width:250px;
height:300px;
}
p {
font-size:12px;
text-align:justify;
}
h2 {
margin:5px 0 10px 0;
font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
}
.imgOverflow {
margin:-5px 0 0 -5px;
width:260px;
padding:0;
overflow:hidden;
height:130px;
display:block;
}
如果有人知道某种 CSS 属性来避免这种情况,那将非常有帮助。谢谢。
【问题讨论】:
-
附注:在
anchors中嵌套divs 是不好的做法。 -
如果你觉得这很奇怪,那就试试 h2 内联 div。这完全打破了布局,h2 扩展了容器边界等。它只是显示了 html 的设计有多糟糕并且充满了错误。