Tengo problemas para que mi componente Pie de página aparezca en la parte inferior de la página. Y parece que no puede ver cuál es el problema.
Aquí está mi App.js:
import "./App.css"; import { BrowserRouter as Router, Route, Routes } from "react-router-dom"; import Navbar from "./components/layout/Navbar"; import Landing from "./components/layout/Landing"; import Contact from "./components/layout/Contact"; import Footer from "./components/layout/Footer"; function App() { return ( <Router> <Navbar /> <Routes> <Route path="/" element={<Landing />} /> <Route exact path="/contact" element={<Contact />} /> </Routes> <Footer /> </Router> ); } export default App;Ahora la barra de navegación aparece en la parte superior de la página, sin embargo, el componente de aterrizaje se encuentra detrás de él (también sería excelente un consejo sobre cómo detener eso).
Dentro del componente de aterrizaje tenemos dos componentes como:
import React from "react"; import LandingInner from "../pages/landing/LandingInner"; import LandingCards from "../pages/landing/LandingCards"; const Landing = () => { return ( <section className="landing"> <div className=" dark-overlay"> <LandingInner /> <LandingCards /> </div> </section> ); }; export default Landing;El pie de página aparece en la parte inferior de la página al cargar la página (aparece en la pantalla), sin embargo, no quiero que aparezca en la pantalla a menos que se desplace hacia abajo y debería ser el último componente en cada página a la que vaya. . Al igual que la barra de navegación es siempre la primera.#
Aquí está el css actual para el pie de página:
.footer { border: 5px solid black; position: absolute; left: 0; bottom: 0; right: 0; }Espero que esto tenga sentido. Pero solo para aclarar; Quiero que el pie de página aparezca en la parte inferior de cada página (no en la pantalla) a la que voy en mi aplicación.
En primer lugar, si desea que el pie de página siempre aparezca en la parte inferior sin importar qué, es decir. cuando aparece la barra de desplazamiento y el contenido se desplaza y cuando el contenido es menor y no hay barra de desplazamiento, la solución es muy simple, es decir. fije la posición del pie de página y configúrelo en la parte inferior e izquierda 0 con un ancho del 100%.
Pero si desea que el pie de página vaya al final cuando el contenido es menor y vaya al final del contenido cuando el contenido es lo suficientemente grande como para desplazarse, entonces necesita darle a su cuerpo y altura HTML del 100% con algunos ajustes más que yo puede crear una caja de arena para.
avíseme si esto soluciona el problema, puede preguntarme si necesita más información.
Puede probar flex He escrito código para su referencia y también creé sandbox
https://codesandbox.io/s/empty-cloud-b6h4c?file=/index.html
body, html { height: 100%; } .container { display: flex; flex-flow: column nowrap; height: 100%; } main { flex: 1; } <section class="container"> <main> main content </main> <footer>Some content </footer> </section>