CSS HJJH
CSS HJJH
Índice
1. ¿Que es CSS?
2. Sintaxis básica
4. Selectores
5. Propiedades y valores
6. Pseudoclases - Pseudoelementos
7. Media Queries
8. Flexbox - Grid
9. CSS3
1. ¿Que es CSS?
Las hojas de estilo en cascada (cascading style sheets) o CSS, es un lenguaje creado por W3C que añade
diferentes estilos a documentos HTML o XHTML, dotándolos de formato.
Características:
• Se crearon para separar el contenido de un documento de
su aspecto, lo que permite tener documentos mejor
estructurados y limpios.
• Las hojas de estilos pueden aplicarse a un documento
entero, a una parte o, simplemente a una etiqueta concreta
(se pueden definir varios estilos para una misma etiqueta).
• CSS permite modificar la presentación de los elementos de
un documento HTML sin tener que tocar el código de éste.
• Las versiones de CSS vienen definida por la W3C (World
Wide Web Consortium). Actualmente la última versión es la
3 publicada a finales de 2011.
1
1. ¿Que es CSS?
Con CSS
SIN CSS
Sin CSS
2
2. Sintaxis básica
Todo código CCS se componen de reglas, que están formadas por dos partes muy diferenciadas: selector y
declaración. La regla es la declaración sobre estilo de uno o varios elementos.
Selector Declaración
h2 { color: #0099FF; }
Propiedad Valor
• Selector: Puede ser uno o varios los elementos a los que aplicar la regla CSS. Para definir el estilo de un
selector, se escribe la etiqueta seguida de la lista de declaraciones encerradas entre llaves.
• Declaración: Esta compuesta por dos partes: propiedad y valor, éstas se encuentran separadas por punto
y coma.
o Propiedad: Permite modificar el aspecto de una característica de un selector.
o Valor: Indica la asignación que se hace a la propiedad.
3
2. Sintaxis básica
Otros aspectos a tener en cuenta de las hojas de estilo en cascada o CSS son:
3. Herencias: Al tener los HTML estructura de árbol, los sectores anidados heredan las declaraciones de los
padres.
Puntos Pulgadas Centímetros Pixeles Milímetros Elemento actual Elemento fuente Porcentaje
pt in cm px mm em rem %
4
2. Sintaxis básica
5. Se comporta como una caja: Toda etiqueta HTML se comporta como una caja con su margen, padding,
border, ...
5
3. Formas de aplicar CSS
Existen diferentes formas de aplicar estilos a un documento HTML.
1. Documento externo (Recomendado): Se creará un documento de hojas de estilo, cuya extensión será .css
Para vincular el archivo externo al documento HTML usaremos la etiqueta <link> con sus atributos
correspondientes (va dentro de <head>)
2. Aplicado dentro del propio documento: 3. Estilo aplicado a la etiqueta del documento:
Para ello utilizaremos la etiqueta <style> Se utilizará el atributo style en cada una de las
dentro de la etiqueta <head> etiquetas a las que se le quiera aplicar estilo.
6
4. Selector
Cualquier elemento HTML puede ser un selector, los más utilizados son:
De ID Hijo Adyacente
7
4. Selector
8
4. Selector
9
5. Propiedades y valores (Texto)
Propiedad Valores Descripción
• none (No se aplica ningún estilo al texto)
• line-throguht (Tachado)
text-decoration Decora el texto
• overline/underline (Subrayado superior/inferior)
• wavy overline/wavy underline (Subrayado ondulado superior/inferior)
• Color HEX (Ejemplo: #C2472C)
Cambiar el color del
color • Color RGB (Ejemplo: rgb(255, 0, 0))
texto
• Nombre del color
• center (Centrado)
• justify (Justificado)
text-align Alineación del texto
• left (Alinear a la izquierda, valor por defecto)
• right (Alinear a la derecha.)
• ltr (La dirección del texto va de izquierda a derecha, valor por defecto)
direction Dirección del texto
• rtl (La dirección del texto va de derecha a izquierda)
• none (No realiza ningún tipo de transformación, valor por defecto)
• capitalize (Representa en mayúscula la primera letra de cada palabra) Convierte mayúsculas,
text-transform
• lowercase (Convierte a minúsculas) minúsculas, etc
• uppercase (Convierte a mayúsculas)
10
5. Propiedades y valores (Tipo de letra)
11
5. Propiedades y valores (Fondos y tamaño)
Propiedad Valores Descripción
• transparent (Sin color, valor por defecto)
• Color HEX (Ejemplo: #C2472C)
background-color Color de fondo
• Color RGB (Ejemplo: rgb(255, 0, 0))
• Nombre del color
• none (Sin imagen, valor por defecto)
background-image Imagen de fondo
• Url de la imagen
12
5. Propiedades y valores (Posicionamiento)
Propiedad Valores Descripción
• none (El contenido no flota, valor por defecto)
float • left (Arrastra el elemento hacia la izquierda tanto como sea posible) Posicionamiento flotante
• right (Arrastra el elemento hacia la derecha tanto como sea posible)
• inline (Respecta el flujo por defecto, es decir, coloca la etiqueta tras la
anterior. No le afecta ni la propiedad width ni height).
display • block (Rompe el flujo por defecto y provoca un salto de línea antes y Tipo de caja
después de ésta. Ocupará todo el ancho de la página salvo que se
especifique de otra manera)
• static (Es el valor por defecto. El elemento sigue el flujo normal, las
propiedades top, botton, right, left o z-indez no le afectan).
• absolute (Se comporta como fixed pero en relación a la primera etiqueta
padre que tenga position relative)
position Modo de posicionamiento
• fixed (Siempre estará en la misma posición, se le aplicará las propiedades
top, botton, right, left o z-indez. No le afecta el scroll)
• relative (Similar a static, pero las propiedades top, botton, right, left o z-
indez si le afectan, por lo que se puede modificar su posición)
• Auto Permite posicionar
z-index
• Numero entero elementos que se solapan
13
6. Pseudoclases - Pseudoelementos
A la hora de aplicar propiedades CSS a un archivo HTML, es posible especificar el estado concreto del elemento
seleccionado, para ello se utilizará las pseudoclases, la sintaxis de éstas es:
Ejemplos
Pseudoclase Descripción
:link | :visited Selecciona un link visitado / no visitado.
:hover Selecciona el elemento cuando se pasa el ratón sobre él.
:active Selecciona un link activo.
:focus Seleccione un elemento input cuando éste recibe el foco.
:first-child | :last-child Selecciona el primer/último hijo de un determinado padre.
:nth-child(odd | even | Nº entero) Selecciona los hijos impares/pares/o que ocupan una posición X.
:nth-of-type(odd | even | Nº Selecciona los hijos impares/pares/o que ocupan una posición X
entero) de un determinado tipo.
14
6. Pseudoclases - Pseudoelementos
Si se desea añadir CSS a partes especificas de un determinado elemento, será necesario hacer uso de los
pseudoelementos, la sintaxis de éstos es:
Ejemplos
Pseudoelemento Descripción
::before | ::after Inserta algo antes o después del selector.
::first-letter Selecciona la primera letra de un determinado elemento.
::first-line Selecciona la primera línea de un determinado elemento.
::marker Selecciona el marcador de un determinado elemento de la lista.
Selecciona parte/partes del elemento cuando se seleccionan con el
::selection
ratón.
15
7. Media Queries
Las media queries se utilizan para modificar los elementos HTML en función del tipo de dispositivo o de ciertos
parámetros específicos como son la resolución de la pantalla, el ancho del navegador, ...
Posibles Valores
Posibles Valores
max-width | max-height -> Anchura/altura máxima
mediafeature
all (Todos los dispositivos)
MediaType
16
8. Flexbox - Grid (Flexbox Concepto)
Flexbox es un modulo de CSS que facilita realizar diseños responsive. Flexbox .contenedor-padre {
nos permite modificar el ancho, alto, y posicionamiento de los elementos de display: flex;
la mejor manera posible en el espacio que disponemos. }
Nota: Los flexbox se crean aplicando sobre el contenedor padre la propiedad display: flex
17
8. Flexbox - Grid (Flexbox Propiedades)
.contenedor-padre {
La propiedad justify-direction
display: flex;
especifica la dirección de todos
justify-direction: row | row-reverse | column | columna-reverse;
los elementos.
}
18
8. Flexbox - Grid (Flexbox Propiedades)
.contenedor-padre {
La propiedad flex-wrap determina si los
display: flex;
elementos "hijos" deben estar en una misma
flex-wrap: nowrap |wrap | wrap-reverse;
línea o en varias.
}
19
8. Flexbox - Grid (Flexbox Propiedades)
La propiedad justify-content alinea los elementos del contenedor cuando éstos no utilizan todo el espacio
disponible en el eje principal.
.contenedor-padre {
display: flex;
justify-content: flex-start | flex-end | center | space-between | space-around | space-evenly;
}
20
8. Flexbox - Grid (Flexbox Propiedades)
La propiedad align-items especifica .contenedor-padre {
la alineación predeterminada de los display: flex;
elementos dentro del contenedor align-items: stretch |flex-start | flex-end | center | baseline;
flexible. }
21
8. Flexbox - Grid (Grid Concepto)
.contenedor-padre {
display: grid;
}
Nota: La cuadrícula o rejilla (grid) se crea aplicando sobre el contenedor padre la propiedad display: grid
22
8. Flexbox - Grid (Grid Propiedades)
23
8. Flexbox - Grid (Grid Propiedades)
24
8. Flexbox - Grid (Grid Propiedades)
25
9. CSS3 (Concepto)
CSS3 es la ultima versión publicada de las hojas de estilo en cascada o CSS. En ésta se dota de nuevos estilos y
apariencias a los elementos de un documento HTML, XML,… permitiendo añadir sombras de cajas, transiciones,
esquinas redondeadas, gradientes lineales y radiales, … ahorrando bastante tiempo y mejorando el rendimiento.
Selector Descripción
Selecciona los elementos que tenga dicho
[atributo]
atributo.
Selecciona los elementos que tenga un
[atributo^=“valor”]
atributo que empiece por el valor introducido.
Selecciona los elementos que tenga un
[atributo$=“valor”]
atributo que termine por el valor introducido.
Selecciona los elementos que tenga un
[atributo*=“valor”]
atributo que contengan el valor introducido.
26
9. CSS3 (RGB/RGBA - HSL/HSLA)
CSS3 añade el canal Alpha tanto a RGB como a HSL, este permite definir la transparencia del elemento. Los
valores de este canal están comprendidos entre 0 (transparente) y 1 (opaco).
RGB/RGBA rgba(Red, Green, Blue, Alpha) HSL/HSLA hsla(Hue, Saturation, Lightness, Alpha)
27
9. CSS3 (Gradientes – Esquinas redondeadas)
Gradientes: Es posible crear gradientes tanto
lineales como radiales, se utiliza para ello las
siguientes propiedades:
Esquinas redondeadas: Mediante la propiedad
Propiedad Descripción border-radius es posible redondear las esquinas
Degradado de manera línea con al de un elemento (p, span, div, table, …)
linear-gradient
menos dos colores de arriba abajo.
Degradado de manera línea con al
radial-gradient menos dos colores del centro a los
extremos.
repeating-
Repite un gradiente lineal.
lineal-gradient
repeating-
Repite un gradiente radial.
radial-gradient
28
9. CSS3 (Sombras)
Mediante la propiedad box-shadow se puede crear una sombra sobre un elemento. La sintaxis de esta etiqueta
es:
Valor Descripción
none Valor por defecto que no muestra ningún sombrado.
Valor requerido que introduce desplazamiento horizontal a la sombra, los números positivos representan
h-offset
el lado derecho mientras que los negativos el lado izquierdo.
Valor requerido que introduce desplazamiento vertical a la sombra, los números positivos colocan la
v-offset
sombra debajo mientras que los negativos arriba.
blur Valor opcional que determina el radio de desenfoque, un numero alto representa un mayor desenfoque.
Valor opcional que establece el radio de propagación. Los números positivos aumentan la sombra, los
spread
negativos la disminuyen.
color Valor opcional utilizado para definir el color de la sombra, por defecto es negro.
inset Valor opcional que permite cambiar el sentido de la sombra, ésta pasará del exterior al interior.
29
9. CSS3 (Columnas)
En CSS3 es posible trabajar con columnas de una manera sencilla utilizando para ello la propiedad columns así
como las propiedades que se muestran a continuación:
Propiedad Descripción
column-
Ancho de la columna.
width
column-
Número de columnas.
count
Especifica como se rellenan las columnas, el valor por
column-fill
defecto es balance.
column-gap Separación entre las columnas.
column-rule- Establece el color de la línea de separación entre las
color columnas.
column-rule- Define el estilo de la línea de separación entre las
style columnas.
30
9. CSS3 (Transiciones)
Mediante las transiciones es posible animar propiedades CSS. Las propiedades de éstas son las siguientes:
Propiedad Descripción
transition- Nombre de propiedades o propiedades CSS
property separadas por una coma.
transition-
Duración del efecto en segundo o milisegundos.
duration
Velocidad del efecto, siendo alguno de sus
valores:
• linear: Misma velocidad
transition- • ease: Valor por defecto
timing- • ease-in: Inicio lento
funcion • ease-out: Final de transición lenta.
• ease-in-out: Comienzo y final de
transición lenta.
31
9. CSS3 (Animaciones)
La propiedad animation permite realizar animaciones sobre determinados elementos, ésta es una propiedad
abreviada de las siguientes:
Propiedad Descripción
animation- Especifica el nombre de la animación
name (@keyframes)
animation- Duración de la animación en segundo o
duration milisegundos.
animation- Retardo del inicio de la animación en
delay segundos o milisegundos.
animation-
Número de veces que debe ejecutarse
iteration-
la animación.
count
32
9. CSS3 (Transformaciones)
Gracias a la propiedad transform se puede aplicar una transformación (mover, escalar, rotar, etc.). Alguna de
estas funciones son:
Propiedad Descripción
Transforma el tamaño de un elemento en el
scale(x, y)
plano 2D.
Transforma el tamaño de un elemento en el
scale3d(x, y, z)
plano 3D.
Gira un elemento alrededor de un punto fijo
rotate(ángulo)
en un plano 2D sin deformarlo.
rotate3d Gira un elemento alrededor de un punto fijo
(x,y,z, ángulo) en un plano 3D sin deformarlo.
Sesga un elemento a lo largo del eje X por el
skewX(ángulo)
ángulo dado.
Sesga un elemento a lo largo del eje Y por el
skewY(ángulo)
ángulo dado.
33