window.innerWidth vs document.documentElement.clientWidth
A respeito dewindow.innerWidth
edocument.documentElement.clientWidth
,
eivindicações do @Webkit (Chrome / Safari)innerWidth
É menor queclientWidth
.
Trident e Presto reivindicaminnerWidth
é maior do queclientWidth
.
Gecko reivindicaçõesinnerWidth
é do mesmo tamanho queclientWidth
.
O que écorrigi comportamentostated by W3C (ou "autoridade" silimar
Script de teste on JSFiddle) (em GoogleHost):
setInterval(function() {
var inner_w = window.innerWidth;
var inner_h = window.innerHeight;
var client_w = document.documentElement.clientWidth;
var client_h = document.documentElement.clientHeight;
var debug_msg = "inner: " + inner_w + "-" + inner_h + "<br>client: " + client_w + "-" + client_h;
document.getElementById("d").innerHTML = debug_msg;
document.title = debug_msg;
document.body.style.background = (client_w === inner_w && client_h === inner_h ? "green" : "red");
}, 60);
<div id="d"></div>
(Execute o snippet em modo de página inteira e des maximizar ou "restaurar" a janela. Observedebug_msg
enquanto arrasta a borda da janela para redimensioná-la.)