Modernizr es grande, pero la prueba de ejemplo para position: fixed
es bastante incompleta:posición fija Modernizr prueba incompleta
- IOS 4 y rendimientos más bajos
true
mientras que no soportaposition: fixed
- Opera en Windows devuelve
false
mientras ¿Apoyaposition: fixed
encontré otro ensayo basado en la prueba Modernizr pero con detección iOS añadido: https://gist.github.com/855078/109ded4b4dab65048a1e7b4f4bd94c93cebb26b8. No es realmente una prueba de futuro ya que el próximo iOS 5 es compatible con position: fixed
.
¿Pueden ayudarme a encontrar una forma de verificar la posición de la prueba en iOS sin detectar el navegador?
// Test for position:fixed support
Modernizr.addTest('positionfixed', function() {
var test = document.createElement('div'),
control = test.cloneNode(false),
fake = false,
root = document.body || (function() {
fake = true;
return document.documentElement.appendChild(document.createElement('body'));
}());
var oldCssText = root.style.cssText;
root.style.cssText = 'padding:0;margin:0';
test.style.cssText = 'position:fixed;top:42px';
root.appendChild(test);
root.appendChild(control);
var ret = test.offsetTop !== control.offsetTop;
root.removeChild(test);
root.removeChild(control);
root.style.cssText = oldCssText;
if (fake) {
document.documentElement.removeChild(root);
}
return ret;
});
Hola, estás usando la última versión de Modernizer. Una nueva fue lanzada hoy o ayer, creo, y cubrió esos errores. En cualquier caso, la posición: fija es pobre en los navegadores móviles actuales. – Francisc
Sí, usando Modernizr 2. Aunque no ha cambiado ese ejemplo en la documentación. – DADU
Quise decir como 2.X. Si descargó la biblioteca en los últimos 2-3 días como máximo, es probable que sea un error del Modernizador o uno en su CSS donde mencione que el elemento debe ser reparado (es decir, posición: fijo o positio: fijo, deletreado). – Francisc