2011-06-28 62 views
0

这里只内1背景图片的div是我有问题:IE显示DIV

我试图使布局作为图片:

http://i53.tinypic.com/szack0.jpg

我当然更喜欢一个div版本,但是我的支持迄今为止都是徒劳的。 我想出了一个表和div的组合,使其在Firefox中工作,但在IE8(可能还有其他IE版本)中,它不显示背景图像2和4.

有关如何制作在IE中工作? PS:没有时间等待CSS3,我已经尝试了怪癖模式,背景显示,但许多其他问题沉浸其中。我宁愿保持'过渡'模式。

HTML:

<table id="middletable" class="bg"> 
<tr><td class="left" width="*"> 
    <table class="bg"> 
     <tr><td id="leftimg">&nbsp;</td></tr> 
    </table> 
</td> 
<td width="84"> 
    <div class="middle"> 
     CONTENT 
    </div> 
</td> 
<td class="right" width="*"> 
    <table class="bg"> 
     <tr><td id="rightimg">&nbsp;</td></tr> 
    </table> 
</td></tr> 
</table> 

CSS:如果我理解正确的,你想要的正文和附近的两个图像

table.bg { 
width: 100%; 
height: 100%; 
border-collapse:collapse; 
} 

#middletable { 
background: #fff; 
} 

#middletable td.left { 
background: url('http://www.budowastrony.pl/fantom/images/site/middle-bg-left-rx.jpg') repeat-x top #ff0000; 
text-align: right; 
vertical-align: top; 
} 

#middletable td.right { 
background: url('http://www.budowastrony.pl/fantom/images/site/middle-bg-right-rx.jpg') repeat-x top #ff0; 
text-align: left; 
vertical-align: top; 
} 

#leftimg { 
height: 100%; width: 100%; 
background: url('http://www.budowastrony.pl/fantom/images/site/bg-middle-left-nr.jpg') no-repeat top right #ccc; 
} 
#rightimg { 
height: 100%; width: 100%; 
background: url('http://www.budowastrony.pl/fantom/images/site/bg-middle-right-nr.jpg') no-repeat top left #000; 
} 
+0

检查此jsfiddle:http://jsfiddle.net/CndUR/(图像替换为颜色 - 如果您可以绝对链接图像,这将帮助其他用户帮助您找到解决方案)。这是布局显示的方式吗?如果此链接表示/重新创建您的问题。发布在你的问题。然后其他SO用户将能够更快地帮助你=) – Dan

+1

嗨Dan,感谢您的帮助,我已经用真实图像更新了图像,与您推荐的jsfiddle相同:http://jsfiddle.net/CndUR/5 /问题仍然存在于IE中。任何帮助将不胜感激谢谢 – Czakalli

+0

您是否尝试过下面提供的任何解决方案? – Dan

回答

0

,有一个固定的宽度,两个梯度绝填写其余的。比起这可能是有益的:http://jsfiddle.net/zxRf3/5/

+0

嗨@Laradda,谢谢你这样做,但确实有效,但问题是我不想强制将#left和#right colums的宽度设置为50px或者smth,因为网站必须在任何屏幕上正确显示1000px +在宽度上,主内容宽度设置为990像素,左右图像为〜300像素 – Czakalli

0

看起来好像左,右图像不显示的原因是因为嵌套table.bg坐在里面td.lefttd.right不具有实际高度。我知道你已将高度设置为100%,但没有实际内容,嵌套表格没有理由展开。

通过将height:100%指定为#middletable td.left#middletable td.right,嵌套表格现在可以实现100%的高度设置。您可以在这个jsfiddle中看到:http://jsfiddle.net/CndUR/7/图像现在正在显示。

我会建议寻找建设你的布局使用CSS,因为你显示的不是表格数据(或似乎不是)。

一个伟大的文章多柱液体布局(虽然老 - 仍然非常好)是由马修泰勒http://matthewjamestaylor.com/blog/perfect-multi-column-liquid-layouts