Aquí les dejo un detalle que encontré interesante al momento de escribir el código.
.desktop-menu ul li:not(:last-child) {
font-weight: bold;
}
Un menú desplegable o, lista desplegable, es un elemento de control gráfico que muestra al usuario una variedad de opciones de una categoría que puede elegir para realizar una acción como una compra. Esta tiene dos estados: activa o inactiva. Cuando está inactiva, enseña un solo valor.
A continuación llevaremos a cabo la estructura de lista de opciones que se desplegará del menú de navegación en la versión web de nuestro sitio.
Cómo hacer una lista desplegable en HTML5
Esta sección del menú desktop tiene tres items, que le permitirán al usuario escoger entre: ingresar a su cuenta, ver sus órdenes o salir de la página. Es decir, forman una lista de opciones.
Recuerda que la semántica de HTML5 requiere que los elementos de las listas ( li ) estén dentro de una etiqueta contenedora especial ( ul / ol ).
Por lo tanto, la estructura es la siguiente:
<div class=""desktop-menu""> <ul> <li> <a href=""/"" class=""title"">My orders</a> </li> <li> <a href=""/"">My account</a> </li> <li> <a href=""/"">Sign out</a> </li> </ul> </div>
Puedes emplear este shortcut
Estilos de CSS para listas dentro del menú
Esta vista del menú es como una caja que aparecerá cuando el usuario haga clic en su email. Por ahora, solo maquetaremos, puesto que en el curso de React.js le daremos funcionalidad.
Por lo que, debemos darle dimensiones y espaciado al contenedor.
.desktop-menu { width: 100px; height: auto; border: 1px solid var(--very-light-pink); border-radius: 6px; padding: 20px 20px 0 20px; }
Ahora, le quitamos los estilos por defecto a la lista.
.desktop-menu ul { list-style: none; padding: 0; margin: 0; }
Finalmente, podemos definir la visual como nos especificó diseño.
.desktop-menu ul li { text-align: end; } .desktop-menu ul li:nth-child(1), .desktop-menu ul li:nth-child(2) { font-weight: bold; } .desktop-menu ul li:last-child { padding-top: 20px; border-top: 1px solid var(--very-light-pink); } .desktop-menu ul li:last-child a { color: var(--hospital-green); font-size: var(--sm); } .desktop-menu ul li a { color: var(--back); text-decoration: none; margin-bottom: 20px; display: inline-block; }
Utilizamos display: inline-block para definirle un margin-bottom, puesto que a los elementos inline no es posible aplicarles la propiedad margin.
🙋 ¿Se te ocurre otra forma de llegar al mismo resultado? Comparte tu código en la seccion de aportes y revisa las ideas de tus compañeros y compañeras.
Contribución creada por Guadalupe Monge Barale con los aportes de Fernando Molano Castrillón
Un menú desplegable o, lista desplegable, es un elemento de control gráfico que muestra al usuario una variedad de opciones de una categoría que puede elegir para realizar una acción como una compra. Esta tiene dos estados: activa o inactiva. Cuando está inactiva, enseña un solo valor.
A continuación llevaremos a cabo la estructura de lista de opciones que se desplegará del menú de navegación en la versión web de nuestro sitio.

Esta sección del menú desktop tiene tres items, que le permitirán al usuario escoger entre: ingresar a su cuenta, ver sus órdenes o salir de la página. Es decir, forman una lista de opciones.
Recuerda que la semántica de HTML5 requiere que los elementos de las listas ( li ) estén dentro de una etiqueta contenedora especial ( ul / ol ).
Por lo tanto, la estructura es la siguiente:
<div class=""desktop-menu"">
<ul>
<li>
<a href=""/"" class=""title"">My orders</a>
</li>
<li>
<a href=""/"">My account</a>
</li>
<li>
<a href=""/"">Sign out</a>
</li>
</ul>
</div>
Puedes emplear este shortcut

Esta vista del menú es como una caja que aparecerá cuando el usuario haga clic en su email. Por ahora, solo maquetaremos, puesto que en el curso de React.js le daremos funcionalidad.
Por lo que, debemos darle dimensiones y espaciado al contenedor.
.desktop-menu {
width: 100px;
height: auto;
border: 1px solid var(--very-light-pink);
border-radius: 6px;
padding: 20px 20px 0 20px;
}
Ahora, le quitamos los estilos por defecto a la lista.
.desktop-menu ul {
list-style: none;
padding: 0;
margin: 0;
}
Finalmente, podemos definir la visual como nos especificó diseño.
.desktop-menu ul li {
text-align: end;
}
.desktop-menu ul li:nth-child(1),
.desktop-menu ul li:nth-child(2) {
font-weight: bold;
}
.desktop-menu ul li:last-child {
padding-top: 20px;
border-top: 1px solid var(--very-light-pink);
}
.desktop-menu ul li:last-child a {
color: var(--hospital-green);
font-size: var(--sm);
}
.desktop-menu ul li a {
color: var(--back);
text-decoration: none;
margin-bottom: 20px;
display: inline-block;
}
Utilizamos display: inline-block para definirle un margin-bottom, puesto que a los elementos inline no es posible aplicarles la propiedad margin.
🙋 ¿Se te ocurre otra forma de llegar al mismo resultado? Comparte tu código en la seccion de aportes y revisa las ideas de tus compañeros y compañeras.
Contribución creada por Guadalupe Monge Barale con los aportes de Fernando Molano Castrillón
Aquí les dejo un detalle que encontré interesante al momento de escribir el código.
.desktop-menu ul li:not(:last-child) {
font-weight: bold;
}
Los elementos inline NO se les puede aplicar margin
Para ahorrar tiempo en VSCode:

El resultado:

Yo suelo usar una maqueta para todo mi CSS que es esta:
:root {
--backgroundColor: #ffffff;
--letterColor: #000;
--linksColor: #000;
}
* {
margin: 0%;
padding: 0%;
color: var(--letterColor);
}
body {
background-color: var(--backgroundColor);
}
ul,
li {
text-decoration: none;
list-style: none;
}
a {
text-decoration: none;
color: var(--linksColor);
}
Este archivo lo suelo llamar "basic.css" y lo importo como los import de css así
@import "./basic.css"
Así elimino todos esos estilos que tiene por defecto el navegador, y agrego algunos míos, además de tener mis variables; tal vez le sirva a alguien
No se si alguien se dio cuenta, pero en realidad no llega a usar la variable --black 😅
En Sass

Tuve un error al darle a .desktop-menu un padding de 20px, y me parti la cabeza buscando el problema y al final era:
* {
box-sizing: border-box;
}
Ya que siempre suelo utilizarlo al iniciar los estilos 😅
Hola, noto que el menú cuenta con un pqueño sombreado y quise saber como se lograba esto y se logra mediante box-shadow, me parece un buen aporte y quiero compartirlo.
.desktop-menu{
width: 130px;
height: auto;
border: 1px solid var(--very-light-pink);
border-radius: 6px;
box-shadow: 1px 1px 5px var(--very-light-pink);
padding: 20px;
}
.desktop-menu ul li:last-child a es mas especifico que .desktop-menu ul li a y por eso se aplican estilos propios a ese elemento sin tomar en cuenta los que hay dentro de la clase .desktop-menu ul li a ?
Maquetado de la clase | HTML
.desktop-menu {
width: 100px;
height: auto;
border: 1px solid var(--very-light-pink);
border-radius: 6px;
padding: 20px 20px 0 20px;
}
.desktop-menu ul {
list-style: none;
padding: 0;
margin: 0;
}
.desktop-menu ul li {
text-align: end;
}
.desktop-menu ul li:nth-child(1),
.desktop-menu ul li:nth-child(2) {
font-weight: bold;
}
.desktop-menu ul li:last-child {
padding-top: 20px;
border-top: 1px solid var(--very-light-pink);
}
.desktop-menu ul li:last-child a {
color: var(--hospital-green);
font-size: 12px;
}
.desktop-menu ul li a {
color: var(--black);
margin-bottom: 20px;
display: inline-block;
text-decoration: none;
}