Pergunta

Eu tenho alguns dados tabulares com algumas funcionalidades a "ver detalhes" que os incêndios fora de uma chamada de ajax para anexar alguns novos elementos ao DOM (geralmente eu inserir outra TR logo após a linha selecionada e innerHTML ou anexar dentro de um TD com um colspan.

A minha pergunta é esta, no IE6 / 7 minhas colunas Flex. Atualmente eu não ter uma largura "estática" por coluna e queria evitar isso, se possível.

Todas as sugestões para evitar este "flexível"?

Foi útil?

Solução

Este truque aqui é usar a regra table-layout:fixed um tanto esotérico

Use-o assim:

table {table-layout:fixed}

Você também deve especificar a largura das colunas explícitas para os <td>s.

A regra table-layout:fixed diz "As larguras de células desta tabela depender do que eu digo, não no conteúdo real nas células". Isto é útil normalmente porque o navegador pode começar a exibir a tabela depois de ter recebido o primeiro <tr>. Caso contrário, o navegador tem que receber a tabela inteira antes que ele possa calcular as larguras das colunas. No entanto, ele também é útil no seu caso para manter as larguras das colunas absolutos.

Outras dicas

Tabelas redimensionar dinamicamente com base no conteúdo. Essa é a sua natureza. Você pode sempre ler a largura da coluna "natural" da mesa quando ele é processado, em seguida, aplicar um estilo para bloquear em que forma antes de fazer você Ajax chamada.

Quando você diz flexível você redimensionamento média? Lembre-se que se você está alterando nada no DOM e repintar o seu vai agir semelhante a quando se tornado primeiro o item para a página. Os melhores resultados que eu vi com mesas é limpar seu recipiente, construindo a mesa, em seguida, acrescentá-lo ao recipiente.

Se você está falando sobre colunas redimensionando-se porque você não declarou larguras estáticos por meio de uma classe, estilo, ou atributo -., Em seguida, as colunas irá redimensionar-se com base em seu conteúdo

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top