Parece que o :before
e :after
no IE8 têm problemas com a exibição. Se uma classe dá um display: block
e sem ele, o display: none
IE8 não é um campista feliz.
Ele começa a renderizar o novo estilo lentamente (um período de tempo decorre entre a aplicação da classe e sua exibição), enquanto o navegador não está “congelado” como a lentidão normal do CSS faria.
E ao remover a classe, você não pode nem mesmo alterar a visibilidade dos elementos :before
e :after
, embora eles não contenham mais regras para display: block
.
Então o que fazer?
Defina o content
no local onde deseja display: block
. Isso fará com que o elemento seja exibido. Remover a classe fará com que o conteúdo não seja definido e, portanto, o elemento seja oculto.
Sim. Irritante