2011-05-17 14 views
7

Parece que Modernizr no funciona en mi sitio web. He agregado los archivos javascript en una carpeta y los he llamado. También agregué no-js al html pero todavía nada.¿Ayuda de Modernizr?

Cuando veo la fuente, no llena el html como debería.

Yo no lo estoy usando para los elementos CSS3 sin embargo, por lo que no necesita ningún estilo de repliegue, sólo quiero ser capaz de utilizar las etiquetas semánticas más como cabecera, de navegación, pie de página, etc ...

Este es mi código de documento:

<!DOCTYPE html> 

<html class="no-js" lang="en"> 
<head> 
    <meta charset=utf-8> 
    <title></title> 
    <!--[if IE]> 
    <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"> 
    </script> 
    <![endif]--> 

    <script type="text/javascript" src="/js/modernizr-1.7.min.js"></script> 
+0

¿Puede proporcionar un enlace a su sitio? ¿Estás tratando de hacerlo localmente? – Duopixel

+0

No, está alojado en un servidor. Lo siento, lamentablemente, no puedo proporcionar un enlace a mi lado, pero puedo publicar el código necesario y editar cualquier cosa. –

+1

Si está utilizando Modernizr, entonces no necesita HTML5Shiv, ya que Modernizr incluye esa funcionalidad. Ver también: http://stackoverflow.com/questions/3855294/html5shiv-vs-dean-edwards-ie7-js-vs-modernizr-which-to-choose/3855343#3855343 – Spudley

Respuesta

5

Es muy probable que sea un problema de ruta. Trate de sustituir temporalmente

<script type="text/javascript" src="/js/modernizr-1.7.min.js"></script> 

Con

<script type="text/javascript" src="http://ajax.cdnjs.com/ajax/libs/modernizr/1.7/modernizr-1.7.min.js"></script> 

O podría estar trabajando, pero no es obvio. Tenga en cuenta que no ve las clases de Modernizr cuando ve la fuente, necesita una herramienta como Firebug en FF o Developer Tools en Chrome para inspeccionar realmente el código post-javascript.

una prueba adicional estaría haciendo algo como ...

.borderradius body { 
    background: #c00; 
} 

Y si el fondo es rojo, entonces Modernizr se está ejecutando.

+0

Hmm, parece estar ejecutándose, verifíquelo en firefox. Confundido ahora ... etiquetas como encabezado y pie de página no funcionan en navegadores que no sean html5. Pensé que el punto en moderizr era que reemplazaría el encabezado con un div para navegadores no compatibles con html5. –

+1

No, su suposición es incorrecta, no reemplaza los elementos HTML5 con divs, simplemente hace lo que hace HTML5shiv, y hace que el navegador, p. IE 8 y siguientes, conscientes de su existencia, los renderiza. –

+0

Mismo principio sin embargo. Tengo etiquetas de encabezado que funcionan perfectamente en los navegadores compatibles con html5 pero en el encabezado ¿no se mostrará o no se mostrará? –

0

No tiene ningún estilo aquí pero quizás no haya definido los elementos HTML5 como pantalla: bloque? Modernizr no hace eso por sí mismo y todavía no obtendrá los resultados que espera si no lo agrega a su CSS.

9

Me metí en este problema yo mismo. Asegúrese de ver la página durante el tiempo de ejecución. Cuando vea el origen de la página, las llamadas js no se ejecutarán y no reemplazará el no-js. Si usa Chrome, use su inspector de elementos.

+0

Esto me hizo tropezar, ¡buen consejo, gracias! – Galaxy

+0

Sí, puede ver todas las clases cuando vea la página en el inspector de elementos de la herramienta de desarrollador chrome –

0

Para el registro tuve este problema también. Después de un largo tiempo de prueba, descubrí que quitar la opción 'Agregar clases de CSS' de la compilación personalizada me estaba causando.