由于您使用的是 XHTML,我假设您希望您的标记是语义的。所以从技术上讲,/siteimages/forms/bottom.jpg
与/siteimages/forms/top.jpg
人们的照片相比,这些图像没有任何意义。既然它只是一种装饰,那么为什么不使用background
CSS 属性设置它们的样式并将它们应用到您的<div>
容器中以达到相同的效果呢?
例如。
.roundedTopBar {
padding-top: 10px;
background: transparent url('/siteimages/forms/top.jpg') 0 0 no-repeat;
}
.roundedBottomBar {
padding-bottom: 10px;
background: transparent url('/siteimages/forms/bottom.jpg') 0 100% no-repeat;
}
<div class="half2 roundedTopBar">
<div class="roundedBottomBar">
<div class="formsContainer">
...
</div>
</div>
</div>
补充:如果您确实想知道如何完成您最初要求的问题,解决方案是不要使用display: inline-block
,因为 IE 7 搞砸了。使用float: left; clear: both; display: block;
并确保清除父容器中的浮动。
例如。这是您网站的片段,我将我添加newCSS
的新内容添加到命名空间,您可以使用任何您认为合适的选择器名称
CSS:
.newCSS .clearFloat{
overflow: hidden;
width: auto;
}
.newCSS .inlineBlock {
clear: both;
display: block;
float: left;
}
标记:
<div class="half2 clearFloat newCSS">
<img src="http://www.morgana.nl/siteimages/forms/top.jpg" width="441"
height="12" class="block inlineBlock" alt=""/>
<div class="formsContainer block inlineBlock">
<div class="formsInnerContainer" style="height:474px">
form was here
</div>
</div>
<img src="http://www.morgana.nl/siteimages/forms/bottom.jpg" class="block inlineBlock" alt=""/>
</div>
见小提琴:http: //jsfiddle.net/amyamy86/c34ny/
如果您在 IE7 上查看(它不喜欢 jsFiddle):http: //jsfiddle.net/amyamy86/c34ny/embedded/result/