Como posso ocultar uma linha de tabela HTML <tr>
para que ela não ocupe espaço? Eu tenho vários <tr>
definidos como style="display:none;"
, mas eles ainda afetam o tamanho da tabela e a borda da tabela reflete as linhas ocultas.
html
css
html-table
MikeN
fonte
fonte
Respostas:
Eu realmente gostaria de ver o estilo do seu TABLE. Por exemplo, "colapso da fronteira"
Apenas um palpite, mas pode afetar como as linhas 'ocultas' estão sendo renderizadas.
fonte
Você pode incluir algum código? Eu adiciono
style="display:none;"
linhas à minha tabela o tempo todo e isso efetivamente oculta toda a linha.fonte
Você pode definir
<tr id="result_tr" style="display: none;">
e mostrar de volta com JavaScript:fonte
Pensei em adicionar a isso uma outra solução potencial:
<tr style='visibility:collapse'><td>stuff</td></tr>
Eu apenas testei no Chrome, mas colocar isso
<tr>
oculta a linha MAIS todas as células dentro da linha ainda contribuem para as larguras das colunas. Às vezes, farei uma linha extra na parte inferior de uma tabela com apenas alguns espaçadores que fazem com que certas colunas não possam ter menos do que uma certa largura e, em seguida, ocultarei a linha usando este método. (Eu sei que você deveria ser capaz de fazer isso com outro css, mas nunca fiz isso funcionar)Novamente, estou em um ambiente puramente cromado, então não tenho ideia de como isso funciona em outros navegadores.
fonte
Se
display: none;
não funcionar, que tal configurar emheight: 0;
vez disso? Em conjunto com uma margem negativa (igual ou maior que a altura das bordas superior e inferior, se houver) para remover ainda mais o elemento? Não creio queposition: absolute; top: 0; left: -4000px;
funcione, mas pode valer a pena tentar.Pela minha parte, usar
display: none
funciona bem.fonte
Adicione algumas das seguintes linhas de altura: 0px; font-size: 0px; height: 0px; margin: 0; padding: 0;
Eu esqueci qual deles faz isso. Acho que é a altura da linha para o IE6.
fonte
Eu estava tendo o mesmo problema, até adicionei style = "display: none" a cada célula.
No final, usei comentários HTML
<!-- [HTML] -->
fonte
Você pode usar o estilo display: none com tr para ocultar e funcionará com todos os navegadores.
fonte
está funcionando perfeitamente para mim ..
fonte
Isso aconteceu comigo e fiquei perplexo com o porquê. Então eu percebi que se eu removesse qualquer nbsp; eu tinha dentro das linhas, então as linhas não ocuparam nenhum espaço.
fonte
Você precisa colocar a mudança do tipo de entrada para oculto, todas as funções dele funcionam, mas não é visível na página
contanto que o tipo de entrada seja definido para que você possa alterar o resto. Boa sorte!!
fonte
Eu estava tendo o mesmo problema e resolvi o problema. O CSS anterior era overflow: hidden; índice z: 999999;
Eu mudo para overflow: visible;
fonte
HTML:
JavaScript:
fonte
position: absolute
irá removê-lo do fluxo de layout e deve resolver seu problema - o elemento permanecerá no DOM, mas não afetará os outros.fonte
opacity: 0
Você pode definir
fonte
visibility: hidden;
o elemento ainda ocupará espaço, essa é a diferença entre as propriedadesvisibility
edisplay
<table><tr style="display: none;"><td></td></tr></table>