Как скрыть строку таблицы HTML <tr>, чтобы она не занимала места?

Как скрыть строку таблицы HTML <tr>, чтобы она не занимала места? У меня есть несколько <tr>, установленных на style="display:none;", но они все равно влияют на размер таблицы, а граница таблицы отражает скрытые строки.

Ответ 1

Мне бы очень хотелось увидеть ваш стиль TABLE. Например. "Граница коллапс"

Просто догадайтесь, но это может повлиять на то, как отображаются скрытые строки.

Ответ 2

Можете ли вы включить код? Я добавляю style="display:none;" к моим строкам таблицы все время и эффективно скрывает всю строку.

Ответ 3

Вы можете установить <tr id="result_tr" style="display: none;">, а затем отобразить его с помощью JavaScript:

var result_style = document.getElementById('result_tr').style;
result_style.display = 'table-row';

Ответ 4

Если display: none; не работает, как насчет установки height: 0; вместо этого? В сочетании с отрицательной маркой (равной или большей, чем высота верхней и нижней границ, если таковая имеется) для дальнейшего удаления элемента? Я не думаю, что position: absolute; top: 0; left: -4000px; будет работать, но, возможно, стоит попробовать.

Со своей стороны использование display: none отлично работает.

Ответ 5

У меня была такая же проблема, я даже добавил style = "display: none" в каждую ячейку.

В конце я использовал комментарии HTML   <!-- [HTML] -->

Ответ 6

Добавьте некоторые из следующих строк: 0px; font-size: 0px; height: 0px; margin: 0; padding: 0;

Я забываю, кто это делает. Я думаю, что это линейная высота для IE6.

Ответ 7

Это случилось со мной, и я был озадачен тем, почему. Затем я заметил, что если я удалил nbsp; я имел внутри строк, тогда строки не занимали места.

Ответ 8

Вы можете использовать отображение стиля: none с tr, чтобы скрыть, и он будет работать со всеми браузерами.

Ответ 9

var result_style = document.getElementById('result_tr').style;
result_style.display = '';

отлично работает для меня.

Ответ 10

Вам нужно поместить изменение типа ввода в скрытое, все его функции работают, но он не отображается на странице

<input type="hidden" name="" id="" value="">

пока тип ввода настроен на то, что вы можете изменить остальные. Удачи!

Ответ 11

HTML:

<input type="checkbox" id="attraction" checked="checked" onchange="updateMap()">poi.attraction</input>

JavaScript:

function updateMap() {
     map.setOptions({'styles': getStyles() });
} 

function getStyles() {
    var styles = [];
    for (var i=0; i < types.length; i++) {
      var style = {};
      var type = types[i];
      var enabled = document.getElementById(type).checked;
      style['featureType'] = 'poi.' + type;
      style['elementType'] = 'labels';
      style['stylers'] = [{'visibility' : (enabled ? 'on' : 'off') }];
      styles.push(style);
    }
    return styles;
}

Ответ 12

У меня была такая же проблема, и я решил проблему. Раньше css был переполнен: скрыт; Z-индекс: 999999;

Я меняю его на переполнение: visible;

Ответ 13

Вы можете установить

<table>
  <tr style="visibility: hidden"></tr>
</table> 

Ответ 14

position: absolute удалит его из потока макета и решит вашу проблему - элемент останется в DOM, но не повлияет на других.