Programación en Internet 2007-2008
DLSI - Universidad de Alicante 1
Departamento de Lenguajes y Sistemas Informáticos
Fundamentos de HTMLFundamentos de HTML
Programación en InternetCurso 2007-2008
Programación en Internet – Curso 2007-2008
Contenidos• Introducción• HTML• Etiquetas• Guía de estilo
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 2
Programación en Internet – Curso 2007-2008
Introducción• Qué es• Clasificación de las páginas• Qué necesito para diseñar con HTML• Editores HTML (gratuitos)• Editores HTML (pago)
Programación en Internet – Curso 2007-2008
Qué es• HyperText Markup Language (Lenguaje
d M d Hi t t )de Marcas de Hipertexto)• Basado en Standard Generalized
Markup Language (SGML)• Define formato del texto:
– Posición– Colores– Tamaños– …
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 3
Programación en Internet – Curso 2007-2008
Historia (1)• RFC 1630 Universal Resource Identifiers
in WWW: A Unifying Syntax for thein WWW: A Unifying Syntax for the Expression of Names and Addresses of Objects on the Network as used in the World-Wide Web. T. Berners-Lee. Junio 1994.
• RFC 1866 Hypertext Markup Language -2.0. T. Berners-Lee, D. Connolly. Noviembre 19951995.
• RFC 1945 Hypertext Transfer Protocol --HTTP/1.0. T. Berners-Lee, R. Fielding, H. Frystyk. Mayo 1996.
Programación en Internet – Curso 2007-2008
Historia (y 2)• 1989 ... 1991: Tim Berners-Lee
– URL + HTTP + HTMLURL + HTTP + HTML• 1994: World Wide Web Consortium (W3C)• Noviembre 1995: HTML 2.0• ...• Diciembre 1999: HTML 4.01• Enero 2000: XHTML 1.0
Ma o 2001 XHTML 1 1 Mod le based XHTML• Mayo 2001: XHTML 1.1 Module-based XHTML• Agosto 2002:
– XHTML 1.0 Second Edition Correcciones– XHTML 2.0 Working Draft Borrador propuesta
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 4
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 5
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 6
Programación en Internet – Curso 2007-2008
Clasificación de las páginas
• Según como se generan (servidor):– Estáticas– Dinámicas
• Según como se visualizan (cliente):– Estáticas
Dinámicas– Dinámicas
• Mejor: Dinámicas / Dinámicas
Programación en Internet – Curso 2007-2008
Qué necesito para diseñar con HTML
• Editor ASCII estándar• Navegador• Ficheros: .htm o .html• Editores HTML:
– ¿Por qué sí? ¿Por qué no?– Ventajas e inconvenientes
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 7
Programación en Internet – Curso 2007-2008
Editores HTML (gratuitos)• Netscape Composer• Microsoft FrontPage Express• http://tucows.ua.es
– AceHTML 4Free– Arachnophilia– CoffeCup Free HTMLCo eCup ee– FirstPage 2000– W3e 2000– ...
Programación en Internet – Curso 2007-2008
Editores HTML (pago)
• Adobe GoLive• Adobe PageMill• Claris Home Page• HotMetal Pro• Macromedia DreamWeaver• Microsoft FrontPage• NetObjects Fusion
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 8
Programación en Internet – Curso 2007-2008
Editores HTML• Ventajas:
Por productividad: ahorro de tiempo y esfuerzo– Por productividad: ahorro de tiempo y esfuerzo– Por facilidad– Evita memorizar las etiquetas– Evita y ayuda a corregir errores
• Desventajas:– Mala costumbre, se olvida la sintaxis o te
acostumbras a una herramienta concreta– En casos de emergencia, necesitas a nivel de
código– Las prestaciones de la herramienta te condicionan
Reducción de flexibilidad– Te condiciona a la versión de HTML que genera
Programación en Internet – Curso 2007-2008
• Etiquetas
HTML
• Diferencias con XHTML• Estructura de una página• Metadatos
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 9
Programación en Internet – Curso 2007-2008
Etiquetas (1)• Etiqueta o marca (tag):
I di id l– Individual: <…>– Por parejas: <…> … </…>
• Estructura general:<ETIQUETAATRIBUTO1=“VALOR1”
2 “ 2”ATRIBUTO2=“VALOR2”... ... ...>
Contenido</ETIQUETA>
Programación en Internet – Curso 2007-2008
Etiquetas (y 2)• Atributos
– <IMG SRC=“a.gif”>– <FRAME NORESIZE>– <FONT SIZE=“5”>…</FONT>
• Minúsculas/mayúsculas<HTML> <Ht l> <ht l>– <HTML>, <Html>, <html>
– Claridad Mayúsculas– XHTML Minúsculas
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 10
Programación en Internet – Curso 2007-2008
Diferencias con XHTML• Etiquetas y atributos Minúsculas• Valores de los atributos Entre
comillas• No se admiten atributos sin valor• Etiquetas por parejas o etiquetas
ívacías:– Por parejas: <…> … </…>– Etiqueta vacía: <… />
Programación en Internet – Curso 2007-2008
Diferencias con XHTML• Tres versiones:
XHTML St i t– XHTML Strict– XHTML Transitional– XHTML Frameset
• Los marcos usan Strict o Transitional
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 11
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Estructura de una página
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
<title>An XHTML 1.0 Strict standard template</title><meta http-equiv="content-type"
content="text/html;charset=utf-8" /><meta http-equiv="Content-Style-Type" content="text/css" /><meta http-equiv= Content-Style-Type content= text/css />
</head><body>
<p>… Your HTML content here …</p></body></html>
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 12
Programación en Internet – Curso 2007-2008
Diferencias con XHTML• Versiones HTML 4.01:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
Programación en Internet – Curso 2007-2008
Validar una página HTML• ¿Cómo se sabe que una página HTML
está bien escrita? Validación• W3C: http://validator.w3.org/
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 13
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Estructura de una página• <title>…</title>• <!-- Comentario -->
• Saltos de línea y espacios en blanco Se ignoran– <br>
b–
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 14
Programación en Internet – Curso 2007-2008
Metadatos
• Información sobre los datos• Sección HEAD:
– <meta http-equiv="propiedad" content="contenido">
– <meta name="propiedad" content="contenido">co te t co te do
Programación en Internet – Curso 2007-2008
Metadatos<html><head><head><meta http-equiv="Refresh" content="5;url=http://www.ua.es">
<meta name="autor" content=“Programación en Internet">
</head><body><body>En cinco segundos tiene que cambiar la página...
</body></html>
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 15
Programación en Internet – Curso 2007-2008
Metadatos• <meta name=“copyright” content=“Empresa, autor, diseñador”>autor, diseñador
• <meta name=“keywords” content=“palabras, clave, relativas, al, contenido, del, sitio, web”>
• <meta name=“description” content=“Descripción del contenido del sitio web, frases importantes l i d l fi lid d d l iti ”relacionadas con la finalidad del sitio”>
• <meta name=“author” content=“Quién lo ha hecho, persona o empresa”>
• <meta name="robots" content="index, follow">
Programación en Internet – Curso 2007-2008
Metadatos• <meta http-equiv=“Content-Type” content=“text/html; charset=iso-8859-1”>
• <meta http-equiv="Content-Language" content="ES">
• <meta http equiv="Content• <meta http-equiv="Content-Script-Type" content="JavaScript">
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 16
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Etiquetas
• Introducción• Categorías• Enlaces• Tablas• Imágenes• Formularios• Marcos
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 17
Programación en Internet – Curso 2007-2008
Introducción
• Guerra de los navegadores:– Netscape Navigator ⇔ Microsoft Internet
Explorer
• Actualidad: Opera, Firefox, Safari, etc.• Estándar: W3C
HTML 4 01– HTML 4.01– XHTML 1.0– XHTML 1.1– XHTML 2 (en desarrollo)
Programación en Internet – Curso 2007-2008
Categorías (1)
• Etiquetas que definen la estructura deldocumento: <html>, <head> y<body>
• Etiquetas que pueden ir en la cabecera:<title> <base> <meta><title>, <base>, <meta>,<style> y <link>
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 18
Programación en Internet – Curso 2007-2008
Categorías (2)
Eti t d fi bl d t t• Etiquetas que definen bloques de texto: <address>, <blockquote>, <div>, <h1>…<h6>, <p>, <pre> y <xmp>
• Etiquetas de listas: <dir>, <dl>, d dd l<dt>, <dd>, <menu>, <ol>, <ul> y <li>
Programación en Internet – Curso 2007-2008
Categorías (3)
Eti t d t í ti d l t t b• Etiquetas de características del texto: <b>,<basefont>, <big>, <blink>,<cite>, <code>, <em>, <font>, <i>,<kbd>, <plaintext>, <small>,<strike>, <strong>, <sub>, <sup>,<tt>, <u> y <var><tt>, <u> y <var>
• Etiquetas de anclas y enlaces: <a>
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 19
Programación en Internet – Curso 2007-2008
Categorías (4)
• Etiquetas de imágenes y mapas de imágenes: <img>, <area> y <map>
• Etiquetas de tablas: <table>, <caption> <tr> <td> y <th><caption>, <tr>, <td> y <th>
Programación en Internet – Curso 2007-2008
Categorías (5)
• Etiquetas de formularios: <form>, <input>, <select>, <option>, <textarea>, <keygen> y <isindex>
• Etiquetas de marcos: <frame>Etiquetas de marcos: <frame>,<frameset> y <noframes>
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 20
Programación en Internet – Curso 2007-2008
Categorías (6)
• Etiquetas de situación de contenidos: <layer>, <ilayer> y <nolayer>
• Etiquetas de script: <script>, <noscript> y <server>
Programación en Internet – Curso 2007-2008
Categorías (y 7)
Eti t d l t l i• Etiquetas de applets y plug-ins: <applet>, <param>, <embed>, <noembed> y <object>
• Etiquetas de ajuste del texto: <br>,<center>, <hr>, <multicol>,
b<nobr>, <spacer>, <span> y<wbr>
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 21
Programación en Internet – Curso 2007-2008
Formato del texto• Encabezados de secciones: <H1>, ...,
<H6>• Formatos físicos: <B>, <I>, ...• Formatos lógicos: <CITE>, <CODE>, ...• <FONT FACE=“” SIZE=“”>
– Cuidado con los tipos de letra “exóticos”– Desaconsejado, usar CSS
Programación en Internet – Curso 2007-2008
Formato del texto• Tipos de letra serif:
– Letra Courier New
– Letra Georgia
– Letra Times New Roman• Tipos de letra sans serif:
L t A i l– Letra Arial– Letra Tahoma–Letra Verdana
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 22
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 23
Programación en Internet – Curso 2007-2008
Listas• Listas de definición
– <DL>, <DT>, <DD>• Listas ordenadas (numeradas)
– <OL>, <LI>• Listas no ordenadas
– <UL>, <LI>
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 24
Programación en Internet – Curso 2007-2008
Colores• <FONT COLOR=“”>• <BODY BGCOLOR=“”>• <BODY TEXT=“” LINK=“” VLINK=“”
ALINK=“”>• Todos ellos desaconsejados, usar CSS• Color:
– Componente RGB– Nombre de color
Programación en Internet – Curso 2007-2008
Sistema RGB• Coordenadas RGB:
– R=Red rojo G=Green verde y B=Blue azul– R=Red, rojo. G=Green, verde y B=Blue, azul.– Combinaciones RRGGBB. Dos cifras para cada
componente de color.– Cifras en hexadecimal: del 0 al 15, (0-9 i A-F)
• A=10, B=11, C=12, D=13, E=14 i F=15.• Ejemplos:
– 000000, todos los colores apagados, negro.– FFFFFF, todos los colores al máximo, blanco.– FF0000, el rojo al máximo y el verde y azul
apagados, un rojo intenso– FFFF00, el rojo y verde al máximo, el azul a cero,
el amarillo intenso.– CCCCCC, todas las coordenadas iguales, pero
con una intensidad alta, un gris claro.
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 25
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Enlaces (1)
• Enlace a un punto del mismo documento (enlace intradocumental)– Enlace: <A HREF=“#nombre”>…</A>– Destino: <A NAME=“nombre”>…</A>
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 26
Programación en Internet – Curso 2007-2008
Enlaces (2)
• Enlace a otro documento (enlace extradocumental)– <A HREF=“pagina.html”>…</A>
Programación en Internet – Curso 2007-2008
Enlaces (3)
• Enlace a un punto de otro documento– Enlace: <A HREF=“pagina.html#nombre”>…</A>– Destino: <A NAME=“nombre”>…</A>
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 27
Programación en Internet – Curso 2007-2008
Enlaces (y 4)• Peligro:
– Mayúsculas y minúsculas– Caracteres extraños (sólo alfabeto inglés)– Rutas físicas (“file:///c:\miweb\grupos.html”)
Programación en Internet – Curso 2007-2008
Tablas
• <TABLE> </TABLE>• <TABLE>…</TABLE>• <TR>…</TR>• <TH>…</TH>• <TD>…</TD>
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 28
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 29
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 30
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 31
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Imágenes (1)• <IMG>
– SRC– WIDTH y HEIGHT– BORDER– ALT Recomendable
• Imagen de fondo de una página:• Imagen de fondo de una página:– <BODY BACKGROUND=“”>– Desaconsejado, usar CSS
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 32
Programación en Internet – Curso 2007-2008
Imágenes (y 2)• Tipos de imágenes:
– GIF, mapas de bits planos o pequeños. Paleta de colores variables (256 máximo)
– JPG, mapas de bits complejos y con mucho pixelado. 16M colores, 3 bytes por punto
– PNG, mezcla entre GIF y JPG, tiene características de los dos formatos, ¿posible heredero?
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 33
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 34
Programación en Internet – Curso 2007-2008
Formularios (1)
Cli t S id• Cliente Servidor<FORM NAME=”nombre” ACTION=”pagina.html” METHOD=”metodo”>
Controles del formulario</FORM>
• Método:Método:– POST: sin limitación de datos, mensaje más largo– GET: limitación de datos, transacción más sencilla
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 35
Programación en Internet – Curso 2007-2008
Formularios (2)
• Atributos NAME y VALUE• Atributos NAME y VALUE• Botones (para enviar información, borrar y
otras acciones): <INPUT TYPE=”SUBMIT”>, <INPUT TYPE=”RESET”>, <INPUT TYPE=”BUTTON”>
• Imágenes que actúan como botones (para enviar información): <INPUT TYPE=”IMAGE”>
Programación en Internet – Curso 2007-2008
Formularios (3)
• Campos de verificación: <INPUT• Campos de verificación: <INPUT TYPE=”CHECKBOX”>
• Campos excluyentes (botones de radio): <INPUT TYPE=”RADIO”>
• Campos de texto: <INPUT TYPE=”TEXT”>p
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 36
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Formularios (4)
• Campos de contraseña (password): <INPUT• Campos de contraseña (password): <INPUT TYPE=”PASSWORD”>
• Campos ocultos: <INPUT TYPE=”HIDDEN”>
• Envío de ficheros: <INPUT TYPE=”FILE”>
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 37
Programación en Internet – Curso 2007-2008
Formularios (y 5)
• Listas de selección: <SELECT> <OPTION>• Listas de selección: <SELECT>, <OPTION>• Áreas de texto: <TEXTAREA>
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 38
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 39
Programación en Internet – Curso 2007-2008
Marcos• División ventana en regiones que son
tventanas• <FRAMESET>…</FRAMESET>
– BORDER• <FRAME>
– NORESIZE– SCROLLING
• <A HREF=“” TARGET=“”>…</A>
Programación en Internet – Curso 2007-2008
Marcos
• Valores predefinidos para TARGET:– _self– _blank– _parent– _top
• Marco predeterminado (en la cabecera):• Marco predeterminado (en la cabecera):– <BASE TARGET=“nommarco">
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 40
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 41
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 42
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 43
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 44
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 45
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 46
Programación en Internet – Curso 2007-2008
Programación en Internet – Curso 2007-2008
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 47
Programación en Internet – Curso 2007-2008
Guía de estilo (1)• Organizar el código HTML
Organizar ordenar y tabular– Organizar, ordenar y tabular– Comentarios
• Cuidado con los colores– Colores por defecto del navegador– Color oscuro, fondo claro– Color claro, fondo oscuro,
• Cuidado con los tipos de letra• Imágenes:
– Texto alternativo (ALT)– No abusar de las animaciones
Programación en Internet – Curso 2007-2008
Guía de estilo (2)• Cuidado con los valores absolutos• Cuidado con las barras de
desplazamiento– Barra horizontal ¡Evitar!
• Cuidado con las imágenes de fondoC t t– Contraste
– Mosaico
• Sacar partido al hipertexto
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 48
Programación en Internet – Curso 2007-2008
Guía de estilo (3)• Usar las capacidades multimedia
– Velocidad de transferencia– Caché previa de los objetos– Imágenes de fondo
• Identidad corporativaTipos de let a– Tipos de letra
– Colores– Imágenes
Programación en Internet – Curso 2007-2008
Guía de estilo (4)• Permitir que los usuarios se
comuniquen• Facilitar las búsquedas
– Índice– Buscador
Mapa del sitio web– Mapa del sitio web
• Revisar las páginas periódicamente
Programación en Internet 2007-2008
DLSI - Universidad de Alicante 49
Programación en Internet – Curso 2007-2008
Guía de estilo (5)• Los enlaces
La <A HREF=”/concejalias/turismo”>Concejalía deTurismo</A> se encarga de gestionar el turismorural y de playa...
La Concejalía de Turismo se encarga de gestionar el turismo rural y de playa... (<A HREF=”/concejalias/turismo”>haga click aquí para ver más información acerca de la Concejalía de Turismo</A>).
Programación en Internet – Curso 2007-2008
Guía de estilo (y 6)• Shneiderman, B., Designing the User Interface,
Addison-Wesley 1987:Addison Wesley, 1987:“Para muchos usuarios de sistemas de
computadora de información, la frustración y la ansiedad forman parte de la vida diaria.
Se esfuerzan por aprender un lenguaje de órdenes o un sistema de selección de menús
q e se s pone les a dará en s trabajoque, se supone, les ayudará en su trabajo.
Algunas personas sufren casos tan serios de shock con la computadora, de terror al terminal
o de neurosis de red, que evitan utilizar sistemas de computadora”