Clase 4 CSS + Box Modeling
Clase 4 CSS + Box Modeling
CLASE
¿DUDAS DEL ON-BOARDING?
MIRALO AQUI
Clase 04. DESARROLLO WEB
Tipos de
Display
elementos
Posiciones Position
CRONOGRAMA DEL CURSO
Clase 3 Clase 4 Clase 5
<p>
Párrafo con <a href="">enlace</a> <a href="" class="foo">Enlace</a>
</p>
<etiqueta class="foo">
<a href="" id="foo">Enlace</a> <etiqueta class="bar"></etiqueta>
</etiqueta>
SELECCIÓN DE HTML MEDIANTE CSS
Ejemplos
<etiqueta class="foo">
<etiqueta class="foo">
<etiqueta id="foo"></etiqueta>
</etiqueta>
</etiqueta>
<p class="foo">
<a href="" class="bar">Enlace</a>
</p>
LOS NOMBRES DE LAS CLASES E IDS
No es posible crear nombres separados por espacios.
claseDeMaquetacion
conBorde
productosMasVendidos
BEM
BEM
Todos queremos hacer que nuestro código sea más fácil de leer. Esto
nos ayuda a trabajar más rápidamente y de manera eficiente, y cuando
otros trabajen con nosotros podremos mantener claridad y coherencia.
.block__element {
background-color: #FFFFFF;
}
BLOQUE 1
.header__logo {}
.header__tagline {}
.header__searchbar {}
.header__navigation {}
BLOQUE 1
HTML
CSS
BLOQUE 1
No lo pienses demasiado. 🚀
Actualizar el nombre de las clases no debería ser un problema
cuando encuentras una mejor semántica que funcione (sólo
debes tratar de ser consistente, y apegarte a ella).
ELEMENTOS 2
CSS
MODIFICADORES 3
Cuando nombras una clase, la intención es ayudar a que ese elemento
pueda ser repetido, para que no tengas que escribir nuevas clases en
otras áreas del sitio si los elementos de estilo son los mismos.
CSS
.card_button esta bien
nombrada pero un botón
es un componente que
podríamos reutilizar en
otro contexto (carousel,
con un texto, etc).
Ejemplo donde trabajamos con BEM pero que podría ser refinado para poder
reutilizar código más adelante.
Ejemplo donde gracias al uso de BEM vamos a poder hacer reuso de clase.
El código de la slide anterior sería:
BEM
Ventajas Desventajas
● En los elementos de
línea, se verá uno al
lado del otro.
● En cambio en los de
bloque, uno debajo del
otro.
BOX MODEL
👉 Ese concepto de que “todo es una caja”, da lugar a
algo llamado en web como box model.
Valores comunes: unidad (px, porcentaje, rem, viewport) | Ejemplos y más información.
OVERFLOW
Propiedad: overflow
Tiene 4 valores posibles:
● Visible: valor por defecto. El excedente es visible.
● Hidden: el excedente no se muestra (lo corta) → recomendado.
● Scroll: genera una barra de scroll en los dos ejes (x/y) del elemento,
aunque no se necesite.
● Auto: genera el scroll solo en el eje necesario.
Más información sobre Margin | Nota: se pueden resumir los 4 lados poniendo solo “margin: valor”
ESPACIO INTERIOR
Padding (relleno)
Las propiedades padding-top,
padding-right, padding-bottom y
padding-left se utilizan para definir los
espacios internos de cada uno de los
lados del elemento, por separado.
/* forma abreviada */
15px 10px
div {
12px padding: 5px 10px 12px 15px;
}
Más información sobre padding | Nota: se pueden resumir los 4 lados poniendo solo “margin: valor”
¡VAMOS A PRACTICAR LO VISTO!
BORDES
Border
Las propiedades border-top,
border-right, border-bottom, y
border-left se utilizan para definir los
bordes de cada lado del elemento por
separado.
Fuente: https://developer.mozilla.org/es/
TIPOS DE ELEMENTOS
Representación gráfica
TIPOS DE ELEMENTOS
● Los elementos en línea definidos por HTML son aquellos que se
usan para marcar texto, imágenes y formularios.
Ver listado de etiquetas de “en línea”.
li {
display: inline-block;
}
Bloque SI SI SI SI
En línea y SI SI SI SI
bloque
QUITAR UN ELEMENTO
El display tiene también un valor para quitar un elemento del layout display:
none; lo oculta, y además lo quita (no ocupa su lugar).
div {
display: none;
}
¡VAMOS A PRACTICAR LO VISTO!
POSICIONES
POSITION
Es una propiedad CSS pensada para ubicar un elemento, con una libertad muy
flexible. Algunos ejemplos de uso:
● Superponer elementos.
● Crear publicidades que te sigan con el scroll o un menú.
● Hacer un menú con submenú adentro.
1 2 3
Indica desde dónde Determina un
Define qué tipo calcular la distancia (si valor numérico para
de posición será desde arriba, las propiedades
quieres usar. derecha, abajo o top, bottom, left,
izquierda). right.
POSITION
Al aplicar esta propiedad, puedes usar cuatro propiedades para posicionar
los elementos, y debes darles un valor numérico.
Ellas son:
position: relative;
top: 40px;
left: 40px;
}
POSITION: ABSOLUTE
El elemento es removido del flujo normal del documento, sin
crearse espacio alguno para el mismo en el esquema de la página.
position: absolute;
top: 40px;
left: 40px;
}
POSITION: FIXED
Y STICKY
Ambos métodos permiten
que el elemento se
mantenga visible, aunque
se haga scroll.
FIXED
Esta posición es similar a la absoluta, con la excepción de que el
elemento contenedor es el “viewport”, es decir, la ventana del
navegador.
Puede ser usada para crear elementos que floten, y que queden en
la misma posición aunque se haga scroll.
FIXED
CSS Se ve así
div {
width: 300px;
background-color: yellow;
position: fixed;
top: 0;
left: 0;
}
STICKY
El elemento es posicionado en el “flow” natural del documento,
podría decirse que es un valor que funciona de forma híbrida, es
decir, como “relative” y también “fixed”.
Esto es, cuando llega el “viewport” (la ventana del navegador) hasta
donde se encuentra, se “pegará” sobre el borde superior.
STICKY
CSS Se ve así
div {
position: sticky;
top: 20px;
}
MENÚ CON SUBMENÚ
● El position (tanto relative como absolute) se usa, entre otras, para hacer
un menú que tenga un submenú emergente. Los ítems del primero son
relativos, sirven como borde de cualquier hijo.
Por defecto, todos los objetos tienen z-index:1. Si dos objetos tienen el mismo
valor de z-index y se superponen, el que fue creado después en el HTML se verá
encima del otro.
ESTILOS
● Crear un archivo HTML y otro CSS.
● Agregar un estilo de tipografía a un archivo.
¡A PRACTICAR!
Crea un archivo HTML con un elemento párrafo dentro de él, con texto
Lorem Ipsum. Además, crea un archivo CSS y agrégale estilo al párrafo
con los siguientes valores:
- Color de texto: #0033ff
- Indexar una google font a elección.
- Espacio entre renglones: 15px
- Tamaño de texto: 12px
>> Consigna: Aplicar con CSS las propiedades vistas hasta el momento para modificar
textos, encabezados, img, colores, background y box modeling a 1 archivo HTML.
Ejemplo: modificar el valor de los ítems de la lista para que estén ubicados de manera
horizontal de nuestro index.
AGREGANDO CSS A NUESTRO HTML
>>Aspectos a incluir en el entregable: Archivos HTML y CSS en los que asignes los
siguientes estilos: