• ResueltoModerador almendron

    (@almendron)


    PHP: tests con 7.1.x y 7.2.x
    JetPack: 6.8.1
    Wordpress: tests con 4.9.9 and 5.0.2
    Tema: Stargazer 4.0.0

    1) JetPack desactivado o Development Mode (tests en server local): Ver imagen 1.

    2) JetPack activado: el menú desaparece. Ver imagen 2. No importa qué módulos estén activos.

    Hasta ahora, he podido descubrir que el problema guarda relación con «screen-reader-text»:

    El menú no se ve:
    <button class="screen-reader-text"><?php echo hybrid_get_menu_name( 'primary' ); ?></button>

    Si quito la «class» ya funciona:
    <button><?php echo hybrid_get_menu_name( 'primary' ); ?></button>

    ¿Cómo puede afectar que JetPack esté activo para que funcione ese estilo?

    La página con la que necesito ayuda: [accede para ver el enlace]

Viendo 9 respuestas - de la 1 a la 9 (de un total de 9)
  • Moderador almendron

    (@almendron)

    He descubierto que el estilo «.screen-reader-text» del archivo jetpack.css se aplica al «button» en primary.php (archivo del tema) porque el nombre de los estilos es el mismo y eso hace que no se vea.

    Resumiendo: la hoja de estilos de un plugin afecta a los estilos del tema.

    Moderador almendron

    (@almendron)

    Archivo primary.php del tema:

    <button class="screen-reader-text"><?php echo hybrid_get_menu_name( 'primary' ); ?></button>

    Luego resulta que en el archivo jetpack.css del plugin JetPack hay un estilo llamado «screen-reader-text» cuyas propiedades se aplican al «button» con la consecuencia que deja de verse.

    Moderador LGrusin

    (@lgrusin)

    Pienso que es del tema, que ha venido a cantar ahora…

    Igual tiene que ver con esto
    https://make.wordpress.org/core/2017/10/22/changes-to-the-screen-reader-text-css-class-in-wordpress-4-9/

    En tu caso podría ser:

    .screen-reader-text {
    clip-path: none;
    overflow: initial;
    clip: inherit;
    }

    Tendrás que probar.

    • Esta respuesta fue modificada hace 5 años, 4 meses por LGrusin.
    • Esta respuesta fue modificada hace 5 años, 4 meses por LGrusin.
    Moderador almendron

    (@almendron)

    Esa era mi segunda opción. La primera era averiguar porque el estilo de un plugin se aplica a un estilo del tema. Tal vez sea por las características particulares de «screen-reader-text».

    Voy a añadir en la hoja de estilos esa propiedades que son precisamente las que impiden que se vea el menú.

    Moderador LGrusin

    (@lgrusin)

    El tema es de principios de este año 2018, ha llovido mucho después de eso. Supongo que será un daño colateral de esos que se detectan con el paso del tiempo.

    Moderador almendron

    (@almendron)

    .screen-reader-text {
    	clip: inherit;
    	clip-path: none;
    	height: auto;
    	overflow: inherit;
    	width: auto;
    	position: absolute !important;
    }

    Con esto funciona salvo por la «position». Ponga el valor que ponga, no queda bien.

    Creo que directamente voy a quitar lo de

    class="screen-reader-text"

    en

    <button class="screen-reader-text"><?php echo hybrid_get_menu_name( 'primary' ); ?></button>

    No parece que quede afectado por quitarle ese estilo.

    • Esta respuesta fue modificada hace 5 años, 4 meses por almendron.
    Moderador almendron

    (@almendron)

    De todas formas, sigo sin entender como la hoja de estilos de un plugin se aplica a un elemento del tema.

    Moderador almendron

    (@almendron)

    Funciona poniendo en el CSS adicional

    .menu-toggle button {
    	position: relative !important;
    }
    .screen-reader-text {
    	clip: inherit !important;
    	clip-path: none !important;
    	height: auto !important;
    	overflow: inherit !important;
    	width: auto!important;
    }

    Pero esto supongo que afectará a todo y no me gusta la idea de ponerlo allí. Voy a probar a modificar la hoja de estilos del tema. A ver si sigue funcionando.

    Moderador almendron

    (@almendron)

    Pues parece que funciona correctamente. Doy por resuelto el hilo. Gracias @lgrusin

Viendo 9 respuestas - de la 1 a la 9 (de un total de 9)
  • El debate ‘Menú móvil’ está cerrado a nuevas respuestas.