es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Los elementos de la barra de navegación no permanecen fijos cuando abro el desplegable de exceso.

Prefacio: No estoy preguntando sobre “navbar-fixed-top”.

Estoy tratando de hacer una barra de navegación simple con una altura personalizada.

Código HTML:

<nav class="navbar navbar-expand-md">
    <div class="container-fluid nav-bar">
      <a class="navbar-brand" href="#">Navbar</a>

<pre><code>    <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon">H</span<
    </button>
    <div class="collapse navbar-collapse" id="navbarNavAltMarkup">
      <div class="navbar-nav ms-auto">
        <a class="nav-link" href="#">HOME</a>
        <a class="nav-link" href="#">DESTINATIONS</a>
        <a class="nav-link" href="#">CREW</a>
        <a class="nav-link" href="#">TECHNOLOGIES</a>
      </div>
    </div>

</div>
</code></pre>

</div></nav>

Código CSS:

.navbar {
background-color: orange;
height: 72px !important;
}

Cuando abro el menú de desbordamiento (o “toggler” en el lenguaje de Bootstrap), el “Nav-brand” junto con otros elementos de la barra de navegación se desplazan hacia arriba para mostrar los elementos ocultos.

Algo sobre mí: Acabo de empezar en el desarrollo web, así que sólo sé algunas cosas sobre HTML y CSS. Entiendo que el problema aquí puede estar ocurriendo debido a un script, pero no estoy seguro. Así que avísame si este problema se puede corregir con CSS y cómo. Si no, ¿está relacionado con JavaScript?

He inspeccionado la página en busca de cambios en el relleno o margen cuando abro el menú de hamburguesa, pero no hay cambios, así que estoy un poco sin ideas de qué podría estar pasando aquí.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Parece que el problema de los elementos de la barra de navegación desplazándose hacia arriba al abrir el menú desplegable está relacionado con JavaScript. Específicamente, es causado por la funcionalidad de colapso y expansión de la barra de navegación, que está implementada utilizando el JavaScript incorporado de Bootstrap.

    Para solucionar este problema con CSS, puedes intentar agregar el siguiente estilo a la barra de navegación:

    .navbar-collapse {
        position: absolute;
        top: 72px;
        left: 0;
        right: 0;
    }
    

    Esto posicionará la barra de navegación colapsada a una distancia fija debajo de la parte superior de la pantalla, independientemente de si está expandida o colapsada.

    Sin embargo, esta solución puede causar otros problemas, como que la barra de navegación colapsada se sobreponga a otros contenidos en la página. Por lo tanto, puede ser mejor mantener el comportamiento predeterminado de la barra de navegación de Bootstrap y dejar que los elementos de la barra de navegación se desplacen cuando se abra el menú desplegable.

Comments are closed.