Ir al contenido

IDEAS PRÁCTICAS · ASIMOV INGENIERÍA

Cómo Crear un Generador de Frases

HTML, CSS y JavaScript

Table of contents

No titles in the blog post

Los generadores de frases son herramientas entretenidas que pueden proporcionar inspiración y humor en cualquier momento. En este tutorial, aprenderás a crear un generador de frases utilizando HTML, CSS y JavaScript. Vamos a utilizar una API para obtener chistes de manera dinámica. ¡Empecemos!

Podremos tener el siguiente resultado después de haberte sumergido en este blog.

Computadora portátil con código en un escritorio
Imagen ilustrativa · Christopher Gower / Unsplash.

HTML: Estructura del Contenido

Vamos a comenzar creando el archivo index.html. Este archivo contendrá la estructura básica de nuestro generador de frases.


HTML

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Generador de Frases</title>

    <link rel="stylesheet" href="./style.css">

</head>

<body>

    <div class="container">

        <h3>Don’t Laugh Challenge</h3>

        <div id="joke" class="joke">//Joke goes here</div>

        <button id="jokeBtn" class="btn">Get Another Joke</button>

    </div>

    <script src="./script.js"></script>

</body>

</html>

CSS: Estilo del Contenido

Ahora, vamos a crear el archivo style.css para añadir estilo a nuestra página web.

CSS

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');

* {

    box-sizing: border-box;

}

body {

    background-color: #686de0;

    font-family: 'Roboto', sans-serif;

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: center;

    height: 100vh;

    overflow: hidden;

    margin: 0;

    padding: 20px;

}

.container {

    background-color: #fff;

    border-radius: 10px;

    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1), 0 6px 6px rgba(0, 0, 0, 0.1);

    padding: 50px 20px;

    text-align: center;

    max-width: 100%;

    width: 800px;

}

h3 {

    margin: 0;

    opacity: 0.5;

    letter-spacing: 2px;

}

.joke {

    font-size: 30px;

    letter-spacing: 1px;

    line-height: 40px;

    margin: 50px auto;

    max-width: 600px;

}

.btn {

    background-color: #9f68e0;

    color: #fff;

    border: 0;

    border-radius: 10px;

    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1), 0 6px 6px rgba(0, 0, 0, 0.1);

    padding: 14px 40px;

    font-size: 16px;

    cursor: pointer;

}

.btn:active {

    transform: scale(0.98);

}

.btn:focus {

    outline: 0;

}

JavaScript: Lógica y Funcionalidad

Finalmente, vamos a crear el archivo script.js para manejar la lógica de nuestro generador de frases. Utilizaremos la API de icanhazdadjoke para obtener chistes de manera dinámica.

JS

const jokeE1 = document.getElementById('joke');

const jokeBtn = document.getElementById('jokeBtn');



jokeBtn.addEventListener('click', generateJoke);



generateJoke();



// Usando funciones asincrónicas

async function generateJoke() {

const config = {

headers: {

Accept: 'application/json',

},

};



const res = await fetch('https://icanhazdadjoke.com', config);

const data = await res.json();



jokeE1.innerHTML = data.joke;

}



// Usando .then()

// function generateJoke() {

// const config = {

// headers: {

// Accept: 'application/json',

// },

// };



// fetch('https://icanhazdadjoke.com', config)

// .then((res) => res.json())

// .then((data) => {

// jokeE1.innerHTML = data.joke;

// });

// }


¡Contáctanos!

Si tienes preguntas, aclaraciones, sugerencias de temas o cualquier otra consulta, ¡no dudes en ponerte en contacto con nosotros! Por favor, completa el formulario de contacto disponible en este enlace, y estaremos encantados de ayudarte.

Si quieres acceder a mi GitHub para tener acceso a este código y a muchos más accede en el siguiente link