2012-07-28 104 views
0

我正在工作的表上,我不能编辑,我不能添加任何HTML,我不能添加任何JS。一切都已经预先生成,我所能做的就是添加CSS。ie7浮动表行左不工作

所以表有2行,一个是侧边栏,第二个是中心内容。我想让侧栏210px宽,并将其左移,与我对内容的中心位置相同。所有的浏览器都能正常工作,但IE7。当我使用IE7开发人员工具检查它时,我可以看到该行和其下的TD始终是100%宽,并且无法为其分配宽度值。

是否有解决此问题的方法?

示例代码。

<table> 
<tr id="sidebar"><td>Some data</td></tr> 
<tr id="main"><td>Some data 2</td></tr> 
</table> 

CSS: 
#sidebar 
{ 
display:block; 
width:210px; 
float:left; 
} 
#main 
{ 
display:block; 
width:730px; 
float:left; 
} 

请告知

+0

尝试'display:inline-block;缩放:1; *显示:内联;'。 – Chad 2012-07-28 15:57:47

+0

我没有明白这个问题,你想分配宽度,或者你想第一个td以外的第二个td? – 2012-07-28 16:02:33

+0

我想让一个tr与另一个相邻。出于某种原因,他们是100%宽,而不是我所说的。 – 2012-07-28 16:04:10

回答

-2

我想这样做的一个很好的方式,它是没有第二行。当然,如果你可以让你的类似这样的标记:

<table> 
    <tr> 
     <td id="sidebar">Sidebar content</td> 
     <td class="main_cont">Main content</td> 
    </tr> 
</table> 

在此标记您不需要浮动td,只需说明宽度即可。 一个活生生的例子是在这里:http://jsfiddle.net/skip405/QySz2/1/

但如果你不能改变的标记 - 恐怕你永远无法教IE7浮动表中的行))

+0

我不能说这些问题说我无法编辑HTML。 – 2012-07-28 16:14:00

0

我没有IE7,但设置行显示:table-cell;在这个例子中,在表格上放置一个宽度。 http://jsfiddle.net/jalbertbowdenii/7Wuku/

+0

单元格在IE7 – 2012-07-28 16:41:57

+0

下面显示1。你有没有设置适当的宽度考虑边距或填充? – albert 2012-07-28 16:46:38

+0

@albert,你可以使用任何你想要的显示,但是如果你稍后使用'float:left'或right - 这个元素的计算样式将是'display:block' - 尝试检查一个浮动元素,你会看到那么'display:whatever_you_may_put_here'属性永远不会被应用 – skip405 2012-07-28 16:51:55