Si has llevado el Curso Práctico de HTML y CSS con el profesor De Granda, que tiene como proyecto clonar el buscador de Google con solo HTML y CSS, y todavía quieres seguir mejorando tu habilidad para clonar páginas web, estás en el tutorial correcto. ✨
Vamos aprender qué es Responsive Design y a convertir nuestro clon del buscador de Google se pueda visualizar en diferentes dispositivos con flexbox, grid y media queries ; teniendo el siguiente resultado:
El diseño web receptivo se trata de usar HTML y CSS para cambiar el tamaño, ocultar, reducir o ampliar automáticamente un sitio web, para que se vea bien en todos los dispositivos (computadoras de escritorio, tabletas y teléfonos).📲💻
Debemos de inspeccionar en el navegador, solo debes hacer click derecho
en nuestra página de clon de Google y click en inspeccionar
o con el comando Ctrl + Shift + I
. 🧐
Comenzaremos haciendo pequeñas mejoras en la etiqueta header
ya que al momento de inspeccionar los tamaños del contenedor mide menos que los elementos esto ocurre debido al margin
y padding
que tiene por defecto la etiqueta ul
. 🔍
Etiquetaul
El margin
y padding
igual a cero para eliminar estilos predeterminados.
ul {
margin: 0;
padding: 0;
}
Etiquetaheader
Se crea la clase header
y declaramos un display: flex
.
.header {
display: flex;
height: 6rem;
width:100%
}
Etiquetanav
Se declara la clase navigator-container
, display: flex
y margin-left: auto
.
.header.navigator-container {
display: flex;
margin-left: auto;
}
Etiquetaul
Cambiamos la clase por navigator-section Cambiamos el CSS, borramos el header y solo nos quedamos con la clase de nav y ul. Le quitamos el width: 25 rem y heigth: auto. Y le damos margin-right: 2.4rem.
.navigator-container.navigator-section {
display: flex;
list-style: none;
justify-content: center;
align-items: center;
margin-right: 2.4rem;
}
Etiquetasli
Previamente habíamos cambiado las etiquetas del nav y nav-right-section por las nuevas clases.
Nos quedamos con solo la clase navigator-section y reemplazamos la etiqueta a por li. Y el color black lo subimos a la etiqueta a.
.navigator-section li {
margin-right: 1rem;
}
a {
text-decoration: none;
cursor: pointer;
color: black;
}
Clasemenu-icon
Borramos la clase de nav(navigator-container)
.navigator-section.menu-icon {
background-image: url('https://static.thenounproject.com/png/756729-200.png');
background-repeat: no-repeat;
background-position: center;
background-size: contain;
width: 2.5rem;
height: 2.5rem;
}
Etiquetaimg
Borramos la clase de nav y también el margin-left.
.navigator-sectionimg {
border-radius: 50%;
}
Etiquetamain
Creemos una clase main Reemplacemos en el css con la nueva clase .main.
.main {
margin-top: 15rem;
text-align: center;
}
Modifiquemos ese margin-top del main y cambiemos por un margin-bottom a la clase header.
.main {
text-align: center;
}
.header {
display: flex;
height: 6rem;
margin-bottom: 15rem;
}
Vamos a borrar esos margin autos pero primero debemos:Borrar el text-align y escribir display: flex y flex-direction:column.
.main {
text-align: center;
}
.main {
display: flex;
flex-direction: column;
}
Clasemain-logo
Cambiar por un display: flex y un justify-conten:center.
.main.main-logo {
display: flex;
justify-content: center;
margin-botttom: 3.5rem;
}
Sección de la barra
Borrar width y margin por display:flex y justify-content.
.main.main-input {
display: flex;
justify-content: center;
margin-bottom: 3.5rem;
}
Secciones de los botones
Borrar el width y margin y reemplazar por display:grid, grid-template-columns y justify-content:center.
.main.main-buttons {
widht: 53rem;
margin: 0 auto;
}
.main.main-buttons {
display: grid;
grid-template-columns: 20rem20rem;
justify-content: center;
}
Borrar los div de la sección de los botones.
"main-buttons">
Buscar con Googlebutton>
Footerul
Borrar el margin: 1em y el padding left.
.footerul {
margin: 1rem;
list-style: none;
displya: flex;
padding-left: 0;
}
.footerul {
list-style: none;
displya: flex;
}
Descomponer
.footerullia {
margin: 1rem;
color: #5f6368;
}
Trabajamos con dos niveles y creamos una clase a las etiquetas a del footer.
.footer-left li{
margin-left: 2rem;
}
.footer-right li{
margin-right: 2rem;
}
.footer-text {
color: #5f6368;
font-size: 1.2rem;
}
768px
@media screen and (max-width:768px){
.footer {
grid-template-columns: 1fr;
height: 8rem;
}
.footer.footer-left {
justify-self:center;
}
.footer.footer-right {
justify-self: center;
}
}
570px
@media screen and (max-width:570px){
.main-logoimg {
width: 25rem;
}
.main.main-input-container {
width: 37.5rem;
}
.main.main-inputinput {
width: 30rem;
}
}
480px
@media screen and (max-width:480px){
.main-logoimg {
width: 20rem;
}
.main.main-input-container {
width: 32.5rem;
}
.main.main-inputinput {
width: 25rem;
}
.main.main-buttons {
visibility: hidden;
}
}
320px
@media screen and (max-width:320px){
.main-logoimg {
width: 18rem;
}
.main.main-input-container {
width: 27rem;
}
.main.main-inputinput {
width: 20rem;
}
}
En este tutorial te ha introducido en temas como Responsive Desing, CSS Flexbox y Grid pero en Platzi puedes profundizar estos temas con los siguientes cursos:
Y recuerda: “Inspirarse es fantástico pero inspirar a otros es mucho mejor”.
#NuncaParesDeAprender 💚