SlideShare a Scribd company logo
1 of 55
DISEÑO WEB.
Introducción
a HTML5 y
CSS3
PARTE 1
Prf. Bartolomé Palazón Cascales
Índice de contenidos
3. CSS (Cascading Style Sheets):
- VINCULAR UN ARCHIVO CSS Y SINTAXIS DE LA
CSS
- SELECTORES BÁSICOS
- ESTILOS TIPOGRÁFICOS
- ESPECIFICIDAD Y ESTRUCTURA EN LAS HOJAS DE
ESTILO
- SELECTORES AVANZADOS: LAS PSEUDO-CLASES
1. INTRODUCCIÓN:
- LA WEB: HTML, CSS y JavaScrip
- EDITOR DE CÓDIGO: DREAMWEAVER,
ATOM, BRACKETS…
- INSPECTOR Y HERRAMIENTAS DE
NAVEGADOR.
2. ESTRUCTURA HTML:
- LAS ETIQUETAS HTML Y LOS ATRIBUTOS
- ETIQUETAS DE TEXTO
- ETIQUETAS DE BLOQUE
- ETIQUETAS DE DOCUMENTO
2
INTRODUCCIÓN
LA WEB: HTML, CSS Y JS (JavaScrip):
• HTML → ESTRUCTURA Y CONTENIDO
• CSS → HOJAS DE ESTILO. PRESENTACIÓN Y ASPECTO VISUAL
• JAVASCRIP → CAPA DE COMPORTAMIENTO
EDITOR DE CÓDIGO: Herramienta fundamental para hacer una web. Hay muchos
editores de código, como Dreamweaver, SiblimeText, Atom, Brackets…
Nosotros vamos a trabajar con DREAMWEABER
3
INSPECTOR Y HERRAMIENTAS DE DESARROLLADOR.
- Los navegadores actuales cuentan con un inspector que nos permite ver el código
HTML de una página y como están afectando los estilos (CSS) a cada una de sus
partes.
- Se trata de las herramientas de desarrollador que tiene, por ejemplo, Chrome o
Firefox (entre otros), que permiten inspeccionar el código y comprobar que se
está aplicando correctamente.
- CÓMO VISUALIZAR LAS HERRAMIENTAS DE DESARROLLADOR DE GOOGLE
CHROME →
4
5
Clicar sobre la web con el botón derecho e ir a INSPECCIONAR
6
----------------- ELEMENTOS – CÓDIGO HTML ------------------- -- ESTILO – CSS --
7
EDITOR DE CÓDIGO DREAMWEAVER
RECURSOS ADICIONALES:
• Otros editores de código gratuitos:
→ Editor de código Brackets: http://brackets.io/
→ Editor de código Atom: https://atom.io/
ANTES DE EMPEZAR UN PROYECTO:
1º CREAR UNA CARPETA EN EL ESCRITORIO CON EL NOMBRE “WEB” DONDE SE METERÁN TODOS LOS
ARCHIVOS.
2º ABRIR TU EDITOR DE CÓDIGO
8
EDITOR DE CÓDIGO DREAMWEAVER
3º ABRIR UN NUEVO ARCHIVO EN TU EDITOR DE CÓDIGO
4º NOMBRAR ARCHIVO: “INDEX.HTML” y guardar en la carpeta “WEB”. Index.html es el
nombre más común, la primera página que se carga en un dominio.
HTML
9
ESTRUCTURA BASE DE NUESTRA WEB
ESTRUCTURA HTML
HTML es la estructura y la base de nuestra web, el primer archivo que descarga el navegador.
ETIQUETAS HTML Y ATRIBUTOS – ETIQUETAS HTML DE TEXTO
⬡ Los elementos HTML se escriben con los símbolos < >. La mayor parte requieren una
etiqueta de cierre, que se escribe con /. Ejemplo: <etiqueta></etiqueta>.
⬡ Las etiquetas que no necesitan cierre, como <img> o <br>, pueden verse a veces escritas
con la barra al final. Ejemplo: <br />. Esto no es incorrecto, pero tampoco es necesario.
⬡ Algunas etiquetas HTML tienen valor semántico (normalmente relacionado con la
importancia de unas palabras por encima de otras). Esto permite a los navegadores y
buscadores comprender mejor los contenidos e identificar las palabras más relevantes.
10
⬡ Las etiquetas HTML se pueden escribir indistintamente en mayúsculas o minúsculas, aunque lo
habitual es escribirlas en minúsculas. El navegador ignora las tabulaciones y saltos de página, por lo
que podemos emplearlos para dar formato a nuestro código.
⬡ Podemos introducir comentarios en nuestro código (o comentar parte del código y que no se muestre
en el navegador) agrupándolo entre la apertura de comentario:
<!—— y el cierre de comentario: ——> .
⬡ <p></p> Marca un párrafo.
⬡ <br> Marca un salto de línea. No requiere de cierre.
⬡ <h1></h1> Marca un encabezado de primer nivel. Solo puede haber uno por página.
⬡ <h2></h2> Marca un encabezado de segundo nivel.
⬡ <h3></h3> Marca un encabezado de tercer nivel
⬡ <h4></h4> Marca un encabezado de cuarto nivel.
⬡ <h5></h5> Marca un encabezado de quinto nivel.
⬡ <h6></h6> Marca un encabezado de sexto nivel.
11
⬡ <em></em> Etiqueta semántica para hacer énfasis en una palabra en
particular. Normalmente se renderiza como una cursiva.
⬡ <strong></strong> Etiqueta semántica para indicar la relevancia en un texto de
una palabra en particular. Normalmente se renderiza como una negrita.
⬡ <span></span> Etiqueta sin valor semántico que sirve para acotar trozos de
texto.
12
ATRIBUTOS PARA LAS ETIQUETAS HTML
Sintaxis
⬡ Los atributos se escriben en la etiqueta de apertura de un elemento, después
del nombre. Se pueden escribir varios atributos separados por espacios. La
forma de asignar un valor a un atributo es con el símbolo = y el valor entre
comillas. No puede haber espacios entre el atributo y el =, o entre el = y las
comillas.
⬡ class=" " Asigna una o más clases a un elemento HTML. Si hay más de una clase,
se separan con espacios.
⬡ id=" " Asigna un identificador único a un elemento HTML. Un elemento no
puede tener más de un id, y no puede haber dos elementos con el mismo id.
13
ETIQUETAS HTML DE IMÁGENES Y ENLACES
Rutas de archivo
⬡ Cuando hacemos referencia a un archivo (imagen, enlace…), ponemos el nombre del archivo
(con la extensión si la tiene) y la carpeta o carpetas en las que pueda estar respecto al HTML
desde el que se le llama, separadas por / . Si se debe subir uno o varios niveles de carpetas
para acceder al archivo, se indica con dos puntos. Ejemplo: ../../imagenes/elemento.gif
⬡ <img src=" " alt=" "> Etiqueta de imagen. El atributo src indica la ruta del archivo, y el alt es
el texto alternativo.
⬡ <a href=" "></a> Etiqueta de enlace. El atributo href indica la página de destino. Puede ser a
un archivo dentro del propio dominio, o a otro dominio (si es a otro, hay que poner la URL
completa, con http://).
⬡ Un enlace puede ser a una sección de la misma página, marcada con un id. En ese caso, el
href empezará con # y el valor del id.
⬡ Para abrir un enlace en una ventana nueva, añadiremos el atributo target=˝_blank˝ .
14
ETIQUETAS HTML DE BLOQUE
⬡ <div></div> Etiqueta sin valor semántico que nos permite agrupar bloques.
⬡ <ul></ul> Etiqueta de listado no ordenado. Solo puede contener elementos
de lista (<li>).
⬡ <li></li> Etiqueta de elemento de lista. Puede contener cualquier tipo de
elemento html.
⬡ <ol></ol> Etiqueta de listado ordenado. Solo puede contener elementos de
lista (<li>).
15
ETIQUETAS HTML DE DOCUMENTO
⬡ <!DOCTYPE html> Indica al navegador que la web sigue los estándares y debe ser
renderizada como tal. Se pone al principio del documento html y no se cierra.
⬡ <html></html> Etiqueta que engloba el resto del documento.
⬡ <head></head> Etiqueta con información para el navegador diferente del contenido:
título de la página, hoja de estilos, codificado, etc.
⬡ <body></body> Contenido (normalmente texto e imágenes) de la página.
⬡ <title></title> Título de la página, que suele figurar en los resultados de búsqueda o en
la pestaña del navegador.
⬡ <meta charset="utf-8"> Codificación de la página. Se pone dentro de la etiqueta head
para indicar al navegador en qué codificación están los caracteres especiales. La más
habitual y que suelen tener por defecto los editores de código es utf-8.
16
17
CSS
18
HOJAS DE ESTILO EN CASCADA
¿Qué es CSS?
19
CSS es un lenguaje de hojas de estilos creado para controlar el aspecto o presentación de los documentos
electrónicos definidos con HTML y XHTML. CSS es la mejor forma de separar los contenidos y su
presentación y es imprescindible para crear páginas web complejas.
Separar la definición de los contenidos y la definición de su aspecto presenta numerosas ventajas, ya que
obliga a crear documentos HTML/XHTML bien definidos y con significado completo (también llamados
"documentos semánticos"). Además, mejora la accesibilidad del documento, reduce la complejidad de su
mantenimiento y permite visualizar el mismo documento en infinidad de dispositivos diferentes.
Al crear una página web, se utiliza en primer lugar el lenguaje HTML/XHTML para marcar los contenidos,
es decir, para designar la función de cada elemento dentro de la página: párrafo, titular, texto destacado,
tabla, lista de elementos, etc.
Una vez creados los contenidos, se utiliza el lenguaje CSS para definir el aspecto de cada elemento: color,
tamaño y tipo de letra del texto, separación horizontal y vertical entre elementos, posición de cada
elemento dentro de la página, etc.
Breve historia de CSS
20
Las hojas de estilos aparecieron poco después que el lenguaje de etiquetas SGML, alrededor del año 1970.
Desde la creación de SGML, se observó la necesidad de definir un mecanismo que permitiera aplicar de
forma consistente diferentes estilos a los documentos electrónicos.
El gran impulso de los lenguajes de hojas de estilos se produjo con el boom de Internet y el crecimiento
exponencial del lenguaje HTML para la creación de documentos electrónicos. La guerra de navegadores y
la falta de un estándar para la definición de los estilos dificultaban la creación de documentos con la
misma apariencia en diferentes navegadores.
El organismo W3C (World Wide Web Consortium), encargado de crear todos los estándares relacionados
con la web, propuso la creación de un lenguaje de hojas de estilos específico para el lenguaje HTML y se
presentaron nueve propuestas. Las dos propuestas que se tuvieron en cuenta fueron la CHSS (Cascading
HTML Style Sheets) y la SSP (Stream-based Style Sheet Proposal).
La propuesta CHSS fue realizada por Håkon Wium Lie y SSP fue propuesto por Bert Bos. Entre finales de
1994 y 1995 Lie y Bos se unieron para definir un nuevo lenguaje que tomaba lo mejor de cada propuesta y
lo llamaron CSS (Cascading Style Sheets).
21
En 1995, el W3C decidió apostar por el desarrollo y estandarización de CSS y lo añadió a su grupo de trabajo
de HTML.
A finales de 1996, el W3C publicó la primera recomendación oficial, conocida como "CSS nivel 1".A
principios de 1997, el W3C decide separar los trabajos del grupo de HTML en tres secciones: el grupo de
trabajo de HTML, el grupo de trabajo de DOM y el grupo de trabajo de CSS.
El 12 de Mayo de 1998, el grupo de trabajo de CSS publica su segunda recomendación oficial, conocida
como "CSS nivel 2".
La primera revisión de CSS2, usualmente conocida como "CSS 2.1", corrige algunos errores encontrados en
CSS2, elimina funcionalidades poco soportadas o inoperables en los navegadores y añade alguna nueva
especificación.
De acuerdo al sistema de estandarización técnica de las especificaciones, CSS2.1 tuvo el estado de
"candidato" (candidate recommendation) durante varios años, pero la propuesta fue rechazada en junio de
2005. En junio de 2007 fue propuesta una nueva versión candidata y está actualizada en 2009, pero en
diciembre de 2010 fue nuevamente rechazada.
En abril de 2011, CSS 2.1 volvió a ser propuesta como candidata y después de ser revisada por el W3C
Advisory Committee, fue finalmente publicada como recomendación oficial el 7 de junio de 2011.
22
CSS3.1. A diferencia de CSS2, que fue una única especificación que definía varias funcionalidades, CSS3.1
está dividida en varios documentos separados, llamados "módulos".
Cada módulo añade nuevas funcionalidades a las definidas en CSS2, de manera que se preservan las
anteriores para mantener la compatibilidad.
Los trabajos en el CSS3.1, comenzaron a la vez que se publicó la recomendación oficial de CSS2 y los
primeros borradores de CSS3.1 fueron liberados en junio de 1999Debido a la modularización del CSS3.1,
diferentes módulos pueden encontrarse en diferentes estados de su desarrollo de forma que a fechas de
noviembre de 2011, hay alrededor de cincuenta módulos publicados tres de ellos se convirtieron en
recomendaciones oficiales de la W3C en 2011: "Selectores", "Espacios de nombres" y "Color".
Algunos módulos como "Fondos y colores", "Consultas de medios" o "Diseños multicolumna" están en fase
de "candidatos" y considerados como razonablemente estables a finales de 2011 y sus implementaciones en
los diferentes navegadores son señaladas con los prefijos del motor del mismo.
La versión de CSS que utilizan todos los navegadores de hoy en día es CSS 3.1.
Funcionamiento básico de CSS
Antes de la adopción de CSS, los diseñadores de páginas web debían definir el aspecto de cada elemento dentro
de las etiquetas HTML de la página. El siguiente ejemplo muestra una página HTML con estilos definidos sin
utilizar CSS:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Ejemplo de estilos sin CSS</title>
</head>
<body>
<h1><font color="red" face="Arial" size="5">Titular de la página</font></h1>
<p><font color="gray" face="Verdana" size="2">Un párrafo de texto no muy largo.</font></p>
</body>
</html>
23
⬡ El ejemplo anterior utiliza la etiqueta <font> con sus atributos color, face y size para definir el color,
la tipografía y el tamaño del texto de cada elemento del documento.
⬡ El principal problema de esta forma de definir el aspecto de los elementos es el siguiente: si la página
tuviera 50 elementos diferentes, habría que insertar 50 etiquetas <font>. Si el sitio web entero se
compone de 10.000 páginas diferentes, habría que definir 500.000 etiquetas <font>. Como cada
etiqueta <font> tiene 3 atributos, habría que definir 1.5 millones de atributos.
⬡ Por otra parte, el diseño de los sitios web está en constante evolución y es habitual modificar cada
cierto tiempo los colores principales de las páginas o la tipografía utilizada para el texto. Si se emplea
la etiqueta <font>, habría que modificar el valor de 1.5 millones de atributos para modificar el diseño
general del sitio web.
⬡ CSS permite separar los contenidos de la página y su aspecto o presentación.
24
Cómo incluir CSS en un documento HTML
Una de las principales características de CSS es su
flexibilidad y las diferentes opciones que ofrece para
realizar una misma tarea. De hecho, existen tres
opciones para incluir CSS en un documento HTML.
1. Incluir CSS en el mismo documento HTML
⬡ Los estilos se definen en una zona específica del
propio documento HTML. Se emplea la etiqueta
⬡ <style> de HTML y solamente se pueden incluir en la
cabecera del documento (sólo dentro de la sección
<head>).
⬡ Este método se emplea cuando se define un
número pequeño de estilos o cuando se quieren
incluir estilos específicos en una determinada
página HTML que completen los estilos que se
incluyen por defecto en todas las páginas del sitio
web. 25
Ejemplo:
<!DOCTYPE html >
<html >
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1" />
<title>Ejemplo de estilos CSS en el propio
documento</title>
<style type="text/css">
p { color: black; font-family: Verdana; }
</style>
</head>
<body>
<p>Un párrafo de texto.</p>
</body>
</html>
⬡ El principal inconveniente es que si se quiere hacer una
modificación en los estilos definidos, es necesario modificar
todas las páginas que incluyen el estilo que se va a
modificar.
2. Definir CSS en un archivo externo
⬡ En este caso, todos los estilos CSS se incluyen en un archivo de tipo CSS que las páginas HTML enlazan mediante la
etiqueta <link>. Un archivo de tipo CSS no es más que un archivo simple de texto cuya extensión es .css Se pueden
crear todos los archivos CSS que sean necesarios y cada página HTML puede enlazar tantos archivos CSS como
necesite.
⬡ En el siguiente ejemplo, se crea un archivo de texto, se cambia su nombre a estilos.css y se incluye el siguiente
contenido:
26
p { color: black; font-family: Verdana; }
⬡ A continuación, en la página HTML se utiliza la etiqueta <link> para enlazar el archivo CSS externo que tiene los
estilos que va a utilizar la página:
<!DOCTYPE html>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Ejemplo de estilos CSS en un archivo externo</title>
<link rel="stylesheet" type="text/css" href="/css/estilos.css"/>
</head>
<body>
<p>Un párrafo de texto.</p>
</body>
</html>
⬡ Normalmente, la etiqueta <link> incluye cuatro atributos cuando se enlaza un archivo CSS:
▪ rel: indica el tipo de relación que tiene el recurso enlazado (en este caso, el archivo CSS) y la página
HTML. Para los archivos CSS, siempre se utiliza el valor stylesheet
▪ type: indica el tipo de recurso enlazado. Sus valores están estandarizados y para los archivos
CSS su valor siempre es text/css
▪ href: indica la URL del archivo CSS que contiene los estilos. La URL indicada puede ser relativa o
absoluta y puede apuntar a un recurso interno o externo al sitio web.
▪ media: indica el medio en el que se van a aplicar los estilos del archivo CSS. Más adelante se
explican en detalle los medios CSS y su funcionamiento.
⬡ De todas las formas de incluir CSS en las páginas HTML, esta es la más utilizada con mucha diferencia. La
principal ventaja es que se puede incluir un mismo archivo CSS en multitud de páginas HTML, por lo que se
garantiza la aplicación homogénea de los mismos estilos a todas las páginas que forman un sitio web.
⬡ Con este método, el mantenimiento del sitio web se simplifica al máximo, ya que un solo cambio en un solo
archivo CSS permite variar de forma instantánea los estilos de todas las páginas HTML que enlazan ese archivo.
27
⬡ Aunque generalmente se emplea la etiqueta <link> para enlazar los
archivos CSS externos, también se puede utilizar la etiqueta <style>. La
forma alternativa de incluir un archivo CSS externo se muestra a
continuación:
<!DOCTYPE html >
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-
1" />
<title>Ejemplo de estilos CSS en un archivo externo</title>
<style type="text/css" media="screen"> @import '/css/estilos.css';
</style>
</head>
<body>
<p>Un párrafo de texto.</p>
</body>
</html>
⬡ En este caso, para incluir en la página HTML los estilos definidos en archivos CSS
externos se utiliza una regla especial de tipo @import. Las reglas de tipo
@import siempre preceden a cualquier otra regla CSS (con la única excepción de
la regla @charset). 28
⬡ La URL del archivo CSS externo se indica
mediante una cadena de texto encerrada
con comillas simples o dobles o mediante la
palabra reservada url(). De esta forma, las
siguientes reglas @import son equivalentes:
@import '/css/estilos.css';
@import "/css/estilos.css";
@import url('/css/estilos.css');
@import url("/css/estilos.css");
3. Incluir CSS en los elementos HTML
⬡ El último método para incluir estilos CSS en documentos HTML es el peor y el menos utilizado, ya que
tiene los mismos problemas que la utilización de las etiquetas <font>.
⬡ Ejemplo:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Ejemplo de estilos CSS en el propio documento</title>
</head>
<body>
<p style="color: black; font-family: Verdana;">Un párrafo de texto.</p>
</body>
</html>
⬡ Esta forma de incluir CSS directamente en los elementos HTML solamente se utiliza en determinadas
situaciones en las que se debe incluir un estilo muy específico para un solo elemento concreto.
29
GLOSARIO BÁSICO DE TÉRMINOS:
⬡ Los diferentes términos se definen a continuación:
▪ Regla: cada uno de los estilos que componen una hoja de estilos CSS. Cada regla está
compuesta de una parte de "selectores", un símbolo de "llave de apertura" ({), otra parte
denominada "declaraciones" y por último, un símbolo de "llave de cierre" (}).
▪ Selector: indica el elemento o elementos HTML a los que se aplica la regla CSS.
▪ Declaración: especifica los estilos que se aplican a los elementos. Está compuesta por una o
más propiedades CSS.
▪ Propiedad: permite modificar el aspecto de una característica del elemento.
▪ Valor: indica el nuevo valor de la característica modificada en el elemento.
⬡ Un archivo CSS puede contener infinitas reglas CSS, cada regla puede contener infinitos selectores y
cada declaración puede estar formada por un número infinito de pares propiedad/ valor.
30
31
Como resumen, las claves de la CSS son: SELECTOR, PROPIEDAD, VALOR, REGLA y DECLARACIÓN.
Empieza a utilizar CSS (hojas de estilo en cascada)
Para VINCULAR UN ARCHIVO CSS, comenzaremos vinculando una hoja de estilos a nuestro archivo
HTML.
1º Crear en nuestro editor de código DREAMWEAVER*un nuevo documento de CSS { }
2º Guardar este nuevo documento CSS en nuestra carpeta “WEB” (directamente o en subcarpeta estilos)
* (Otros editores de código: pág. 7)
32
3º una hoja de estilos se vincula desde la etiqueta head con la etiqueta link, de
esta manera: <link rel="stylesheet" href="estilos.css">
33
Nombre de nuestro
documento CSS
Dentro de
la etiqueta
<head>
SINTAXIS DE CSS
⬡ La sintaxis de la CSS está fundamentada en selector - propiedad - valor,
agrupando todas las propiedades que afectan al selector entre { } de la
siguiente manera:
selector {
propiedad: valor;
}
⬡ Cada una de las asignaciones de propiedad: valor se finaliza con ;
⬡ Ejemplo:
34
⬡ En CSS, los comentarios se inician con: /* y se finalizan con: */
⬡ En CSS, las mayúsculas y minúsculas son relevantes, por lo que si escribimos
selectores (por ejemplo, una clase) que no coinciden en este sentido, no funcionarán.
⬡ Ejemplo de modificación de tamaño y color a un mismo selector:
h1{
font-size: 30px;
color: red;
}
⬡ Cuando queremos aplicar la misma propiedad a varios selectores se separa por
comas:
h1, h2, h3{
font-size: 24px;
}
35
⬡ Especial atención se debe mostrar a la CASCADA:
∙ Cualquier instrucción que viene más abajo de la hoja de estilos sobreescribe a la
anterior. Por ejemplo:
h1 {font-size: 24px;}
h1 {font-size: 20px;}
∙ Este hecho es muy importante a la hora de aplicar las hojas de estilo.
36
⬡ /* Comentario de CSS */ Tiene la misma función que los comentarios de HTML,
AYUDAR AL DESARROLLADOR.
SELECTORES BÁSICOS
⬡ etiqueta
Una etiqueta HTML se escribe como selector con su nombre, pero sin los signos < >.
Ejemplo: En HTML <p> Un párrafo</p> → En CSS p{
color: purple;
}
⬡ .clase
Una clase se escribe como selector precedida de un punto. Si queremos hacer referencia a una
etiqueta que tiene una clase, escribiremos etiqueta.clase, sin espacios. Lo mismo ocurriría para un
elemento que tenga dos clases: .clase1.clase2, sin espacios.
El nombre de una clase no puede empezar por un número, ni contener espacios o caracteres
especiales (tildes, ñ, ç…).
Ejemplo: En HTML <div class=“contenedor”> → En CSS .contenedor{
<!– Contenido --> color: purple;
</div> }
37
Otros ejemplos:
⬡ Si tenemos dos elementos diferentes con la misma clase se puede ser más específico.
Ejemplo:
<div class= “principal”> </div> EN CSS → div.principal{
<p class= “principal”> </p> color: purple;
}
NOTA: OBSERVA QUE NO SE ESCRIBE CON NINGÚN ESPACIO.
⬡ Como afectar al párrafo que tengo dentro del div con la clase “principal”:
<div class= “principal”> EN CSS → .principal p{
<p></p> color: purple;
</div> }
NOTA: OBSERVA EL ESPACIO QUE QUEDA ENTRE PRINCIPAL Y P. ESE ESPACIO SIGNIFICA HIJO DE,
DESCENCIENTE O EN DEFINITIVA QUE ESTÁ CONTENIDO EN EL ANTERIOR.
38
⬡ #id
El selector de id se escribe precedido de #.El nombre de un id no puede empezar por un número, ni
contener espacios o caracteres especiales (tildes, ñ, ç…). No puede haber dos id iguales en la misma página.
Ejemplo: <div id=“contacto”> En CSS → #contacto{
<! – Contenido --> color: purple;
</div> }
⬡ Selector descendiente
El espacio es un selector en CSS. Por tanto, si escribimos selector [espacio] selector, indicamos que el
segundo elemento es descendiente del primero. HEMOS VISTO UN EJEMPLO EN LOS EJEMPLOS DE LA
PÁGINA ANTERIOR.
⬡ Selector universal *
El * sirve para seleccionar absolutamente todos los elementos HTML. Debe usarse con cuidado.
*{
color: purple;
}
39
ESTILOS TIPOGRÁFICOS
⬡ font-size: valor; Tamaño tipográfico de un elemento. Es una de las pocas propiedades
en CSS que se hereda. Por ejemplo:
UNIDADES DE MEDIDA:
⬡ px
Los píxeles (px) son la unidad de medida más habitual de la web, y la recomendada para
principiantes.
⬡ em
Los em (del tamaño de la M en tipografía) son medidas relativas al font-size heredado.
Inicialmente equivalen a 16px, pero si se aumenta el tamaño tipográfico de un contenedor,
aumentan proporcionalmente. Se recomienda no emplear esta unidad hasta tener un poco
de práctica.
40
⬡ font-weight: peso;
Peso de la tipografía: bold, normal, 200, 300, 400…
⬡ font-style: estilo;
Estilo de la tipografía: italic, normal, oblique…
⬡ text-decoration: decoración;
Decoración de la tipografía (subrayado, tachado…): underline,
line-through, none.
⬡ line-height: valor;
Altura de línea. Si no indicamos unidad, es proporcional al
tamaño tipográfico. Ejemplo: line-height: 1.5;
41
⬡ color: valor;
Color de la tipografía. No confundir con color de fondo, que es la propiedad background-color.
⬡ Palabra clave
CSS tiene varios colores asignados a palabras clave en inglés, como red, orange, black, white o pink.
⬡ Hexadecimal
Los colores hexadecimales se preceden con #, como por ejemplo: #000000 (negro), #FFFFFF (blanco),
#FF0000 (rojo).
⬡ rgb()
La declaración rgb se pone entre paréntesis (sin espacio entre los paréntesis y la palabra rgb), y se
declara de 0 a 255 los valores de rojo, verde y azul. Ejemplo: rgb(255, 0, 0)
⬡ rgba()
La declaración de rgba es similar a rgb, pero se añade un cuarto valor, en base a 1,que indica la
opacidad. Ejemplo: rgba(0, 0, 0, 0.4)
42
COLOR EN CSS
⬡ Palabra clave:
p{
color: hotpink;
}
⬡ Hexadecimal:
p{
color: #FFOOOO;
}
⬡ rgba():
p{
color: rgba(255, 0, 0, 0.4);
}
43
ESTRUCTURA DE LAS HOJAS DE ESTILO
⬡ Organizar nuestra hoja de estilos es fundamental para evitar errores y poder ampliarla o corregirla en un
futuro.
⬡ La posibilidad de incluir todo el código CSS en archivos externos exclusivamente dedicados a contener las
reglas CSS, permite ordenar de forma lógica las reglas, mejorando su legibilidad y facilitando su actualización.
⬡ Las reglas CSS de las hojas de estilos complejas se suelen agrupar según su funcionalidad y se suelen incluir en
el siguiente orden:
▪ Estilos básicos (<body>, tipo de letra por defecto, márgenes de <ul>, <ol> y <li>, etc.)
▪ Estilos de la estructura o layout (anchura, altura y posición de la cabecera, pie de página,
zonas de contenidos, menús de navegación, etc.)
▪ Enlaces (estilos normales, estilos :hover, etc.)
▪ Estilos de cada una de las zonas (elementos de la cabecera, titulares y texto de la zona de
contenidos, enlaces, listas e imágenes de las zonas laterales, etc.)
⬡ Otra característica común de los mejores sitios web es el uso de comentarios CSS para mejorar la estructura de
las hojas de estilos muy largas.
44
45
Texto
Tipografía
⬡ CSS define numerosas propiedades para modificar la apariencia del texto. A pesar de que
no dispone de tantas posibilidades como los lenguajes y programas específicos para crear
documentos impresos, CSS permite aplicar estilos complejos y muy variados al texto de las
páginas web.
⬡ La propiedad básica que define CSS relacionada con la tipografía se denomina color y se
utiliza para establecer el color de la letra.
46
color Color del texto
Valores <color> | inherit
Se aplica a Todos los elementos
Valor inicial Depende del navegador
Descripción Establece el color de letra utilizado para el texto
⬡ Aunque el color por defecto del texto depende del navegador, todos los navegadores principales
utilizan el color negro. Para establecer el color de letra de un texto, se puede utilizar cualquiera de las
cinco formas que incluye CSS para definir un color.
⬡ A continuación se muestran varias reglas CSS que establecen el color del texto de diferentes formas:
⬡ Como el valor de la propiedad color se hereda, normalmente se establece la propiedad color en el
elemento bodypara establecer el color de letra de todos los elementos de la página:
body { color: #777; }
⬡En el ejemplo anterior, todos los elementos de la página muestran el mismo color de letra salvo que
establezcan de forma explícita otro color. La única excepción de este comportamiento son los enlaces
que se crean con la etiqueta <a>. Aunque el color de la letra se hereda de los elementos padre a los
elementos hijo, con los enlaces no sucede lo mismo, por lo que es necesario indicar su color de forma
explícita:
47
h1 { color: #369; }
p { color: black; }
a, span { color: #B1251E; }
div { color: rgb(71, 98, 176); }
⬡ La otra propiedad básica que define CSS relacionada con la tipografía se denomina font-family y
se utiliza para indicar el tipo de letra con el que se muestra el texto.
48
/* Establece el mismo color a todos los elementos de la página salvo los enlaces */
body { color: #777; }
/* Establece el mismo color a todos los elementos de la página, incluyendo los enlaces */
body, a { color: #777; }
font-family Tipo de letra
Valores
(( <nombre_familia> | <familia_generica> ) (,<nombre_familia> |
<familia_generica>)* ) | inherit
Se aplica a Todos los elementos
Valor inicial Depende del navegador
Descripción Establece el tipo de letra utilizado para el texto
⬡ El tipo de letra del texto se puede indicar de dos formas diferentes:
▪ Mediante el nombre de una familia tipográfica: en otras palabras, mediante el
nombre del tipo de letra, como por ejemplo "Arial", "Verdana", "Garamond",etc.
▪ Mediante el nombre genérico de una familia tipográfica: los nombres genéricos no
se refieren a ninguna fuente en concreto, sino que hacen referencia al estilo del
tipo de letra. Las familias genéricas definidas son serif (tipo de letra similar a Times
New Roman), sans-serif (tipo Arial), cursive (tipo Comic Sans), fantasy (tipo Impact)
y monospace (tipo Courier New).
⬡ Los navegadores muestran el texto de las páginas web utilizando los tipos de letra
instalados en el ordenador del propio usuario. De esta forma, si el diseñador indica en la
propiedad font-family que el texto debe mostrarse con un tipo de letra especialmente
raro o rebuscado, casi ningún usuario dispondrá de ese tipo de letra.
49
⬡ Para evitar el problema común de que el usuario no tenga instalada la fuente que quiere
utilizar el diseñador, CSS permite indicar en la propiedad font-family más de un tipo de letra. El
navegador probará en primer lugar con el primer tipo de letra indicado. Si el usuario la tiene
instalada, el texto se muestra con ese tipo de letra.
⬡ Si el usuario no dispone del primer tipo de letra indicado, el navegador irá probando con el
resto de tipos de letra hasta que encuentre alguna fuente que esté instalada en el ordenador
del usuario. Evidentemente, el diseñador no puede indicar para cada propiedad font-family
tantos tipos de letra como posibles fuentes parecidas existan.
⬡ Para solucionar este problema se utilizan las familias tipográficas genéricas. Cuando la
propiedad font-family toma un valor igual a sans-serif, el diseñador no indica al navegador que
debe utilizar la fuente Arial, sino que debe utilizar "la fuente que más se parezca a Arial de
todas las que tiene instaladas el usuario".
50
⬡ Por todo ello, el valor de font-family suele definirse como una lista de tipos de letra
alternativos separados por comas. El último valor de la lista es el nombre de la familia
tipográfica genérica que más se parece al tipo de letra que se quiere utilizar.
⬡ Las listas de tipos de letra más utilizadas son las siguientes:
⬡ Ya que las fuentes que se utilizan en la página deben estar instaladas en el ordenador del usuario,
cuando se quiere disponer de un diseño complejo con fuentes muy especiales, se debe recurrir a
soluciones alternativas.
⬡ La solución más sencilla consiste en crear imágenes en las que se muestra el texto con la fuente
deseada. Esta técnica solamente es viable para textos cortos (por ejemplo los titulares de una página) y
puede ser manual (creando las imágenes una por una) o automática, utilizando JavaScript, PHP y/o CSS.
51
font-family: Arial, Helvetica, sans-serif; font-family: "Times New Roman", Times, serif;
font-family: "Courier New", Courier, monospace;
font-family: Georgia, "Times New Roman", Times, serif;
font-family: Verdana, Arial, Helvetica, sans-serif;
⬡ Otra alternativa es la de la sustitución automática de texto basada en Flash. La técnica más conocida es la
de sIFR, de la que se puede encontrar más información en http://wiki.novemberborn.net/sifr
⬡ Una vez seleccionado el tipo de letra, se puede modificar su tamaño mediante la propiedad font-size.
⬡ Además de todas las unidades de medida relativas y absolutas y el uso de porcentajes, CSS permite
utilizar una serie de palabras clave para indicar el tamaño de letra del texto:
▪ tamaño_absoluto:indica el tamaño de letra de forma absoluta mediante alguna de las siguientes
palabras clave: xx-small, x-small, small, medium,large, x-large, xx-large.
▪ tamaño_relativo:indica de forma relativa el tamaño de letra del texto mediante dos palabras clave
(larger, smaller) que toman como referencia el tamaño de letra del elemento padre.
52
font-size Tamaño de letra
Valores
<tamaño_absoluto> | <tamaño_relativo> | <medida> | <porcentaje>
| inherit
Se aplica a Todos los elementos
Valor inicial medium
Descripción Establece el tamaño de letra utilizado para el texto
⬡ La siguiente imagen muestra una comparación entre los tamaños típicos del texto y las unidades que
más se utilizan:
Comparación visual de las distintas unidades para indicar el tamaño del texto
⬡ CSS recomienda indicar el tamaño del texto en la unidad em o en porcentaje (%). Además, es
habitual indicar el tamaño del texto en puntos (pt) cuando el documento está específicamente diseñado
para imprimirlo.
53
⬡ Por defecto los navegadores asignan los siguientes tamaños a los títulos de sección: <h1> =
large, <h2> = x-large, <h3> = large, <h4> = medium, <h5> = small, <h6> = xx-small.
⬡ Una vez indicado el tipo y el tamaño de letra, es habitual modificar otras características como su anchura
(texto en negrita) y su estilo (texto en cursiva). La propiedad que controla la anchura de la letra es font-
weight.
⬡ Los valores que normalmente se utilizan son normal (el valor por defecto) y bold para los textos en
negrita. El valor normal equivale al valor numérico 400 y el valor bold al valor numérico 700.
54
font-weight Anchura de la letra
Valores
normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 |
900 | inherit
Se aplica a Todos los elementos
Valor inicial normal
Descripción Establece la anchura de la letra utilizada para el texto
SELECTORES AVANZADOS: LAS PSEUDO-CLASES
⬡ Las pseudo-clases hacen referencia a un cambio de estado de un
elemento. El más característico es cuando pasamos el ratón por
encima de un enlace y este cambia de color, se subraya, etc…
⬡ Estas son las pseudo-clases:
∙ elemento:hover Selector para el estado en el que se pasa el
ratón por encima del elemento.
∙ elemento:active Selector para cuando un elemento
(normalmente un enlace o un botón) está siendo activado.
∙ elemento:visited Selector de un enlace que ya ha sido
visitado por el usuario.
∙ elemento:focus Selector para cuando un elemento (un
enlace, botón o campo de formulario) tiene el foco,
mediante cursor o tabulador.
55

More Related Content

Similar to DISEÑO WEB 2020-2021 - 1ª PARTE (20)

Diseño
DiseñoDiseño
Diseño
 
Html
HtmlHtml
Html
 
Html presentacion
Html presentacionHtml presentacion
Html presentacion
 
Lenguajes de programacion
Lenguajes de programacionLenguajes de programacion
Lenguajes de programacion
 
Html geraly fernanda cabrera aldana
Html geraly fernanda cabrera aldanaHtml geraly fernanda cabrera aldana
Html geraly fernanda cabrera aldana
 
Html y HTML5
Html y HTML5Html y HTML5
Html y HTML5
 
Diferencia entre html y xml
Diferencia  entre html y xmlDiferencia  entre html y xml
Diferencia entre html y xml
 
Html y xml
Html y xmlHtml y xml
Html y xml
 
Html
HtmlHtml
Html
 
Taller 1 mariana barreto
Taller 1 mariana barretoTaller 1 mariana barreto
Taller 1 mariana barreto
 
danny
dannydanny
danny
 
Curso de diseño CSS
Curso de diseño CSSCurso de diseño CSS
Curso de diseño CSS
 
Introduccion historia css
Introduccion historia cssIntroduccion historia css
Introduccion historia css
 
Tutor javawebparte2
Tutor javawebparte2Tutor javawebparte2
Tutor javawebparte2
 
XHTML
XHTMLXHTML
XHTML
 
Html, Css y JavaScript
Html, Css y JavaScriptHtml, Css y JavaScript
Html, Css y JavaScript
 
HTML.ppt
HTML.pptHTML.ppt
HTML.ppt
 
Presentación de html, css y javascript.
Presentación  de html, css y javascript.Presentación  de html, css y javascript.
Presentación de html, css y javascript.
 
HTML y CSS
HTML y CSSHTML y CSS
HTML y CSS
 
Html
HtmlHtml
Html
 

Recently uploaded

EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxPryhaSalam
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfMaritzaRetamozoVera
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 

Recently uploaded (20)

EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 

DISEÑO WEB 2020-2021 - 1ª PARTE

  • 1. DISEÑO WEB. Introducción a HTML5 y CSS3 PARTE 1 Prf. Bartolomé Palazón Cascales
  • 2. Índice de contenidos 3. CSS (Cascading Style Sheets): - VINCULAR UN ARCHIVO CSS Y SINTAXIS DE LA CSS - SELECTORES BÁSICOS - ESTILOS TIPOGRÁFICOS - ESPECIFICIDAD Y ESTRUCTURA EN LAS HOJAS DE ESTILO - SELECTORES AVANZADOS: LAS PSEUDO-CLASES 1. INTRODUCCIÓN: - LA WEB: HTML, CSS y JavaScrip - EDITOR DE CÓDIGO: DREAMWEAVER, ATOM, BRACKETS… - INSPECTOR Y HERRAMIENTAS DE NAVEGADOR. 2. ESTRUCTURA HTML: - LAS ETIQUETAS HTML Y LOS ATRIBUTOS - ETIQUETAS DE TEXTO - ETIQUETAS DE BLOQUE - ETIQUETAS DE DOCUMENTO 2
  • 3. INTRODUCCIÓN LA WEB: HTML, CSS Y JS (JavaScrip): • HTML → ESTRUCTURA Y CONTENIDO • CSS → HOJAS DE ESTILO. PRESENTACIÓN Y ASPECTO VISUAL • JAVASCRIP → CAPA DE COMPORTAMIENTO EDITOR DE CÓDIGO: Herramienta fundamental para hacer una web. Hay muchos editores de código, como Dreamweaver, SiblimeText, Atom, Brackets… Nosotros vamos a trabajar con DREAMWEABER 3
  • 4. INSPECTOR Y HERRAMIENTAS DE DESARROLLADOR. - Los navegadores actuales cuentan con un inspector que nos permite ver el código HTML de una página y como están afectando los estilos (CSS) a cada una de sus partes. - Se trata de las herramientas de desarrollador que tiene, por ejemplo, Chrome o Firefox (entre otros), que permiten inspeccionar el código y comprobar que se está aplicando correctamente. - CÓMO VISUALIZAR LAS HERRAMIENTAS DE DESARROLLADOR DE GOOGLE CHROME → 4
  • 5. 5 Clicar sobre la web con el botón derecho e ir a INSPECCIONAR
  • 6. 6 ----------------- ELEMENTOS – CÓDIGO HTML ------------------- -- ESTILO – CSS --
  • 7. 7 EDITOR DE CÓDIGO DREAMWEAVER RECURSOS ADICIONALES: • Otros editores de código gratuitos: → Editor de código Brackets: http://brackets.io/ → Editor de código Atom: https://atom.io/ ANTES DE EMPEZAR UN PROYECTO: 1º CREAR UNA CARPETA EN EL ESCRITORIO CON EL NOMBRE “WEB” DONDE SE METERÁN TODOS LOS ARCHIVOS. 2º ABRIR TU EDITOR DE CÓDIGO
  • 8. 8 EDITOR DE CÓDIGO DREAMWEAVER 3º ABRIR UN NUEVO ARCHIVO EN TU EDITOR DE CÓDIGO 4º NOMBRAR ARCHIVO: “INDEX.HTML” y guardar en la carpeta “WEB”. Index.html es el nombre más común, la primera página que se carga en un dominio.
  • 10. ESTRUCTURA HTML HTML es la estructura y la base de nuestra web, el primer archivo que descarga el navegador. ETIQUETAS HTML Y ATRIBUTOS – ETIQUETAS HTML DE TEXTO ⬡ Los elementos HTML se escriben con los símbolos < >. La mayor parte requieren una etiqueta de cierre, que se escribe con /. Ejemplo: <etiqueta></etiqueta>. ⬡ Las etiquetas que no necesitan cierre, como <img> o <br>, pueden verse a veces escritas con la barra al final. Ejemplo: <br />. Esto no es incorrecto, pero tampoco es necesario. ⬡ Algunas etiquetas HTML tienen valor semántico (normalmente relacionado con la importancia de unas palabras por encima de otras). Esto permite a los navegadores y buscadores comprender mejor los contenidos e identificar las palabras más relevantes. 10
  • 11. ⬡ Las etiquetas HTML se pueden escribir indistintamente en mayúsculas o minúsculas, aunque lo habitual es escribirlas en minúsculas. El navegador ignora las tabulaciones y saltos de página, por lo que podemos emplearlos para dar formato a nuestro código. ⬡ Podemos introducir comentarios en nuestro código (o comentar parte del código y que no se muestre en el navegador) agrupándolo entre la apertura de comentario: <!—— y el cierre de comentario: ——> . ⬡ <p></p> Marca un párrafo. ⬡ <br> Marca un salto de línea. No requiere de cierre. ⬡ <h1></h1> Marca un encabezado de primer nivel. Solo puede haber uno por página. ⬡ <h2></h2> Marca un encabezado de segundo nivel. ⬡ <h3></h3> Marca un encabezado de tercer nivel ⬡ <h4></h4> Marca un encabezado de cuarto nivel. ⬡ <h5></h5> Marca un encabezado de quinto nivel. ⬡ <h6></h6> Marca un encabezado de sexto nivel. 11
  • 12. ⬡ <em></em> Etiqueta semántica para hacer énfasis en una palabra en particular. Normalmente se renderiza como una cursiva. ⬡ <strong></strong> Etiqueta semántica para indicar la relevancia en un texto de una palabra en particular. Normalmente se renderiza como una negrita. ⬡ <span></span> Etiqueta sin valor semántico que sirve para acotar trozos de texto. 12
  • 13. ATRIBUTOS PARA LAS ETIQUETAS HTML Sintaxis ⬡ Los atributos se escriben en la etiqueta de apertura de un elemento, después del nombre. Se pueden escribir varios atributos separados por espacios. La forma de asignar un valor a un atributo es con el símbolo = y el valor entre comillas. No puede haber espacios entre el atributo y el =, o entre el = y las comillas. ⬡ class=" " Asigna una o más clases a un elemento HTML. Si hay más de una clase, se separan con espacios. ⬡ id=" " Asigna un identificador único a un elemento HTML. Un elemento no puede tener más de un id, y no puede haber dos elementos con el mismo id. 13
  • 14. ETIQUETAS HTML DE IMÁGENES Y ENLACES Rutas de archivo ⬡ Cuando hacemos referencia a un archivo (imagen, enlace…), ponemos el nombre del archivo (con la extensión si la tiene) y la carpeta o carpetas en las que pueda estar respecto al HTML desde el que se le llama, separadas por / . Si se debe subir uno o varios niveles de carpetas para acceder al archivo, se indica con dos puntos. Ejemplo: ../../imagenes/elemento.gif ⬡ <img src=" " alt=" "> Etiqueta de imagen. El atributo src indica la ruta del archivo, y el alt es el texto alternativo. ⬡ <a href=" "></a> Etiqueta de enlace. El atributo href indica la página de destino. Puede ser a un archivo dentro del propio dominio, o a otro dominio (si es a otro, hay que poner la URL completa, con http://). ⬡ Un enlace puede ser a una sección de la misma página, marcada con un id. En ese caso, el href empezará con # y el valor del id. ⬡ Para abrir un enlace en una ventana nueva, añadiremos el atributo target=˝_blank˝ . 14
  • 15. ETIQUETAS HTML DE BLOQUE ⬡ <div></div> Etiqueta sin valor semántico que nos permite agrupar bloques. ⬡ <ul></ul> Etiqueta de listado no ordenado. Solo puede contener elementos de lista (<li>). ⬡ <li></li> Etiqueta de elemento de lista. Puede contener cualquier tipo de elemento html. ⬡ <ol></ol> Etiqueta de listado ordenado. Solo puede contener elementos de lista (<li>). 15
  • 16. ETIQUETAS HTML DE DOCUMENTO ⬡ <!DOCTYPE html> Indica al navegador que la web sigue los estándares y debe ser renderizada como tal. Se pone al principio del documento html y no se cierra. ⬡ <html></html> Etiqueta que engloba el resto del documento. ⬡ <head></head> Etiqueta con información para el navegador diferente del contenido: título de la página, hoja de estilos, codificado, etc. ⬡ <body></body> Contenido (normalmente texto e imágenes) de la página. ⬡ <title></title> Título de la página, que suele figurar en los resultados de búsqueda o en la pestaña del navegador. ⬡ <meta charset="utf-8"> Codificación de la página. Se pone dentro de la etiqueta head para indicar al navegador en qué codificación están los caracteres especiales. La más habitual y que suelen tener por defecto los editores de código es utf-8. 16
  • 17. 17
  • 19. ¿Qué es CSS? 19 CSS es un lenguaje de hojas de estilos creado para controlar el aspecto o presentación de los documentos electrónicos definidos con HTML y XHTML. CSS es la mejor forma de separar los contenidos y su presentación y es imprescindible para crear páginas web complejas. Separar la definición de los contenidos y la definición de su aspecto presenta numerosas ventajas, ya que obliga a crear documentos HTML/XHTML bien definidos y con significado completo (también llamados "documentos semánticos"). Además, mejora la accesibilidad del documento, reduce la complejidad de su mantenimiento y permite visualizar el mismo documento en infinidad de dispositivos diferentes. Al crear una página web, se utiliza en primer lugar el lenguaje HTML/XHTML para marcar los contenidos, es decir, para designar la función de cada elemento dentro de la página: párrafo, titular, texto destacado, tabla, lista de elementos, etc. Una vez creados los contenidos, se utiliza el lenguaje CSS para definir el aspecto de cada elemento: color, tamaño y tipo de letra del texto, separación horizontal y vertical entre elementos, posición de cada elemento dentro de la página, etc.
  • 20. Breve historia de CSS 20 Las hojas de estilos aparecieron poco después que el lenguaje de etiquetas SGML, alrededor del año 1970. Desde la creación de SGML, se observó la necesidad de definir un mecanismo que permitiera aplicar de forma consistente diferentes estilos a los documentos electrónicos. El gran impulso de los lenguajes de hojas de estilos se produjo con el boom de Internet y el crecimiento exponencial del lenguaje HTML para la creación de documentos electrónicos. La guerra de navegadores y la falta de un estándar para la definición de los estilos dificultaban la creación de documentos con la misma apariencia en diferentes navegadores. El organismo W3C (World Wide Web Consortium), encargado de crear todos los estándares relacionados con la web, propuso la creación de un lenguaje de hojas de estilos específico para el lenguaje HTML y se presentaron nueve propuestas. Las dos propuestas que se tuvieron en cuenta fueron la CHSS (Cascading HTML Style Sheets) y la SSP (Stream-based Style Sheet Proposal). La propuesta CHSS fue realizada por Håkon Wium Lie y SSP fue propuesto por Bert Bos. Entre finales de 1994 y 1995 Lie y Bos se unieron para definir un nuevo lenguaje que tomaba lo mejor de cada propuesta y lo llamaron CSS (Cascading Style Sheets).
  • 21. 21 En 1995, el W3C decidió apostar por el desarrollo y estandarización de CSS y lo añadió a su grupo de trabajo de HTML. A finales de 1996, el W3C publicó la primera recomendación oficial, conocida como "CSS nivel 1".A principios de 1997, el W3C decide separar los trabajos del grupo de HTML en tres secciones: el grupo de trabajo de HTML, el grupo de trabajo de DOM y el grupo de trabajo de CSS. El 12 de Mayo de 1998, el grupo de trabajo de CSS publica su segunda recomendación oficial, conocida como "CSS nivel 2". La primera revisión de CSS2, usualmente conocida como "CSS 2.1", corrige algunos errores encontrados en CSS2, elimina funcionalidades poco soportadas o inoperables en los navegadores y añade alguna nueva especificación. De acuerdo al sistema de estandarización técnica de las especificaciones, CSS2.1 tuvo el estado de "candidato" (candidate recommendation) durante varios años, pero la propuesta fue rechazada en junio de 2005. En junio de 2007 fue propuesta una nueva versión candidata y está actualizada en 2009, pero en diciembre de 2010 fue nuevamente rechazada. En abril de 2011, CSS 2.1 volvió a ser propuesta como candidata y después de ser revisada por el W3C Advisory Committee, fue finalmente publicada como recomendación oficial el 7 de junio de 2011.
  • 22. 22 CSS3.1. A diferencia de CSS2, que fue una única especificación que definía varias funcionalidades, CSS3.1 está dividida en varios documentos separados, llamados "módulos". Cada módulo añade nuevas funcionalidades a las definidas en CSS2, de manera que se preservan las anteriores para mantener la compatibilidad. Los trabajos en el CSS3.1, comenzaron a la vez que se publicó la recomendación oficial de CSS2 y los primeros borradores de CSS3.1 fueron liberados en junio de 1999Debido a la modularización del CSS3.1, diferentes módulos pueden encontrarse en diferentes estados de su desarrollo de forma que a fechas de noviembre de 2011, hay alrededor de cincuenta módulos publicados tres de ellos se convirtieron en recomendaciones oficiales de la W3C en 2011: "Selectores", "Espacios de nombres" y "Color". Algunos módulos como "Fondos y colores", "Consultas de medios" o "Diseños multicolumna" están en fase de "candidatos" y considerados como razonablemente estables a finales de 2011 y sus implementaciones en los diferentes navegadores son señaladas con los prefijos del motor del mismo. La versión de CSS que utilizan todos los navegadores de hoy en día es CSS 3.1.
  • 23. Funcionamiento básico de CSS Antes de la adopción de CSS, los diseñadores de páginas web debían definir el aspecto de cada elemento dentro de las etiquetas HTML de la página. El siguiente ejemplo muestra una página HTML con estilos definidos sin utilizar CSS: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Ejemplo de estilos sin CSS</title> </head> <body> <h1><font color="red" face="Arial" size="5">Titular de la página</font></h1> <p><font color="gray" face="Verdana" size="2">Un párrafo de texto no muy largo.</font></p> </body> </html> 23
  • 24. ⬡ El ejemplo anterior utiliza la etiqueta <font> con sus atributos color, face y size para definir el color, la tipografía y el tamaño del texto de cada elemento del documento. ⬡ El principal problema de esta forma de definir el aspecto de los elementos es el siguiente: si la página tuviera 50 elementos diferentes, habría que insertar 50 etiquetas <font>. Si el sitio web entero se compone de 10.000 páginas diferentes, habría que definir 500.000 etiquetas <font>. Como cada etiqueta <font> tiene 3 atributos, habría que definir 1.5 millones de atributos. ⬡ Por otra parte, el diseño de los sitios web está en constante evolución y es habitual modificar cada cierto tiempo los colores principales de las páginas o la tipografía utilizada para el texto. Si se emplea la etiqueta <font>, habría que modificar el valor de 1.5 millones de atributos para modificar el diseño general del sitio web. ⬡ CSS permite separar los contenidos de la página y su aspecto o presentación. 24
  • 25. Cómo incluir CSS en un documento HTML Una de las principales características de CSS es su flexibilidad y las diferentes opciones que ofrece para realizar una misma tarea. De hecho, existen tres opciones para incluir CSS en un documento HTML. 1. Incluir CSS en el mismo documento HTML ⬡ Los estilos se definen en una zona específica del propio documento HTML. Se emplea la etiqueta ⬡ <style> de HTML y solamente se pueden incluir en la cabecera del documento (sólo dentro de la sección <head>). ⬡ Este método se emplea cuando se define un número pequeño de estilos o cuando se quieren incluir estilos específicos en una determinada página HTML que completen los estilos que se incluyen por defecto en todas las páginas del sitio web. 25 Ejemplo: <!DOCTYPE html > <html > <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Ejemplo de estilos CSS en el propio documento</title> <style type="text/css"> p { color: black; font-family: Verdana; } </style> </head> <body> <p>Un párrafo de texto.</p> </body> </html> ⬡ El principal inconveniente es que si se quiere hacer una modificación en los estilos definidos, es necesario modificar todas las páginas que incluyen el estilo que se va a modificar.
  • 26. 2. Definir CSS en un archivo externo ⬡ En este caso, todos los estilos CSS se incluyen en un archivo de tipo CSS que las páginas HTML enlazan mediante la etiqueta <link>. Un archivo de tipo CSS no es más que un archivo simple de texto cuya extensión es .css Se pueden crear todos los archivos CSS que sean necesarios y cada página HTML puede enlazar tantos archivos CSS como necesite. ⬡ En el siguiente ejemplo, se crea un archivo de texto, se cambia su nombre a estilos.css y se incluye el siguiente contenido: 26 p { color: black; font-family: Verdana; } ⬡ A continuación, en la página HTML se utiliza la etiqueta <link> para enlazar el archivo CSS externo que tiene los estilos que va a utilizar la página: <!DOCTYPE html> <html > <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Ejemplo de estilos CSS en un archivo externo</title> <link rel="stylesheet" type="text/css" href="/css/estilos.css"/> </head> <body> <p>Un párrafo de texto.</p> </body> </html>
  • 27. ⬡ Normalmente, la etiqueta <link> incluye cuatro atributos cuando se enlaza un archivo CSS: ▪ rel: indica el tipo de relación que tiene el recurso enlazado (en este caso, el archivo CSS) y la página HTML. Para los archivos CSS, siempre se utiliza el valor stylesheet ▪ type: indica el tipo de recurso enlazado. Sus valores están estandarizados y para los archivos CSS su valor siempre es text/css ▪ href: indica la URL del archivo CSS que contiene los estilos. La URL indicada puede ser relativa o absoluta y puede apuntar a un recurso interno o externo al sitio web. ▪ media: indica el medio en el que se van a aplicar los estilos del archivo CSS. Más adelante se explican en detalle los medios CSS y su funcionamiento. ⬡ De todas las formas de incluir CSS en las páginas HTML, esta es la más utilizada con mucha diferencia. La principal ventaja es que se puede incluir un mismo archivo CSS en multitud de páginas HTML, por lo que se garantiza la aplicación homogénea de los mismos estilos a todas las páginas que forman un sitio web. ⬡ Con este método, el mantenimiento del sitio web se simplifica al máximo, ya que un solo cambio en un solo archivo CSS permite variar de forma instantánea los estilos de todas las páginas HTML que enlazan ese archivo. 27
  • 28. ⬡ Aunque generalmente se emplea la etiqueta <link> para enlazar los archivos CSS externos, también se puede utilizar la etiqueta <style>. La forma alternativa de incluir un archivo CSS externo se muestra a continuación: <!DOCTYPE html > <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859- 1" /> <title>Ejemplo de estilos CSS en un archivo externo</title> <style type="text/css" media="screen"> @import '/css/estilos.css'; </style> </head> <body> <p>Un párrafo de texto.</p> </body> </html> ⬡ En este caso, para incluir en la página HTML los estilos definidos en archivos CSS externos se utiliza una regla especial de tipo @import. Las reglas de tipo @import siempre preceden a cualquier otra regla CSS (con la única excepción de la regla @charset). 28 ⬡ La URL del archivo CSS externo se indica mediante una cadena de texto encerrada con comillas simples o dobles o mediante la palabra reservada url(). De esta forma, las siguientes reglas @import son equivalentes: @import '/css/estilos.css'; @import "/css/estilos.css"; @import url('/css/estilos.css'); @import url("/css/estilos.css");
  • 29. 3. Incluir CSS en los elementos HTML ⬡ El último método para incluir estilos CSS en documentos HTML es el peor y el menos utilizado, ya que tiene los mismos problemas que la utilización de las etiquetas <font>. ⬡ Ejemplo: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Ejemplo de estilos CSS en el propio documento</title> </head> <body> <p style="color: black; font-family: Verdana;">Un párrafo de texto.</p> </body> </html> ⬡ Esta forma de incluir CSS directamente en los elementos HTML solamente se utiliza en determinadas situaciones en las que se debe incluir un estilo muy específico para un solo elemento concreto. 29
  • 30. GLOSARIO BÁSICO DE TÉRMINOS: ⬡ Los diferentes términos se definen a continuación: ▪ Regla: cada uno de los estilos que componen una hoja de estilos CSS. Cada regla está compuesta de una parte de "selectores", un símbolo de "llave de apertura" ({), otra parte denominada "declaraciones" y por último, un símbolo de "llave de cierre" (}). ▪ Selector: indica el elemento o elementos HTML a los que se aplica la regla CSS. ▪ Declaración: especifica los estilos que se aplican a los elementos. Está compuesta por una o más propiedades CSS. ▪ Propiedad: permite modificar el aspecto de una característica del elemento. ▪ Valor: indica el nuevo valor de la característica modificada en el elemento. ⬡ Un archivo CSS puede contener infinitas reglas CSS, cada regla puede contener infinitos selectores y cada declaración puede estar formada por un número infinito de pares propiedad/ valor. 30
  • 31. 31 Como resumen, las claves de la CSS son: SELECTOR, PROPIEDAD, VALOR, REGLA y DECLARACIÓN.
  • 32. Empieza a utilizar CSS (hojas de estilo en cascada) Para VINCULAR UN ARCHIVO CSS, comenzaremos vinculando una hoja de estilos a nuestro archivo HTML. 1º Crear en nuestro editor de código DREAMWEAVER*un nuevo documento de CSS { } 2º Guardar este nuevo documento CSS en nuestra carpeta “WEB” (directamente o en subcarpeta estilos) * (Otros editores de código: pág. 7) 32
  • 33. 3º una hoja de estilos se vincula desde la etiqueta head con la etiqueta link, de esta manera: <link rel="stylesheet" href="estilos.css"> 33 Nombre de nuestro documento CSS Dentro de la etiqueta <head>
  • 34. SINTAXIS DE CSS ⬡ La sintaxis de la CSS está fundamentada en selector - propiedad - valor, agrupando todas las propiedades que afectan al selector entre { } de la siguiente manera: selector { propiedad: valor; } ⬡ Cada una de las asignaciones de propiedad: valor se finaliza con ; ⬡ Ejemplo: 34
  • 35. ⬡ En CSS, los comentarios se inician con: /* y se finalizan con: */ ⬡ En CSS, las mayúsculas y minúsculas son relevantes, por lo que si escribimos selectores (por ejemplo, una clase) que no coinciden en este sentido, no funcionarán. ⬡ Ejemplo de modificación de tamaño y color a un mismo selector: h1{ font-size: 30px; color: red; } ⬡ Cuando queremos aplicar la misma propiedad a varios selectores se separa por comas: h1, h2, h3{ font-size: 24px; } 35
  • 36. ⬡ Especial atención se debe mostrar a la CASCADA: ∙ Cualquier instrucción que viene más abajo de la hoja de estilos sobreescribe a la anterior. Por ejemplo: h1 {font-size: 24px;} h1 {font-size: 20px;} ∙ Este hecho es muy importante a la hora de aplicar las hojas de estilo. 36 ⬡ /* Comentario de CSS */ Tiene la misma función que los comentarios de HTML, AYUDAR AL DESARROLLADOR.
  • 37. SELECTORES BÁSICOS ⬡ etiqueta Una etiqueta HTML se escribe como selector con su nombre, pero sin los signos < >. Ejemplo: En HTML <p> Un párrafo</p> → En CSS p{ color: purple; } ⬡ .clase Una clase se escribe como selector precedida de un punto. Si queremos hacer referencia a una etiqueta que tiene una clase, escribiremos etiqueta.clase, sin espacios. Lo mismo ocurriría para un elemento que tenga dos clases: .clase1.clase2, sin espacios. El nombre de una clase no puede empezar por un número, ni contener espacios o caracteres especiales (tildes, ñ, ç…). Ejemplo: En HTML <div class=“contenedor”> → En CSS .contenedor{ <!– Contenido --> color: purple; </div> } 37
  • 38. Otros ejemplos: ⬡ Si tenemos dos elementos diferentes con la misma clase se puede ser más específico. Ejemplo: <div class= “principal”> </div> EN CSS → div.principal{ <p class= “principal”> </p> color: purple; } NOTA: OBSERVA QUE NO SE ESCRIBE CON NINGÚN ESPACIO. ⬡ Como afectar al párrafo que tengo dentro del div con la clase “principal”: <div class= “principal”> EN CSS → .principal p{ <p></p> color: purple; </div> } NOTA: OBSERVA EL ESPACIO QUE QUEDA ENTRE PRINCIPAL Y P. ESE ESPACIO SIGNIFICA HIJO DE, DESCENCIENTE O EN DEFINITIVA QUE ESTÁ CONTENIDO EN EL ANTERIOR. 38
  • 39. ⬡ #id El selector de id se escribe precedido de #.El nombre de un id no puede empezar por un número, ni contener espacios o caracteres especiales (tildes, ñ, ç…). No puede haber dos id iguales en la misma página. Ejemplo: <div id=“contacto”> En CSS → #contacto{ <! – Contenido --> color: purple; </div> } ⬡ Selector descendiente El espacio es un selector en CSS. Por tanto, si escribimos selector [espacio] selector, indicamos que el segundo elemento es descendiente del primero. HEMOS VISTO UN EJEMPLO EN LOS EJEMPLOS DE LA PÁGINA ANTERIOR. ⬡ Selector universal * El * sirve para seleccionar absolutamente todos los elementos HTML. Debe usarse con cuidado. *{ color: purple; } 39
  • 40. ESTILOS TIPOGRÁFICOS ⬡ font-size: valor; Tamaño tipográfico de un elemento. Es una de las pocas propiedades en CSS que se hereda. Por ejemplo: UNIDADES DE MEDIDA: ⬡ px Los píxeles (px) son la unidad de medida más habitual de la web, y la recomendada para principiantes. ⬡ em Los em (del tamaño de la M en tipografía) son medidas relativas al font-size heredado. Inicialmente equivalen a 16px, pero si se aumenta el tamaño tipográfico de un contenedor, aumentan proporcionalmente. Se recomienda no emplear esta unidad hasta tener un poco de práctica. 40
  • 41. ⬡ font-weight: peso; Peso de la tipografía: bold, normal, 200, 300, 400… ⬡ font-style: estilo; Estilo de la tipografía: italic, normal, oblique… ⬡ text-decoration: decoración; Decoración de la tipografía (subrayado, tachado…): underline, line-through, none. ⬡ line-height: valor; Altura de línea. Si no indicamos unidad, es proporcional al tamaño tipográfico. Ejemplo: line-height: 1.5; 41
  • 42. ⬡ color: valor; Color de la tipografía. No confundir con color de fondo, que es la propiedad background-color. ⬡ Palabra clave CSS tiene varios colores asignados a palabras clave en inglés, como red, orange, black, white o pink. ⬡ Hexadecimal Los colores hexadecimales se preceden con #, como por ejemplo: #000000 (negro), #FFFFFF (blanco), #FF0000 (rojo). ⬡ rgb() La declaración rgb se pone entre paréntesis (sin espacio entre los paréntesis y la palabra rgb), y se declara de 0 a 255 los valores de rojo, verde y azul. Ejemplo: rgb(255, 0, 0) ⬡ rgba() La declaración de rgba es similar a rgb, pero se añade un cuarto valor, en base a 1,que indica la opacidad. Ejemplo: rgba(0, 0, 0, 0.4) 42 COLOR EN CSS
  • 43. ⬡ Palabra clave: p{ color: hotpink; } ⬡ Hexadecimal: p{ color: #FFOOOO; } ⬡ rgba(): p{ color: rgba(255, 0, 0, 0.4); } 43
  • 44. ESTRUCTURA DE LAS HOJAS DE ESTILO ⬡ Organizar nuestra hoja de estilos es fundamental para evitar errores y poder ampliarla o corregirla en un futuro. ⬡ La posibilidad de incluir todo el código CSS en archivos externos exclusivamente dedicados a contener las reglas CSS, permite ordenar de forma lógica las reglas, mejorando su legibilidad y facilitando su actualización. ⬡ Las reglas CSS de las hojas de estilos complejas se suelen agrupar según su funcionalidad y se suelen incluir en el siguiente orden: ▪ Estilos básicos (<body>, tipo de letra por defecto, márgenes de <ul>, <ol> y <li>, etc.) ▪ Estilos de la estructura o layout (anchura, altura y posición de la cabecera, pie de página, zonas de contenidos, menús de navegación, etc.) ▪ Enlaces (estilos normales, estilos :hover, etc.) ▪ Estilos de cada una de las zonas (elementos de la cabecera, titulares y texto de la zona de contenidos, enlaces, listas e imágenes de las zonas laterales, etc.) ⬡ Otra característica común de los mejores sitios web es el uso de comentarios CSS para mejorar la estructura de las hojas de estilos muy largas. 44
  • 45. 45
  • 46. Texto Tipografía ⬡ CSS define numerosas propiedades para modificar la apariencia del texto. A pesar de que no dispone de tantas posibilidades como los lenguajes y programas específicos para crear documentos impresos, CSS permite aplicar estilos complejos y muy variados al texto de las páginas web. ⬡ La propiedad básica que define CSS relacionada con la tipografía se denomina color y se utiliza para establecer el color de la letra. 46 color Color del texto Valores <color> | inherit Se aplica a Todos los elementos Valor inicial Depende del navegador Descripción Establece el color de letra utilizado para el texto
  • 47. ⬡ Aunque el color por defecto del texto depende del navegador, todos los navegadores principales utilizan el color negro. Para establecer el color de letra de un texto, se puede utilizar cualquiera de las cinco formas que incluye CSS para definir un color. ⬡ A continuación se muestran varias reglas CSS que establecen el color del texto de diferentes formas: ⬡ Como el valor de la propiedad color se hereda, normalmente se establece la propiedad color en el elemento bodypara establecer el color de letra de todos los elementos de la página: body { color: #777; } ⬡En el ejemplo anterior, todos los elementos de la página muestran el mismo color de letra salvo que establezcan de forma explícita otro color. La única excepción de este comportamiento son los enlaces que se crean con la etiqueta <a>. Aunque el color de la letra se hereda de los elementos padre a los elementos hijo, con los enlaces no sucede lo mismo, por lo que es necesario indicar su color de forma explícita: 47 h1 { color: #369; } p { color: black; } a, span { color: #B1251E; } div { color: rgb(71, 98, 176); }
  • 48. ⬡ La otra propiedad básica que define CSS relacionada con la tipografía se denomina font-family y se utiliza para indicar el tipo de letra con el que se muestra el texto. 48 /* Establece el mismo color a todos los elementos de la página salvo los enlaces */ body { color: #777; } /* Establece el mismo color a todos los elementos de la página, incluyendo los enlaces */ body, a { color: #777; } font-family Tipo de letra Valores (( <nombre_familia> | <familia_generica> ) (,<nombre_familia> | <familia_generica>)* ) | inherit Se aplica a Todos los elementos Valor inicial Depende del navegador Descripción Establece el tipo de letra utilizado para el texto
  • 49. ⬡ El tipo de letra del texto se puede indicar de dos formas diferentes: ▪ Mediante el nombre de una familia tipográfica: en otras palabras, mediante el nombre del tipo de letra, como por ejemplo "Arial", "Verdana", "Garamond",etc. ▪ Mediante el nombre genérico de una familia tipográfica: los nombres genéricos no se refieren a ninguna fuente en concreto, sino que hacen referencia al estilo del tipo de letra. Las familias genéricas definidas son serif (tipo de letra similar a Times New Roman), sans-serif (tipo Arial), cursive (tipo Comic Sans), fantasy (tipo Impact) y monospace (tipo Courier New). ⬡ Los navegadores muestran el texto de las páginas web utilizando los tipos de letra instalados en el ordenador del propio usuario. De esta forma, si el diseñador indica en la propiedad font-family que el texto debe mostrarse con un tipo de letra especialmente raro o rebuscado, casi ningún usuario dispondrá de ese tipo de letra. 49
  • 50. ⬡ Para evitar el problema común de que el usuario no tenga instalada la fuente que quiere utilizar el diseñador, CSS permite indicar en la propiedad font-family más de un tipo de letra. El navegador probará en primer lugar con el primer tipo de letra indicado. Si el usuario la tiene instalada, el texto se muestra con ese tipo de letra. ⬡ Si el usuario no dispone del primer tipo de letra indicado, el navegador irá probando con el resto de tipos de letra hasta que encuentre alguna fuente que esté instalada en el ordenador del usuario. Evidentemente, el diseñador no puede indicar para cada propiedad font-family tantos tipos de letra como posibles fuentes parecidas existan. ⬡ Para solucionar este problema se utilizan las familias tipográficas genéricas. Cuando la propiedad font-family toma un valor igual a sans-serif, el diseñador no indica al navegador que debe utilizar la fuente Arial, sino que debe utilizar "la fuente que más se parezca a Arial de todas las que tiene instaladas el usuario". 50
  • 51. ⬡ Por todo ello, el valor de font-family suele definirse como una lista de tipos de letra alternativos separados por comas. El último valor de la lista es el nombre de la familia tipográfica genérica que más se parece al tipo de letra que se quiere utilizar. ⬡ Las listas de tipos de letra más utilizadas son las siguientes: ⬡ Ya que las fuentes que se utilizan en la página deben estar instaladas en el ordenador del usuario, cuando se quiere disponer de un diseño complejo con fuentes muy especiales, se debe recurrir a soluciones alternativas. ⬡ La solución más sencilla consiste en crear imágenes en las que se muestra el texto con la fuente deseada. Esta técnica solamente es viable para textos cortos (por ejemplo los titulares de una página) y puede ser manual (creando las imágenes una por una) o automática, utilizando JavaScript, PHP y/o CSS. 51 font-family: Arial, Helvetica, sans-serif; font-family: "Times New Roman", Times, serif; font-family: "Courier New", Courier, monospace; font-family: Georgia, "Times New Roman", Times, serif; font-family: Verdana, Arial, Helvetica, sans-serif;
  • 52. ⬡ Otra alternativa es la de la sustitución automática de texto basada en Flash. La técnica más conocida es la de sIFR, de la que se puede encontrar más información en http://wiki.novemberborn.net/sifr ⬡ Una vez seleccionado el tipo de letra, se puede modificar su tamaño mediante la propiedad font-size. ⬡ Además de todas las unidades de medida relativas y absolutas y el uso de porcentajes, CSS permite utilizar una serie de palabras clave para indicar el tamaño de letra del texto: ▪ tamaño_absoluto:indica el tamaño de letra de forma absoluta mediante alguna de las siguientes palabras clave: xx-small, x-small, small, medium,large, x-large, xx-large. ▪ tamaño_relativo:indica de forma relativa el tamaño de letra del texto mediante dos palabras clave (larger, smaller) que toman como referencia el tamaño de letra del elemento padre. 52 font-size Tamaño de letra Valores <tamaño_absoluto> | <tamaño_relativo> | <medida> | <porcentaje> | inherit Se aplica a Todos los elementos Valor inicial medium Descripción Establece el tamaño de letra utilizado para el texto
  • 53. ⬡ La siguiente imagen muestra una comparación entre los tamaños típicos del texto y las unidades que más se utilizan: Comparación visual de las distintas unidades para indicar el tamaño del texto ⬡ CSS recomienda indicar el tamaño del texto en la unidad em o en porcentaje (%). Además, es habitual indicar el tamaño del texto en puntos (pt) cuando el documento está específicamente diseñado para imprimirlo. 53
  • 54. ⬡ Por defecto los navegadores asignan los siguientes tamaños a los títulos de sección: <h1> = large, <h2> = x-large, <h3> = large, <h4> = medium, <h5> = small, <h6> = xx-small. ⬡ Una vez indicado el tipo y el tamaño de letra, es habitual modificar otras características como su anchura (texto en negrita) y su estilo (texto en cursiva). La propiedad que controla la anchura de la letra es font- weight. ⬡ Los valores que normalmente se utilizan son normal (el valor por defecto) y bold para los textos en negrita. El valor normal equivale al valor numérico 400 y el valor bold al valor numérico 700. 54 font-weight Anchura de la letra Valores normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | inherit Se aplica a Todos los elementos Valor inicial normal Descripción Establece la anchura de la letra utilizada para el texto
  • 55. SELECTORES AVANZADOS: LAS PSEUDO-CLASES ⬡ Las pseudo-clases hacen referencia a un cambio de estado de un elemento. El más característico es cuando pasamos el ratón por encima de un enlace y este cambia de color, se subraya, etc… ⬡ Estas son las pseudo-clases: ∙ elemento:hover Selector para el estado en el que se pasa el ratón por encima del elemento. ∙ elemento:active Selector para cuando un elemento (normalmente un enlace o un botón) está siendo activado. ∙ elemento:visited Selector de un enlace que ya ha sido visitado por el usuario. ∙ elemento:focus Selector para cuando un elemento (un enlace, botón o campo de formulario) tiene el foco, mediante cursor o tabulador. 55