Un pie de página es un elemento importante del diseño de un sitio web, ya que indica al usuario que ha llegado al final de la página web y proporciona enlaces útiles a otras áreas del sitio web que el usuario puede querer visitar.
Declaración del problema : cree un pie de página receptivo utilizando componentes de estilo React y componentes compuestos.
Requisito previo:
- Conocimientos básicos de npm y comando create-react-app .
- Conocimientos básicos de componentes con estilo.
Configuración básica: comenzará un nuevo proyecto usando create-react-app, así que abra su terminal y escriba:
npx create-react-app react-footer
Ahora vaya a su carpeta de pie de página de reacción escribiendo el comando dado en la terminal:
cd react-footer
Módulo requerido: Instale las dependencias requeridas en este proyecto escribiendo el comando dado en la terminal.
npm install --save styled-components
Ahora cree la carpeta de componentes en src, luego vaya a la carpeta de componentes y cree dos archivos con el nombre Footer.js y FooterStyles.js
Estructura del proyecto: La estructura de archivos en el proyecto se verá así.
Ejemplo: En este ejemplo, diseñaremos un pie de página, para eso necesitaremos manipular el archivo App.js y otros archivos de componentes creados.
Footer.js
import React from "react"; import { Box, Container, Row, Column, FooterLink, Heading, } from "./FooterStyles"; const Footer = () => { return ( <Box> <h1 style={{ color: "green", textAlign: "center", marginTop: "-50px" }}> GeeksforGeeks: A Computer Science Portal for Geeks </h1> <Container> <Row> <Column> <Heading>About Us</Heading> <FooterLink href="#">Aim</FooterLink> <FooterLink href="#">Vision</FooterLink> <FooterLink href="#">Testimonials</FooterLink> </Column> <Column> <Heading>Services</Heading> <FooterLink href="#">Writing</FooterLink> <FooterLink href="#">Internships</FooterLink> <FooterLink href="#">Coding</FooterLink> <FooterLink href="#">Teaching</FooterLink> </Column> <Column> <Heading>Contact Us</Heading> <FooterLink href="#">Uttar Pradesh</FooterLink> <FooterLink href="#">Ahemdabad</FooterLink> <FooterLink href="#">Indore</FooterLink> <FooterLink href="#">Mumbai</FooterLink> </Column> <Column> <Heading>Social Media</Heading> <FooterLink href="#"> <i className="fab fa-facebook-f"> <span style={{ marginLeft: "10px" }}> Facebook </span> </i> </FooterLink> <FooterLink href="#"> <i className="fab fa-instagram"> <span style={{ marginLeft: "10px" }}> Instagram </span> </i> </FooterLink> <FooterLink href="#"> <i className="fab fa-twitter"> <span style={{ marginLeft: "10px" }}> Twitter </span> </i> </FooterLink> <FooterLink href="#"> <i className="fab fa-youtube"> <span style={{ marginLeft: "10px" }}> Youtube </span> </i> </FooterLink> </Column> </Row> </Container> </Box> ); }; export default Footer;
FooterStyles.js
import styled from 'styled-components'; export const Box = styled.div` padding: 80px 60px; background: black; position: absolute; bottom: 0; width: 100%; @media (max-width: 1000px) { padding: 70px 30px; } `; export const Container = styled.div` display: flex; flex-direction: column; justify-content: center; max-width: 1000px; margin: 0 auto; /* background: red; */ ` export const Column = styled.div` display: flex; flex-direction: column; text-align: left; margin-left: 60px; `; export const Row = styled.div` display: grid; grid-template-columns: repeat(auto-fill, minmax(185px, 1fr)); grid-gap: 20px; @media (max-width: 1000px) { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); } `; export const FooterLink = styled.a` color: #fff; margin-bottom: 20px; font-size: 18px; text-decoration: none; &:hover { color: green; transition: 200ms ease-in; } `; export const Heading = styled.p` font-size: 24px; color: #fff; margin-bottom: 40px; font-weight: bold; `;
App.js
import React from 'react'; import Footer from './components/Footer'; function App() { return ( <Footer /> ); } export default App;
Paso para ejecutar la aplicación: ejecute la aplicación utilizando el siguiente comando desde el directorio raíz del proyecto.
npm start
Salida: Ahora abra su navegador y vaya a http://localhost:3000/ , verá la siguiente salida:
Publicación traducida automáticamente
Artículo escrito por gurjotloveparmar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA