WhatsApp

  
Explorando la Búsqueda Oculta
Descubre lo que Hay Detrás del Escenario


En el diseño web moderno, una de las tendencias más populares es la búsqueda oculta. Esta funcionalidad permite mantener una interfaz de usuario limpia y minimalista, mostrando el campo de búsqueda solo cuando el usuario lo necesita. En este blog, aprenderás cómo implementar una búsqueda oculta utilizando HTML, CSS y JavaScrip

¿Qué es una Búsqueda Oculta?

Una búsqueda oculta es un campo de búsqueda que está oculto por defecto y se muestra o expande solo cuando el usuario interactúa con un botón o un ícono. Esta técnica es útil para ahorrar espacio en la pantalla y mejorar la experiencia de usuario.

Estructura HTML

Comenzamos con la estructura básica en HTML:

HTML

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8" />

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

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.14.0/css/all.min.css" integrity="sha512-1PKOgIY59xJ8Co8+NE6FZ+LOAZKjy+KY8iq0G4B3CyeY6wYHN3yt9PW0XpSriVlkMXe40PTKnXrLnZ9+fkDaog==" crossorigin="anonymous" />

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

<title>Hidden Search</title>

</head>

<body>

<div class="search">

<input type="text" class="input" placeholder="Search...">

<button class="btn">

<i class="fas fa-search"></i>

</button>

</div>

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

</body>

</html>


Estilos CSS

El CSS se encarga de la apariencia y la animación de la búsqueda oculta:

CSS

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



* {

box-sizing: border-box;

}

body {

background-image: linear-gradient(90deg, #7d5fff, #7158e2);

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

display: flex;

align-items: center;

justify-content: center;

height: 100vh;

overflow: hidden;

margin: 0;

}

.search {

position: relative;

height: 50px;

}

.search .input {

background-color: #fff;

border: 0;

font-size: 18px;

padding: 15px;

height: 50px;

width: 50px;

transition: width 0.3s ease;

}

.btn {

background-color: #fff;

border: 0;

cursor: pointer;

font-size: 24px;

position: absolute;

top: 0;

left: 0;

height: 50px;

width: 50px;

transition: transform 0.3s ease;

}

.btn:focus,

.input:focus {

outline: none;

}

.search.active .input {

width: 200px;

}

.search.active .btn {

transform: translateX(198px);

}


Funcionalidad con JavaScript

Finalmente, utilizamos JavaScript para manejar la interacción del usuario:

JS

const search = document.querySelector(".search");

const btn = document.querySelector(".btn");

const input = document.querySelector(".input");



btn.addEventListener('click', () => {

search.classList.toggle('active');

input.focus();

});



Lo que logramos hacer es que se vea de la siguiente manera:

 
 


¡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



Sebastian Granados 28 mayo, 2024
Compartir


Iniciar sesión dejar un comentario

  
Diseño Adaptativo vs Diseño Responsivo: Diferencias y Mejores Prácticas