Pergunta

Eu sei que position:fixed; não foi apoiada por IE até IE 7, e só funciona no IE 7 se você tiver um STRICT DOCTYPE.

A minha pergunta é: "Como faço para obtê-lo trabalhar com o IE 7 com TRANSITIONAL DOCTYPE"

Por favor, não sugerem mudar um DOCTYPE, já que esta não respondeu à minha pergunta, obrigado.

Foi útil?

Solução

Você não precisa de um DOCTYPE rigoroso para suporte fixed. Você só precisa de um DOCTYPE que gatilhos Padrões Modo (ou ‘quase normas’). Isso pode ser um doctype de transição, tais como:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

ou XHTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

contanto que o ID do sistema (o URI no final) está incluído.

Se as suas páginas realmente são depender de modo Quirks (ugh!), Me desculpe, mas você não pode usar fixed e terá de recorrer a hacks JavaScript (mas então você pode precisar aqueles para IE6 de qualquer maneira).

Outras dicas

posição fixa não funciona para mim mesmo com os tipos Doc transitórias / Strict. No entanto, estou usando o IE9 em modo de compatibilidade e que é supor para renderizar usando as bibliotecas de tempo de execução do IE8. Para corrigir esse problema eu tive que adicionar o seguinte CSS para elemento.

.elementToBeFixed {
    position: fixed;
    top: 0;
    left: 0;
}

Ele não funciona com superior ou esquerda estar faltando você tem que explicitamente defini-los para zero (ou o seu valor desejado) para que ele funcione em todas as versões do IE .... Escusado será dizer que o IE é uma porcaria.

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