Prefácio: o projeto da empresa precisa usar um quadro pop-up para centrar verticalmente. Camadas pop-up verticais semelhantes na Internet são semelhantes. Como o projeto é baseado no jQuery, use $ (janela) .Height ()-camada.Height ())/2 +$ (documento) .Scrolltop () para obter o deslocamento vertical. Eu testei todos os tipos de navegadores sem nenhum problema. Depois que o pessoal de segundo plano mudou o valor para o projeto, houve um problema. Quando a página excedeu uma tela, em Chrome e FF, a caixa pop-up não estava centrada verticalmente na tela atual, mas centralizada em relação a toda a página da web.
Depois de revisar as informações de todas as partes, todas as conclusões indicam:
1. Altura da janela, $ (janela) .Height ()
2. Altura do documento, $ (documento) .Height ()
3. A altura do enrolada, $ (janela) .Scrolltop ()
Encontre o motivo : então, descobri que a página do pessoal de back -end não possuía doctype, então no Chrome, $ (janela) .Height () = $ (document) .Height (), $ (document) .Height () significa que quando a altura real da janela não estiver cheia de uma tela, a altura da altura da janela (o valor mudará quando a janela é ampliada. Quando a página excede uma tela, ela é expressa como a altura real de todo o conteúdo da página da web. Não há objeção a isso, e isso não afeta se deve ou não definir o Doctype. No entanto: $ (janela) .Height () está em transição.dtd, independentemente de a altura real do conteúdo da página da web exceder a tela inteira ou não, é igual à altura de toda a janela (o valor mudará quando a janela for aumentada e reduzida). Se Doctype não estiver definido, $ (janela) .Height () = $ (document) .Height (). Ou seja, quando o conteúdo excede uma tela, $ (janela) .Height () é a altura real da página da web, que não é o que se diz ser igual à altura da janela.
Solução:
s Para obter a altura da janela, você só pode fazer alterações correspondentes com base no doctype. Se o Doctype não estiver definido, o seguinte processamento será feito.
if ($ (document) .Height ()> = $ (Window) .Height ()) {_WindowHeight = document.body.clientHeight; } else {// alert ($ (janela) .Height ()); _WindowHeight = $ (document) .Height (); };Quando Doctype está definido como transitional.dtd, WindowHeight = $ (Window) .Height ()
A breve discussão acima sobre o impacto do Doctype sobre o valor de $ (janela) .Height () é todo o conteúdo que compartilho com você. Espero que você possa lhe dar uma referência e espero que você possa apoiar mais o wulin.com.