Home Me envie um e-mail! Feed
Blog do yogodoshi

Display:table-row não funciona no IE7, veja aqui a solução

Estava eu fazendo um daqueles botões de rádio que, ao ser selecionado, faz com que outras opções apareçam através de uma div que estava escondida; usando o display:block.

Só que dessa vez, eu precisava usar esse artifício para mostrar uma linha de uma tabela. O que eu fiz? Simplesmente mudei de display:block para display:table-row; o meu código ficou da seguinte maneira:

if (document.getElementById(“deficiente_s”).checked==true) {
document.getElementById(“tr_deficiente”).style.display = “table-row”;
}
else {
document.getElementById(“tr_deficiente”).style.display = “none”;
}
}

Fui checar no Firefox e ficou perfeito mas eis que checo no IE7 e vejo que ele renderiza tudo errado (pra variar). Então após uma breve pesquisa no Google descubro a causa do problema.

O problema é que o Mozilla, como era de se esperar, requer o atributo display:table-row para que o elemento aja como uma linha de tabela; já o Internet Explorer não entende este atributo e vai renderizar elementos como uma linha de tabela apenas se for um <tr> e possuir display:block.

Então, para solucionar um problema como o meu você deve deixar em branco o valor do display; de maneira que o valor apresentado será o valor “default”.

function checaDeficiente() {
if (document.getElementById(“deficiente_s”).checked==true) {
document.getElementById(“tr_deficiente”).style.display = “”;
}
else {
document.getElementById(“tr_deficiente”).style.display = “none”;
}
}

Deixando o display:”", o código funciona de maneira correta tanto no Firefox quanto no IE7. (não me perguntem sobre o IE6 pois eu não quero nem ver)

feed Gostou do Blog?  Assine o RSS Feed ou receba em seu e-mail

Posts Relacionados:
FancyZoom – um lightbox super suave, rápido e clean (sem usar bibliotecas)
Propriedade Vertical-align do CSS não funciona? Erro? Bug?
A solucao para o seu problema e simples, basta formatar a fonte!
O melhor da Semana – Ed. XXXIII
jCarousel – crie o seu carousel de imagens facilmente com JQuery

Felipe diz,

April 17, 2008 @ 4:47 pm

Opa! boa dica hein cara!

é sempre bom receber algo assim…desenvolvo sites também e vira e mexe dá pau…você deve saber né?

mas valeu hein…xD

yogodoshi diz,

April 17, 2008 @ 9:25 pm

É, cada hora a gente descobre um problema novo.
A boa é compartilharmos a solução. =)

Abraços e brigadão pelo elogio no outro post!

Ney Barbosa diz,

April 26, 2008 @ 11:46 pm

Olá!

Desculpa a invasão, mas preciso de um help!

Tenho o seguinte menu:
http://www.centraldommn.ws/menu.php

Funciona direitinho, com um porém: ao colocar o mouse em cima ele some, se mexer com o mouse, não dando tempo de clicar em nada.

Não tenho prática em javascript, por isso não consigo achar o problema.

Os arquivos envolvidos no processo:

http://www.centraldommn.ws/menu.php
http://www.centraldommn.ws/drop_down.js
http://www.centraldommn.ws/style3.css

Grato pela força!

Kelven diz,

May 20, 2008 @ 4:46 pm

E ae kara. Vlw pela dica, me ajudou muito.
Pra varia o IE dando trabalho.
Testei no IE6 e funcionou tbm, blz.
Obrigado!

Fabio Nascimento diz,

June 20, 2008 @ 12:04 am

opa ajudou aqui vlw! =D

fred diz,

April 24, 2009 @ 7:00 pm

Obrigadão!

Fabi diz,

August 28, 2009 @ 12:06 pm

Cara, fiquei ontem o dia inteiro tentando achar a soluçao e era isso. Valeu mesmo!!

Daniel Cavalcante Scalisse diz,

May 18, 2011 @ 4:28 pm

Boa tarde.

Estava com esse problema, e essa solução caiu como uma luva.

Funcionou no mozila 4, Chrome e IE ( 6, 7 e 8).

Obrigado.

Assinar feed RSS de comentários neste post · TrackBack URI

Deixe seu comentário

Fechar
Envie por e-mail