2012-07-28 2 views
0

Я работаю над таблицей, которую я не могу редактировать, я не могу добавить HTML, я не могу добавить JS. Все было предварительно сгенерировано, и все, что я могу сделать, это добавить CSS к нему.ie7 float table row left не работает

Итак, таблица имеет 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; zoom: 1; * display: inline; '. – Chad

+0

Я не понял вопроса, вы хотите назначить ширину или хотите второй td, кроме 1-го td? –

+0

Я хочу, чтобы один tr находился рядом с другим. По какой-то причине они на 100% больше, чем я говорю. –

ответ

-2

Я думаю, что хороший способ сделать это без второй строки ... Конечно, если вы можете сделать разметку, как это:

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

В этой разметке вам не нужно будет плавать td s, просто укажите ширину. Живой пример здесь: http://jsfiddle.net/skip405/QySz2/1/

Но если вы не можете изменить разметку - Я боюсь, что вы никогда не будете учить IE7 плавать строки таблицы))

+0

Я не могу сказать, что я не могу редактировать HTML. –

0

я не ie7, но установка отображения строк: table-cell; и установка ширины на столе работает в хром в этом примере. http://jsfiddle.net/jalbertbowdenii/7Wuku/

+0

Сотовые дисплеи 1 под другим в IE7 –

+0

meh. вы установили правильную ширину с учетом поля или заполнения? – albert

+0

@albert, вы можете использовать любой дисплей, который хотите, но если вы позже используете 'float: left' или right - вычисленный стиль для такого элемента будет' display: block' - попробуйте проверить плавающий элемент, и вы увидите что свойство 'display: whatever_you_may_put_here' никогда не применяется – skip405