Ao usar tabelas, a altura é essencialmente altura mínima, pois as tabelas sempre se estendem. Basta se livrar do "min-" e ele funcionará como você espera.
Isso é completamente não intuitivo, mas exato. Os melhores resultados parecem surgir colocando a altura "fixa" nos display: table-cellelementos mais internos.
eternicode
4
Não testei no IE, mas parece que o Firefox é o único ainda afetado por isso.
Dex
2
Confirmado que heightfunciona e min-heightnão funciona no Chrome 37, Safari 7 e FF 32 no mac. O IE11 no Win 8.1 oferece o comportamento correto em ambos. jsfiddle.net/nuwcyvwn/1
Stephan Muller
1
Não é verdade. Se eu quiser que uma tabela tenha PELO MENOS 8 polegadas de altura (eu uso css para o controle de impressão) e ela não tiver linhas suficientes para preenchê-la, mas eu tenho um tfoot definido, posso fornecer uma linha espaçadora (com permissão para esticar verticalmente), ao definir altura nas minhas outras linhas para garantir que não o façam e o que obtenho é uma grande lacuna que mantém o meu rodapé onde deveria estar. Funciona muito bem no Chrome, mas não no FF ou no conversor PDf que estou usando; wkhtmltopdf. Sim, a altura funciona, mas não significa a mesma coisa semanticamente que altura mínima.
rainabba
7
Use height: 1px;na mesa ou qualquer valor. Basicamente, você precisa dar à mesa alguma altura para fazê-la funcionar min-height. Ter apenas min-heightnão funcionará em tabelas no firefox.
OP está perguntando como fazê-lo funcionar com o navegador mais recente. Eu apenas dei a ele uma solução. Como não é preciso?
virajs0ni
dê um pouco de altura, como altura: 1px como você disse, então começou a funcionar
Mohamed Hussain
1
Sempre que você estiver usando display:table;ou qualquer propriedade mais profunda como, display:table-cell;considere usar em heightvez de min-height. Como nas tabelas height = min-height considerando o recurso de auto-span nelas.
Respostas:
Ao usar tabelas, a altura é essencialmente altura mínima, pois as tabelas sempre se estendem. Basta se livrar do "min-" e ele funcionará como você espera.
fonte
display: table-cell
elementos mais internos.height
funciona emin-height
não funciona no Chrome 37, Safari 7 e FF 32 no mac. O IE11 no Win 8.1 oferece o comportamento correto em ambos. jsfiddle.net/nuwcyvwn/1Use
height: 1px;
na mesa ou qualquer valor. Basicamente, você precisa dar à mesa alguma altura para fazê-la funcionarmin-height
. Ter apenasmin-height
não funcionará em tabelas no firefox.fonte
Sempre que você estiver usando
display:table;
ou qualquer propriedade mais profunda como,display:table-cell;
considere usar emheight
vez demin-height
. Como nas tabelas height = min-height considerando o recurso de auto-span nelas.fonte
Solução para Firefox
Adicione altura para desbloquear definindo a altura mínima
O número em altura pode ser qualquer outro valor real menor ou igual a altura mínima para fazê-lo funcionar conforme o esperado.
fonte