HTML DAW

204
Ciclo Formativo de Grado Superior de Administración de Sistemas Informáticos en red Módulo Profesional: LMSGI Unidad de Trabajo 4.- (X) HTML Departamento de Informática y Comunicación IES San Juan Bosco (Lorca-Murcia) Profesor: Juan Antonio López Quesada

description

HTML

Transcript of HTML DAW

Page 1: HTML  DAW

Ciclo Formativo de Grado

Superior de Administración de

Sistemas Informáticos en red

Módulo Profesional: LMSGI

Unidad de Trabajo 4.- (X) HTML

Departamento de Informática y ComunicaciónIES San Juan Bosco (Lorca-Murcia)Profesor: Juan Antonio López Quesada

Page 2: HTML  DAW

2

Page 3: HTML  DAW

3

XHTML es uno de los lenguajes derivados de XMLusados en las páginas web de Internet (o Intranets).XHTML está basado en HTML, pero con la diferenciaque XHTML es más estricto y de acuerdo con elestándar XML. De hecho, la primera versión delXHTML es una mera adaptación del HTML a lasintaxis del XML. XHTML sigue muchas de lasconvenciones de HTML, por ende los navegadoresque soporten HTML podrán ver los documentosXHTML.

Con este tema se pretende proporcionar una visióngeneral del lenguaje proporcionando los recursosexternos que permitan resolver cualquier cuestión yescribiendo código directamente con el fin de tenerun profundo conocimiento de los tags y atributosque conforman este mundo; en cualquier caso alfinal de la unidad de trabajo se presentará unaherramienta CASE.

Page 4: HTML  DAW

4

Page 5: HTML  DAW

5

¿Qué es (x)HTML?

Especificación oficial

Lenguajes de etiquetas

Elementos (X)HTML

El futuro de Internet, X/HTML 5 vs XHTML 2

Page 6: HTML  DAW

6

El propio W3C define el lenguaje HTML como "un lenguaje

reconocido universalmente y que permite publicar información

de forma global". Desde su creación, el lenguaje HTML ha

pasado de ser un lenguaje utilizado exclusivamente para crear

documentos electrónicos a ser un lenguaje que se utiliza en

muchas aplicaciones electrónicas como buscadores, tiendas

online y banca electrónica.

El lenguaje XHTML es muy similar al lenguaje HTML. De

hecho, XHTML no es más que una adaptación de HTML al

lenguaje XML. Técnicamente, HTML es descendiente directo

del lenguaje SGML, mientras que XHTML lo es del XML (que a

su vez, también es descendiente de SGML).

Page 7: HTML  DAW

7

El organismo W3C (World Wide Web Consortium) elabora las normas que

deben seguir los diseñadores de páginas web para crear las páginas HTML.

Las normas oficiales están escritas en inglés y se pueden consultar de forma

gratuita en las siguientes direcciones:

Especificación oficial de HTML 4.01

http://www.w3.org/TR/html401/

Especificación oficial de XHTML 1.0

http://www.w3.org/TR/xhtml1/

El estándar XHTML 1.0 incluye el 95% del estándar HTML 4.01, ya que

sólo añade pequeñas mejoras y modificaciones menores. Afortunadamente, no

es necesario leer las especificaciones y recomendaciones oficiales de HTML

para aprender a diseñar páginas con HTML o XHTML. Las normas oficiales

están escritas con un lenguaje bastante formal y algunas secciones son difíciles

de comprender.

Page 8: HTML  DAW

8

Para entender los lenguajes de marcas y más concretamente (x)html nos

plantearíamos las siguientes cuestiones: ¿cómo se almacena un texto en negrita?

¿y un texto de color rojo? ¿y otro texto azul, en negrita y subrayado?

Una solución técnicamente viable consiste en almacenar la información sobre el

formato del texto en una zona especial reservada dentro del propio archivo. En

esta zona se podría indicar dónde comienza y dónde termina cada formato.

No obstante, la solución que realmente se emplea para guardar la información

con formato es mucho más sencilla: el archivo electrónico almacena tanto los

contenidos como la información sobre el formato de esos contenidos. Si por

ejemplo se quiere dividir el texto en párrafos y se desea dar especial importancia

a algunas palabras, se podría indicar de la siguiente manera:

<parrafo> Contenido de texto con <importante>algunas palabras</importante>

resaltadas de forma especial. </parrafo>

Page 9: HTML  DAW

9

Aunque existen algunas excepciones, en general las etiquetas se indican por

pares y se forman de la siguiente manera:

Etiqueta de apertura: carácter <, seguido del nombre de la etiqueta (sin

espacios en blanco) y terminado con el carácter >

Etiqueta de cierre: carácter <, seguido del carácter /, seguido del

nombre de la etiqueta (sin espacios en blanco) y terminado con el

carácter >

Así, la estructura típica de las etiquetas HTML es:

<nombre_etiqueta> ... </nombre_etiqueta>

HTML es un lenguaje de etiquetas (también llamado lenguaje de marcado) y

las páginas web habituales están formadas por cientos o miles de pares de

etiquetas. De hecho, las letras "ML" de la sigla HTML significan "markup

language", que es como se denominan en inglés a los lenguajes de marcado.

Page 10: HTML  DAW

10

(x)HTML define etiquetas que los diseñadores pueden utilizar

para marcar los diferentes elementos que componen una página:

a, abbr, acronym, address, applet, area, b, base, basefont, bdo, big,

blockquote, body, br, button, caption, center, cite, code, col,

colgroup, dd, del, dfn, dir, div, dl, dt, em, fieldset, font, form, frame,

frameset, h1, h2, h3, h4, …………..

Algunos elementos requieren cierta información adicional para

estar completamente definidos. Como no es viable crear una etiqueta

para cada diferencia, la solución consiste en personalizar las

etiquetas HTML mediante cierta información adicional llamada

atributos.

Page 11: HTML  DAW

11

Atributos básicos: se pueden utilizar prácticamente en todas las etiquetas.

Ejemplo: style = "texto" Establece de forma directa los estilos CSS de un

elemento.

Atributos para internacionalización: los utilizan las páginas que muestran sus

contenidos en varios idiomas o aquellas que quieren indicar de forma

explítica el idioma de sus contenidos. Ejemplo: lang = "codigo de idioma"

Indica el idioma del elemento mediante un código predefinido.

Atributos de eventos: sólo se utilizan en las páginas web dinámicas creadas con

JavaScript. Ejemplos: onclick, ondblclick, onmousedown, onmouseup,

onmouseover, onmousemove, onmouseout, onkeypress, onkeydown, onkeyup

Permiten controlar los eventos producidos sobre cada elemento de la página

Atributos para los elementos que pueden obtener el foco. Ejemplo: tabindex =

"numero" Establece la posición del elemento en el orden de tabulación de la

página.

Page 12: HTML  DAW

12

Aunque en ocasiones se habla de

forma indistinta de "elementos" y

"etiquetas", en realidad un elemento

HTML es mucho más que una

etiqueta, ya que está formado por:Una etiqueta de apertura.

Cero o más atributos.

Texto encerrado por la etiqueta.

Una etiqueta de cierre.

Lenguaje HTML clasifica a todos los elementos en dos grupos: elementos en

línea y elementos de bloque. Los elementos de bloque siempre empiezan en

una nueva línea y ocupan todo el espacio disponible hasta el final de la línea,

aunque sus contenidos no lleguen hasta el final de la línea. Por su parte, los

elementos en línea sólo ocupan el espacio necesario para mostrar sus

contenidos.

Page 13: HTML  DAW

Lo nuevo de HTML 5

La W3C ya tiene una lista con diferencias de HTML 5 a

HTML 4 que está en desarrollo todavía, por ejemplo

tenemos estos nuevos elementos: section, article,

aside, header, footer, nav, dialog, figure, audio, video,

embed, m, meter, time, canvas, command, datagrid,

details, datalist, event-source, output, progress.

13

El desarollo de Hypertext Markup Language HTML paró en 1999 con la

HTML 4.01, en ese momento la World Wide Web Consortium (W3C)

centró sus esfuerzos en otros estándares (SGML, XML, SVG, XForms, RSS,

CSS), pero durante estos 8 años HTML ha aguantado firmemente.

En estos últimos años se ha circunscrito el trabajo en la especificación de

XHTML (publicando su versión 1.0 en el 2000) y ahora se estaba trabajando

en la versión XHTML 2.0 (aún en fase borrador).

HTML 5XHTML 2

Page 14: HTML  DAW

14

Page 15: HTML  DAW

15

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Documento sin t&iacute;tulo</title>

</head>

<body>

</body>

</html>

Page 16: HTML  DAW

16

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN"

http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>

Todos los documentos XHTML válidos deben llevar un elemento llamado DOCTYPE, el cualno es parte del documento en sí, sino que define el tipo de DTD (Document Type Definitiono Definición de tipo de documento) a emplear en nuestros documentos, es obligatorio ypuede ser uno de estos tres:

XHTML 1.0 Strict: Se usa cuando se desea utilizar al 100% XHTML, su nombre lo dicebien claro, es XHTML estricto, la declaración del mismo es como sigue:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

HTML 1.0 Transitional: Es el más usado ya que permite manejar elementos deXHTML y HTML 4.01, su declaración es la que sigue:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

XHTML 1.0 Frameset: Se debe usar cuando se manejan frames, su declaración es lasiguiente:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

Page 17: HTML  DAW

17

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN"

http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>

Page 18: HTML  DAW

18

Page 19: HTML  DAW

19

Page 20: HTML  DAW

20

<p>

<a href="http://validator.w3.org/check?uri=referer">

<img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0 Transitional" height="31" width="88" />

</a>

</p>

Page 21: HTML  DAW

21

https://suma.um.es/suma/sumav2/

Page 22: HTML  DAW

22

<html xmlns="http://www.w3.org/1999/xhtml">Esta línea hace referencia al espacio de nombres (namespace) de xhtml . un "namespace" XML es

una colección de nombres, identificados por un URI, que se utiliza en los documentos XML para

identificar los nombres de los elementos y atributos.

<head> ….. </head> /<body> ….. </body>La mayoría de las páginas Web están divididas en dos partes: la cabecera (head) y el cuerpo (body).

La cabecera es donde se define el título de la página, incluida la información sobre su página para

los motores de búsqueda como Google, estable la ubicación de la página, añade estilos y escribe

scripts. A excepción del título, el contenido de la cabecera no es visible para el visitante

<html> ….. </html>El tag HTML html contiene a todo el documento, con la excepción del tag HTML !DOCTYPE,

definido al comienzo del documento.

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />Se utiliza para definir la codificación de los caracteres del documento

Page 23: HTML  DAW

23

Los nombres de las etiquetas de elementos y de los atributos tienen que estar en

minúscula.

Los valores de los atributos tienen que estar entre comillas dobles (") o simples (').

Todos los elementos tienen que estar cerrados, ya tengan contenido (<p>...</p> ) o

no (<br/> ).

Los elementos deben de estar correctamente anidados.

Los valores de pares atributo=valor iguales no pueden ser simplificados, por

ejemplo <dl compact='compact'> no se puede expresar como <dl compact>.

Algunos elementos son obligatorios (html, body, head, etc.)

Se debe incluir una declaración de tipo de documento.

Además existen ciertas incompatibilidades en el anidamiento de elementos, por

ejemplo, <a> no puede contener otros elementos <a>

……..

Page 24: HTML  DAW

24

Los documentos transmitidos con HTTP que son de tipo texto, como

text/html, text/plain, etc., pueden enviar un parámetro charset en el

encabezado de HTTP para especificar la codificación de caracteres del

documento. Es muy importante etiquetar siempre los documentos web en

forma explícita. HTTP 1.1 dice que el charset predeterminado es ISO-8859-1.

En teoría, se puede utilizar toda codificación de caracteres que haya sido

registrada por la Autoridad de Asignación de Cifras en Internet (IANA)

(http://www.iana.org/assignments/character-sets), pero no existe explorador

alguno que comprenda todas las codificaciones. Cuanto más extenso sea el

uso de una codificación de caracteres, mayor será la probabilidad de que el

explorador la comprenda.

Page 25: HTML  DAW

25

<head>

….

<meta http-equiv="Content-Type" content="text/html; charset=">

….

</head>

Todos los documentos de texto, incluidos los (x)html se guardan con una

codificación de carácter. Puesto que hay muchas codificaciones disponibles en

el mundo, es una buena idea declarar con que codificación se ha guardado su

página en el código (x)html.

charset=UTF-8">

charset=UTF-16">

charset= iso-8859-1 ">

Page 26: HTML  DAW

26

<meta ……>

La etiqueta <meta> se utiliza para añadir información sobre la página. Esta

información puede ser utilizada por los buscadores.

Los buscadores consultan la información de la etiqueta <meta> de las páginas,

buscando coincidencias con lo que el usuario pretende encontrar.

A través de esta etiqueta pueden especificarse los atributos name y content. El

atributo name indica el tipo de información, y el atributo content indica el

valor de dicha información.

<head>

<meta name="description" content="Free Web tutorials" />

<meta name="keywords" content="HTML,CSS,XML,JavaScript" />

<meta name="author" content="Hege Refsnes" />

<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1" />

</head>

Page 27: HTML  DAW

27

<title>…. </title>

Toda página debe tener un elemento title. Un título debería ser corto y

descriptivo. En la mayoría de los navegadores, el título aparece en la barra de

título de la ventana.

Page 28: HTML  DAW

28

<hn>…. </hn> n:1-6

Los títulos de sección se utilizan para

delimitar el comienzo de cada sección de

la página. HTML permite crear secciones

de hasta seis niveles de importancia.

Las etiquetas que definen los títulos de

sección son <h1>, <h2>, <h3>, <h4>,

<h5> y <h6>. La etiqueta <h1> es la de

mayor importancia y por tanto se utiliza

para definir los titulares de la página. La

importancia del resto de etiquetas es

descendiente, de forma que la etiqueta

<h6> es la que se utiliza para delimitar

las secciones menos importantes de la

página.

Page 29: HTML  DAW

29

<p>…. </p>

Una de las etiquetas más utilizadas de

HTML es la etiqueta <p>, que permite

definir los párrafos que forman el texto

de una página. Para delimitar el texto de

un párrafo, se encierra ese texto con la

etiqueta <p>.

Para añadir espacios extra entre los

caracteres que forman el párrafo

utilizaremos &nbsp;

Puede alinear el texto del párrafo con el

atributo align=“direction” (left, right,

center o justify)

Page 30: HTML  DAW

30

id=“nombre” ó class=“nombre”

Puede asignarse a los elementos de un (X)html tanto un

nombre único como un nombre perteneciente a una clase.

Este elementos me permite aplicar acciones, estilos,

referencias.. , utilizando el identificador único o

utilizando el nombre de la clase al que pertenece.

Cada id en un documento debe ser único.

Los atributos class e id se pueden añadir a la mayoría de

los elementos pero son particularmente útiles en los

elementos div y span.

Page 31: HTML  DAW

31

<div> … </div>

Para agrupar los elementos que forman cada

zona o división de la página se utiliza la

etiqueta <div>.

Una capa o división es un elementos de

bloque, lo que significa que sus contenidos

comienzan automáticamente en una línea

nueva.

La potencia se obtiene con el uso del atributo

style o con CSS.

Page 32: HTML  DAW

32

<p> Juan Antonio <span id=“estilo_apellido”> López Quesada </p>

Aunque puede organizar grandes bloques en secciones, capas, párrafos,… se puede

nombrar bloques más pequeños de texto u otros elementos para identificarlos.

El elemento <span> es lo que se podría denominar un elemento neutro que no añade

nada al documento en sí. Pero con CSS <span> se puede usar para añadir características

visuales distintivas a partes específicas de texto en los documentos.

<p>El que pronto se acuesta y pronto se

levanta,

es hombre saludable, rico y sabio.</p>

<p>El que pronto se acuesta y pronto se

levanta,

es hombre <span

class="ventaja">saludable</span>,

<span class="ventaja">rico</span>

y <span class="ventaja">sabio</span>.</p>

Page 33: HTML  DAW

33

<br />

Los navegadores automáticamente separan el texto de acuerdo con la anchura del

bloque o ventana, creando nuevas líneas según sea necesario. Aunque puede iniciar

un nuevo párrafo con la etiqueta p, también puede crear saltos de línea manuales

allí donde desee.

<!--- --->

Puede añadir comentarios a sus documentos para plasmas lo que se está tratando

de conseguir con las etiquetas (X)html utilizadas.

<etiqueta title=“label”> ….. </etiqueta>

Añadir una etiqueta descriptiva que aprecerá cuando el visitante coloque el cursos

sobre el elemento.

Page 34: HTML  DAW

34

<!-->

<!DOCTYPE>

<a>

<abbr>

<acronym>

<address>

<applet>

<area>

<b>

<base>

<basefont>

<bdo>

<big>

<blockquote>

<body>

<br>

<button>

<caption>

<center>

<cite>

<code>

<col>

<colgroup>

<dd>

<del>

<dfn>

<dir>

<div>

<dl>

<dt>

<em>

<fieldset>

<font>

<form>

<frame>

<frameset>

<head>

<h1> - <h6>

<hr>

<html>

<i>

<iframe>

<img>

<input>

<ins>

<kbd>

<label>

<legend>

<li>

<link>

<map>

<menu>

<meta>

<noframes>

<noscript>

<object>

<ol>

<optgroup>

<option>

<p>

<param>

<pre>

<q>

<s>

<samp>

<script>

<select>

<small>

<span>

<strike>

<strong>

<style>

<sub>

<sup>

<table>

<tbody>

<td>

<textarea>

<tfoot>

<th>

<thead>

<title>

<tr>

<tt>

<u>

<ul>

<var>

http://www.w3schools.com/xhtml/

Page 35: HTML  DAW

35

Resultado:

<html>

<head>

<title>ejemplo</title>

<meta http-equiv=“refresh" content="3; url=http://www.um.es">

</head>

<body>

En 3 segundos redireccionará. Si no empieza, pulsa <a href=„http:///www.um.es'>aquí</a>

</body>

</html>

Camino 1.-

Page 36: HTML  DAW

36

Camino 2.-

Tags meta http-equiv Refresh

Page 37: HTML  DAW

37

Page 38: HTML  DAW

38

La etiqueta <em> marca un texto

indicando que su importancia es

mayor que la del resto del texto.

La etiqueta <strong> indica que

un determinado texto es de la

mayor importancia dentro de la

página.

Por defecto, los navegadores

muestran los elementos <em> en

cursiva para hacer evidente su

importancia y muestran los

elementos <strong> en negrita,

para indicar que son los más

importantes.

Page 39: HTML  DAW

39

Permite marcar de forma adecuada las modificaciones realizadas en el contenido de una

página. En otras palabras, HTML permite indicar de forma clara el texto que ha sido

eliminado y el texto que ha sido añadido a un determinado texto original.

Ambos tienen como atributos:cite = "url" - Indica la URL de la página en la que se puede obtener más información

sobre el motivo por el que se realizó la modificación.

datetime = "fecha" - Especifica la fecha y hora en la que se realizó el cambio

Por defecto, el texto eliminado (marcado con la etiqueta <del>) se muestra tachado de

forma que el usuario pueda identificarlo fácilmente como un texto que formaba parte del

texto original y que ya no tiene validez. El texto insertado (marcado con la etiqueta <ins>)

se muestra subrayado, de forma que el usuario pueda identificarlo como un texto nuevo

que no formaba parte del texto original.

Page 40: HTML  DAW

40

Muchos tipos de páginas (artículos, noticias) es habitual citar literalmente un texto

externo. HTML define la etiqueta <blockquote> para incluir citas de bloques textuales en

las páginas web.

Atributos específicos: cite = "url" - Indica la dirección de la página web original

de la que se extrae la cita

Para indicar de forma clara que el texto es una cita externa, los navegadores muestran por

defecto el texto del elemento <blockquote> con un gran margen en la parte izquierda.

Para citas en línea tenemos la etiqueta <q> .. </q>, que muestra el texto delimitado entre

«texto citado».

Page 41: HTML  DAW

41

Page 42: HTML  DAW

42

La etiqueta <abbr> marca las abreviaturas de un texto y la etiqueta <acronym> se emplea

para marcar las siglas o acrónimos del texto.

Atributos específicos: title = "texto" - Indica el significado completo de la

abreviatura.

La mayoría de navegadores

muestran por defecto un borde

inferior punteado para todos los

elementos <abbr> y <acronym>.

Al posicionar el puntero del ratón

sobre la palabra subrayada, el

navegador muestra un pequeño

recuadro (llamado tooltip en

inglés) con el valor del atributo

title.

Page 43: HTML  DAW

43

Por otra parte, en ocasiones resulta útil incluir la definición de una palabra

extraña o cuyo uso está restringido a un entorno muy determinado. HTML

incluye la etiqueta <dfn> para proporcionar al usuario la definición de todas las

palabras para las que se considere apropiado.

Atributos específicos title = "texto" - Indica el significado completo del

término

Page 44: HTML  DAW

44

<sub> .. </sub>

<sup> .. </sup>

Mediante el (X)Html también podemos escribir fórmulas matemáticas. Gracias

a las etiquetas siguientes podrás escribir subíndices y superíndices fácilmente.

La etiqueta <sub> te servirá para escribir un subíndice y <sup> será tu etiqueta

para un superíndice.

Así nos queda un ejemplo como el siguiente:

Gracias a estas etiquetas podemos escribir cualquier fórmula matemática

como esta: H <sub>2</sub> O y números elevados a potencias

7<sup>3</sup>.

Gracias a estas etiquetas podemos escribir cualquier fórmula matemática como

esta: H 2 O y números elevados a potencias 73.

Page 45: HTML  DAW

45

Por último, HTML incluye una etiqueta que se puede utilizar para marcar un

texto como una cita.

En ocasiones, no está clara la diferencia entre <cite> y <blockquote>. El

elemento <cite> marca el autor de la cita (persona, documento, etc.) y

<blockquote> marca el contenido de la propia cita. En el siguiente ejemplo,

<blockquote> encierra el contenido de una frase célebre y <cite> encierra el

nombre de su autor:

Como dijo <cite>Mahatma Gandhi</cite>: <blockquote>Vive como si fueras a

morir mañana y aprende como si fueras a vivir para siempre.</blockquote>

Page 46: HTML  DAW

46

El aspecto más sorprendente del lenguaje (X)HTML cuando se desarrollan los

primeros documentos es el tratamiento especial de los "espacios en blanco" del

texto. (X)HTML considera espacio en blanco a los espacios en blanco, los

tabuladores, los retornos de carro y el carácter de nueva línea .

<br/>

&nbsp;

Page 47: HTML  DAW

47

En ocasiones, es necesario mostrar los espacios en blanco de un texto que no se

puede modificar. Se trata de un caso habitual cuando una página web debe

mostrar directamente el texto generado por alguna aplicación.

En estos casos, se puede utiliza la etiqueta <pre>, que muestra el texto tal y

como se ha escrito, respetando todos los espacios en blanco y todas las nuevas

líneas.

Page 48: HTML  DAW

48

Page 49: HTML  DAW

49

Otra etiqueta relacionada con <pre> es la etiqueta <code>, que se utiliza para

mostrar código fuente de cualquier lenguaje de programación.

En la mayoría de páginas web, no tiene sentido utilizar la etiqueta <code>. Sin

embargo, en muchas páginas web técnicas que incluyen listados de programas,

trozos de código o etiquetas HTML, lo correcto es emplear la etiqueta <code>.

Al igual que sucede con los elementos <pre>, el texto

encerrado por la etiqueta <code> se muestra con un tipo de

letra especial de ancho fijo.

Por el contrario, el elemento <code> no respeta los

espacios en blanco ni las líneas, por lo que su

comportamiento es similar a la etiqueta <p>

Page 50: HTML  DAW

50

Una consideración importante directamente relacionada con el texto de las

páginas HTML es la codificación de los caracteres y la inserción de caracteres

especiales. Algunos de los caracteres que se utilizan habitualmente en los textos

no se pueden incluir directamente en las páginas web:Los caracteres que utiliza HTML para definir sus etiquetas (<, > y ") no se pueden

utilizar libremente.

Los caracteres propios de los idiomas que no son el inglés (ñ, á, ç, ¿, ¡, etc.) pueden

ser problemáticos dependiendo de la codificación de caracteres utilizada.

La solución a la limitación consiste en sustituir los caracteres reservados de

HTML por unas expresiones llamadas entidades HTML y que representan a

cada carácter:

Entidad Carácter Descripción Traducción

&lt; < less than signo de menor que

&gt; > more than signo de mayor que

&amp; & ampersand ampersand

&quot; " quotation mark comillas

&nbsp; (espacio

en blanco) non-breaking space espacio en blanco

&apos; ' apostrophe apóstrofo

Page 51: HTML  DAW

51

http://www.w3schools.com/tags/ref_ascii.asp

http://www.w3schools.com/tags/ref_entities.asp

http://www.w3schools.com/tags/ref_symbols.asp

Page 52: HTML  DAW

52

Page 53: HTML  DAW

53

Las imágenes son uno de los elementos más importantes de las páginas web. De

hecho, prácticamente todas las páginas web contienen alguna imagen y la

mayoría incluyen decenas de imágenes. Dentro de las imágenes que se pueden

incluir en una página HTML se deben distinguir dos tipos: las imágenes de

contenido y las imágenes de adorno.

Las imágenes de contenido son las que proporcionan información y

complementan la información textual. Las imágenes de adorno son las que se

utilizan para hacer bordes redondeados, para mostrar pequeños iconos en las

listas de elementos, para mostrar fondos de página, etc. Las imágenes de

contenido se incluyen directamente en el código HTML mediante la etiqueta

<img> y las imágenes de adorno no se deberían incluir en el código HTML,

sino que deberían emplearse hojas de estilos CSS para mostrarlas.

<img src="/imagenes/proyecto1.png" alt="Imagen del Proyecto 1" />

Añada una etiqueta p o br antes de una imagen para que empiece en su propia línea.

Existe un atributo desaprobado (border=“n” la anchura en pixel) que añade o elimina un borde a la imagen

Las imágenes se alinean a la izquierda por defecto. Puede cambiar la alineación o hacer que el texto rodee la

imagen

Page 54: HTML  DAW

54

<img src="/imagenes/proyecto1.png" alt=“sustituye a la imagen"

title=“descripción emergente” />

Page 55: HTML  DAW

55

<img src=" logo_ies_sin_Fondo2.gif" alt=“sustituye a la imagen"

title=“descripción emergente”/>

<br />

<img src=" logo_ies_sin_Fondo2.gif" alt=“sustituye a la imagen"

title=“descripción emergente” width=“300” height=“287”/>

<br />

Los atributos width y height se utilizan para indicar la anchura y

altura con la que se muestran las imágenes .

Si el valor del atributo width o height se indica mediante un

número entero, el navegador supone que hace referencia a la

unidad de medida píxel.

También es posible indicar la anchura y altura en forma de

porcentaje. En este caso, el porcentaje hace referencia a la

altura/anchura del elemento en el que está contenida la imagen.

Si la imagen no se encuentra dentro de ningún otro elemento,

hace referencia a la anchura/altura total de la página.

Page 56: HTML  DAW

56

<img src=" logo_ies_sin_Fondo2.gif" alt=“sustituye a la imagen"

title=“descripción emergente” width=“100” height=“287”/>

<br />

<img src=" logo_ies_sin_Fondo2.gif" alt=“sustituye a la imagen"

title=“descripción emergente” width=“100%” height=“287”/>

Page 57: HTML  DAW

57

<body>

<h1>Prueba de alinear texto</h1>

<p> …………………</p>

<img src="logo_ies_sin_Fondo2.gif" alt="sustituye a la imagen" title="descripcíon

emergente" />

</body>

Page 58: HTML  DAW

58

Se puede utilizar el atributo align para hacer que las imágenes floten a un

lado de la página y el texto y el resto de elementos se sitúen en el otro.

<body>

<h1>Prueba de alinear texto</h1>

<img src="logo_ies_sin_Fondo2.gif" alt="sustituye a la imagen"

title="descripcíon emergente" align=“left”/>

<p> …………………</p>

<img src="logo_ies_sin_Fondo2.gif" alt="sustituye a la imagen"

title="descripcíon emergente" align=“right”/>

<p> …………………</p>

</body>

Page 59: HTML  DAW

59

Ajustar elementos

Page 60: HTML  DAW

60

Una imagen flotante afecta a todos los elementos que siguen a

continuación, a menos que se inserte un salto de línea especial. El

atributo clear añadido a una etiqueta br indica que el texto no debería

empezar hasta que el margen especificado esté libre (es decir al final de

la imagen o imágenes).

<body>

<h1>Prueba de alinear texto</h1>

<img src="logo_ies_sin_Fondo2.gif" alt="sustituye a la imagen"

title="descripcíon emergente" align=“left”/>

<p> …………………</p>

<br clear="left" />

<img src="logo_ies_sin_Fondo2.gif" alt="sustituye a la imagen"

title="descripcíon emergente" align=“right”/>

<p> …………………</p>

</body>Comprueba el efecto entre br y p en ambos el atributo aling

clear=“all” detiene el flujo de texto

hasta que se haya terminado todas

las imágenes

Page 61: HTML  DAW

61

Page 62: HTML  DAW

62

Cuando se utiliza el atributo align no se deja ningún espacio entre las

imágenes flotantes y los elementos que fluyen a continuación. En esta

situación podemos utilizar el atributo vspace=“x” donde x es el número

de píxeles de espacio a añadir tanto a la derecha como a la izquierda de

la imagen, y/o atributo hsapce=“x”, donde x es el número de píxeles de

espacio a añadir tanto arriba como abajo.

<body>

<h1>Prueba de alinear texto</h1>

<img src="logo_ies_sin_Fondo2.gif" alt="sustituye a la imagen"

title="descripcíon emergente" align=“left” vspace=“100”

hspace=“100”/> />

<p> …………………</p>

</body> Un píxel o pixel, plural píxeles (acrónimo del inglés

picture element, "elemento de imagen") es la menor

unidad homogénea en color que forma parte de una

imagen digital, ya sea esta una fotografía, un fotograma

de vídeo o un gráfico.

Page 63: HTML  DAW

63

Page 64: HTML  DAW

64

Posiblemente el uso más esperado del atributo align sea para alinear

imágenes con texto. Puede alinear una imagen de diferentes formas en

una línea de un párrafo.

Sin embargo, indicar que hay que tener cuidado (uso de tablas, capas,

css) con múltiples imágenes en la misma línea, ya que diferentes

opciones de align tiene efectos diferentes dependiendo de si la imagen es

más alta y de cuál aparece primero.

Page 65: HTML  DAW

65

<p> <img src="logo_ies_sin_Fondo2.gif" width="100" height="100" /> imagen 1: No usamos align

<img src="moodle.jpg“ /> imagen 2: No usamos align </p>

<br clear="all" />

<p> <img src="logo_ies_sin_Fondo2.gif" width="100" height="100" /> imagen 1: No usamos align

<img src="moodle.jpg" align="texttop" /> imagen 2: texttop </p>

<br clear="all" />

<p> <img src="logo_ies_sin_Fondo2.gif" width="100" height="100" /> imagen 1: No usamos align

<img src="moodle.jpg" align="top" /> imagen 2: top </p>

<br clear="all" />

<p> <img src="logo_ies_sin_Fondo2.gif" width="100" height="100" /> imagen 1: No usamos align

<img src="moodle.jpg" align="middle" /> imagen 2: middle</p>

<br clear="all" />

<p> <img src="logo_ies_sin_Fondo2.gif" width="100" height="100" > imagen 1: No usamos align

<img src="moodle.jpg" align="absmiddle" /> imagen 2: absmiddle </p>

<br clear="all" />

<p> <img src="logo_ies_sin_Fondo2.gif" width="100" height="100" align="texttop" /> imagen 1:

texttop <img src="moodle.jpg" align="bottom" /> imagen 2: bottom </p>

<br clear="all" />

<p> <img src="logo_ies_sin_Fondo2.gif" width="100" height="100" align="texttop" /> imagen 1:

texttop <img src="moodle.jpg" align="absbottom" /> imagen 2: No usamos align </p>

Page 66: HTML  DAW

66

texttop alinea la imagen 2con la parte superior deltexto en línea

top alinea la imagen 2 conel elemento más alto dela línea

middle alinea la imagen 2con la mitad del elementomás grande de la línea

Page 67: HTML  DAW

67

absmiddle alinea la mitadde la imagen 2 con lamitad del elemento másgrande de la línea

bottom alinea la parteinferior de la imagen 2con la línea base del texto

absbottom alinea la parteinferior imagen 2 con laparte inferior delelemento más grande dela línea

Page 68: HTML  DAW

68

Líneas divisorias: Se crean con la tag <hr> que no tiene tag de cierre ni lleva

texto asociado.

<hr width="100" align="center" color="#000099">

<hr width="60%" align="left" noshade="noshade"> <!-- NOSHADE: Elimina el efecto de sombra de

la línea -->

<hr width="20%" size="20" color="#3333CC">

<hr width="100" size="200" color="#CC3300">

Page 69: HTML  DAW

69

Page 70: HTML  DAW

70

El lenguaje de marcado HTML se definió teniendo en cuenta algunas de las

características que existían en ese momento para la publicación digital de contenidos.

Entre los conceptos utilizados en su creación, se encuentra el mecanismo de

"hipertexto".

De hecho, las letras "HT" de la sigla HTML significan "hipertexto" (hypertext en

inglés), por lo que el significado completo de HTML podría traducirse como "lenguaje

de marcado para hipertexto".

La incorporación del hipertexto fue una de las claves del éxito del lenguaje HTML, ya

que permitió crear documentos interactivos que proporcionan información adicional

cuando se solicita. El elemento principal del hipertexto es el "hiperenlace", también

llamado "enlace web" o simplemente "enlace".

Los enlaces se utilizan para establecer relaciones entre dos recursos. Aunque la mayoría

de enlaces relacionan páginas web, también es posible enlazar otros recursos como

imágenes, documentos y archivos.

Una característica que no se suele tener en cuenta en los enlaces es que están formados

por dos extremos y un sentido. En otras palabras, el enlace comienza en un recurso y

apunta hacia otro recurso. Cada uno de los dos extremos se llaman "anchors" en inglés,

que se puede traducir literalmente como "anclas".

Page 71: HTML  DAW

71

Antes de empezar a crear enlaces, es necesario comprender y

dominar el concepto de URL. El acrónimo URL (del inglés

Uniform Resource Locator) hace referencia al identificador único

de cada recurso disponible en Internet. Las URL son esenciales

para crear los enlaces, pero también se utilizan en otros elementos

HTML como las imágenes y los formularios.

Identificar de forma

única a ese recurso

Permitir localizar de

forma eficiente

ese recurso

URL

Page 72: HTML  DAW

72

http://www.librosweb.es/xhtml/capitulo4.html

Protocolo (http://): el mecanismo que debe utilizar el navegador paraacceder a ese recurso. Todas las páginas web utilizan http://. Las páginasweb seguras (por ejemplo las de los bancos y las de los servicios de email)utilizan https:// (se añade una letra s).

Servidor (www.librosweb.es): simplificando mucho su explicación, se tratadel ordenador en el que se encuentra guardada la página que se quiereacceder. Los navegadores son capaces de obtener la dirección de cadaservidor a partir de su nombre.

Ruta (/xhtml/capitulo4.html): camino que se debe seguir, una vez que se ha llegado alservidor, para localizar el recurso específico que se quiere acceder.

Page 73: HTML  DAW

73

http://www.alistapart.com/comments/webstandards2008.php?page=5#42

Protocolo (http://)

Servidor (www.alistapart.com)

Ruta (/comments/webstandards2008.php)

Consulta (?page=5): información adicional necesaria la página. Valores de entrada(atributo/valor).Siempre comienza con el carácter ? y contiene una sucesión de palabrasseparadas por = y &

Sección (#42): permite que el navegador se posicione automáticamente en unasección/ancla de la página web. Siempre comienza con el caracter #

Page 74: HTML  DAW

74

Como las URL utilizan los caracteres :, =, & y / para separar sus partes,

estos caracteres están reservados y no se pueden utilizar libremente. Además,

algunos caracteres no están reservados pero pueden ser problemáticos si se

utilizan en la propia URL.

Si es necesario incluir estos caracteres reservados y especiales en una URL,

se sustituyen por combinaciones de caracteres seguros. Esta sustitución se

denomina codificación de caracteres y el servidor realiza el proceso inverso

(decodificación) cuando le llega una URL con los caracteres codificados.

Carácter original Carácter codificado Carácter original Carácter codificado

/ %2F ? %3F

: %3A @ %40

= %3D & %26

" %22 \ %5C

' %60 ~ %7E

(espacio en blanco) %20 | %7C

Page 75: HTML  DAW

75

Por otra parte, aunque desde hace tiempo ya es posible incluir en las URL

caracteres de otros idiomas que no sean el inglés, aún no es completamente

seguro utilizar estos caracteres en las URL. Si se utilizan letras como ñ, á, é

o ç, es posible que algunos navegadores no las interpreten de forma

correcta.

La solución consiste en codificar todos los caracteres que no existen en

inglés. La siguiente tabla muestra la codificación de los caracteres más

utilizados:

Carácter original Carácter codificado Carácter original Carácter codificado

ñ %F1 Ñ %D1

á %E1 Á %C1

é %E9 É %C9

í %ED Í %CD

ó %F3 Ó %D3

ú %FA Ú %DA

ç %E7 Ç %C7

Page 76: HTML  DAW

76

Teniendo en cuenta las dos tablas anteriores de codificación

de caracteres, es fácil crear las URL correctas sin caracteres

problemáticos:

<!-- URL problemática --> http://www.ejemplo.com/estaciones/otoño.html

<!-- URL correcta --> http://www.ejemplo.com/estaciones/oto%F1o.html

<!-- URL problemática --> http://www.ejemplo.com/ruta/nombre página.html

<!-- URL correcta --> http://www.ejemplo.com/ruta/nombre%20p%E1gina.html

Page 77: HTML  DAW

77

Los enlaces en HTML se crean mediante la etiqueta <a> (su nombre

viene del inglés "anchor", literalmente traducido como "ancla").

Atributos específicos:name = "texto" - Permite nombrar al enlace para que se pueda

acceder desde otros enlaces.

href = "url" - Indica la URL del recurso que se quiere enlazar.

<a href="http://www.google.com">Página principal de Google</a>

<a href="http://www.ejemplo.com/fondo_escritorio.jpg">Imagen interesante </a>

<a href=“../../informe.pdf">Descargar informe completo [PDF]</a>

<a href="http://www.ejemplo.com/informe.doc">Descargar informe completo [DOC]</a>

<a href="/">Volver al inicio</a>

Referencia relativa

Referencia absoluta

Page 78: HTML  DAW

78

El otro atributo básico de la etiqueta <a> es name, que permite definir

enlaces dentro de una misma página web. Si una página es muy larga,

puede ser útil mostrar enlaces de tipo "Saltar hasta la segunda sección",

"Volver al principio de la página", etc.

<a name="primera_seccion"></a>

<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Mauris id ligula eu felis

adipiscing ultrices. Duis gravida leo ut lectus. Praesent condimentum mattis

ligula.</p> ...

<a name="segunda_seccion"></a>

<p>Pellentesque malesuada. In in lacus. Phasellus erat erat, lacinia a, convallis eu,

nonummy et, odio. Aenean urna elit, ultrices id, placerat varius, facilisis eget,

dolor.</p>

El atributo name permite crear "enlaces vacíos" que hacen referencia a

secciones dentro de una misma página. Una vez definidos los "enlaces

vacíos", es posible crear un enlace que apunte directamente a una sección

concreta.

Page 79: HTML  DAW

79

<a name="inicio"></a>

…….

<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Mauris id

ligula eu felis adipiscing ultrices. Duis gravida leo ut lectus. Praesent

condimentum mattis ligula.</p>

……….

<a href="#inicio">Volver al inicio de la página</a> ...

<p>Pellentesque malesuada. In in lacus. Phasellus erat erat, lacinia a,

convallis eu, nonummy et, odio. Aenean urna elit, ultrices id, placerat

varius, facilisis eget, dolor.</p>

<a href="#inicio">Volver al inicio de la página</a>

……….

Los enlaces directos a secciones también funcionan con el atributo id de

cualquier elemento. El siguiente ejemplo es equivalente al ejemplo

anterior:

Page 80: HTML  DAW

80

<h1 id="inicio">Título de la página</h1>

<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Mauris id

ligula eu felis adipiscing ultrices. Duis gravida leo ut lectus. Praesent

condimentum mattis ligula.</p>

…………….

<a href="#inicio">Volver al inicio de la página</a>

...

<p>Pellentesque malesuada. In in lacus. Phasellus erat erat, lacinia a,

convallis eu, nonummy et, odio. Aenean urna elit, ultrices id, placerat

varius, facilisis eget, dolor.</p>

<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />

<a href="#inicio">Volver al inicio de la página</a>

...

Page 81: HTML  DAW

81

Los puntos de destino permite abrir un vínculo en una determinada ventana, o

incluso en una nueva creada especialmente para ese vínculo. De esta forma, la

página que contiene el vínculo permanece abierta, permitiendo al usuario

desplazarse entre la página de vínculos y la información de cada uno de esos

vínculos.

Para abrir vínculos en ventanas específicas se utiliza el atributo target=“ventana”,

donde ventana es el nombre de la ventana donde se mostrará la página

correspondiente:

target="_blank"

Fuerza que el documento referenciado por el

enlace sea mostrado en una nueva ventana del

navegador.

target="_self"

Usando este valor el documento enlazado será

mostrado en el mismo frame o ventana donde

está el enlace. Este valor es especialmente útil

cuando se ha usado la etiqueta BASE para

especificar un frame destino por defecto distinto

del actual.

target="_parent"

Este valor provoca que el documento sea mostrado

en el FRAMESET padre del frame actual.

target="_top"

Fuerza a que el enlace sea mostrado usando todo el

espacio de la ventana del navegador destruyendo

toda estructura de frames. Este valor debe ser

usado siempre que creemos un enlace a una página

externa a nuestro sitio web.

Page 82: HTML  DAW

82

Un vínculo, por defecto, se abre en la misma ventana o marco que contiene

ese vínculo. Puede elegir otro destino para cada vínculo de forma

individual o específica un punto de destino por defecto para todos los

vínculos de la página.

<head>

…..

<base target=“destino_por_defecto” />

……

</head>

Page 83: HTML  DAW

83

Incluir enlaces básicos mediante la etiqueta <a> es muy sencillo. Sin

embargo, la definición completa de <a> es muy compleja, ya que dispone

de varios atributos específicos importantes. A continuación se muestra la

definición completa de <a>:

Atributos

específicos

name = "texto" - Permite nombrar al enlace para que se pueda

acceder desde otros enlaces

href = "url" - Indica la URL del recurso que se quiere enlazar

hreflang = "codigo_idioma" - Idioma del recurso enlazado

type = "tipo_de_contenido" - Permite "avisar" al navegador

sobre el tipo de contenido que se enlaza (imágenes, archivos,

etc.) para que pueda preparase en caso de que no entienda ese

contenido

rel = "tipo_de_relacion" - Describe la relación del documento

actual con el recurso enlazado

rev = "tipo_de_relacion" - Describe la relación del recurso

enlazado con el documento actual

charset = "tipo_de_charset" - Describe la codificación del

recurso enlazado

Page 84: HTML  DAW

84

Idioma del enlace (hreflang)

El enlace puede indicar al navegador el idioma del recurso que se enlaza.

Para establecer el valor del idioma, se utiliza un código estandarizado de dos

letras. Además del idioma genérico, también se puede indicar una variación

idiomática. Ejemplo de códigos de idioma más utilizados:

La lista completa de códigos de idioma está definida en el estándar ISO 639.

http://xml.coverpages.org/iso639a.html

Código Idioma Variación idiomática

en Inglés -

en-US Inglés Estados Unidos

es Español -

es-ES Español España

es-AR Español Argentina

Page 85: HTML  DAW

85

Tipo de contenido (type)

Se utiliza para notificar al navegador sobre el tipo de contenido que se

enlaza. Se indica mediante una cadena de texto cuyos posibles valores

también están estandarizados.

Los valores de los contenidos más utilizados son los siguientes: "text/html"

(páginas HTML), "image/png" (imágenes con formato PNG), "image/gif"

(imágenes con formato GIF), "text/css" (hojas de estilo CSS),

"application/rss+xml" (archivos RSS).

La lista completa de tipos de contenido se define en los estándares RFC

2045 y RFC 2046.

http://www.iana.org/assignments/media-types/

Page 86: HTML  DAW

86

Tipo de relación (rel y rev)

Proporciona información adicional muy útil para los navegadores y para los

motores de búsqueda como Google. Permiten indicar la relación que la página

actual tiene con la página a la que se enlaza (atributo rel) y la relación que tiene

la página enlazada con la página actual (atributo rev).

Los tipos de relación definidos son los siguientes:

alternate – Indica que es una versión alternativa al documento actual .

stylesheet – Indica que se ha enlazado una hoja de estilos

start – Indica que se trata del primer documento de una colección de documentos.

next – Indica que es el documento que sigue al actual dentro de una secuencia lógica.

prev - Indica que es el documento que precede al actual dentro de una secuencia lógica.

……

La especificación oficial de HTML define la lista completa de tipos de relaciones que se pueden

utilizar. http://www.w3.org/TR/1999/REC-html401-19991224/types.html#type-links

Page 87: HTML  DAW

87

Codificación de caracteres (charset)

Además del idioma, tipo de contenido y relación del recurso que se enlaza, los

enlaces también pueden indicar la codificación de caracteres que utiliza la

página web enlazada.

Los valores que se pueden utilizar también están estandarizados y las

codificaciones más utilizadas son UTF-8 y ISO-8859-1, aunque existen

decenas de códigos definidos (ISO-10646-UCS-2, IBM852, Big5-HKSCS,

windows-1252, HZ-GB-2312).

El organismo IANA publica la lista completa de codificaciones de caracteres

disponibles: http://www.iana.org/assignments/character-sets

<a href="http://www.google.com" hreflang="en" type="text/html" charset="UTF-8">Página

principal de Google</a>

<a href="http://www.ejemplo.com/fondo_escritorio.jpg" type="image/jpg">Imagen interesante para

un fondo de escritorio</a>

Page 88: HTML  DAW

88

Otros tipos de Enlaces

Además de estos enlaces, las páginas HTML pueden incluir otro tipo de enlaces

que cargan los recursos automáticamente. Si una página HTML utiliza archivos

CSS para aplicar estilos a sus contenidos, no es lógico que los enlace con la

etiqueta <a> y espere a que el usuario pinche sobre el enlace para así cargar los

archivos CSS. De la misma forma, muchas páginas web dinámicas necesitan

que el navegador cargue varios archivos JavaScript para funcionar

correctamente.

HTML define las etiquetas <script> y <link> para enlazar recursos que se

deben cargar automáticamente. Cuando el navegador encuentra alguna de estas

dos etiquetas, descarga los recursos enlazados y los aplica a la página web.

Page 89: HTML  DAW

89

Otros tipos de Enlaces

Aunque la etiqueta <script> permite enlazar código de varios lenguajes de

programación, el uso habitual de <script> consiste en enlazar un archivo

JavaScript externo:

<head>

<script type="text/javascript“ src="http://www.ejemplo.com/js/inicializar.js">

</script>

</head>

El atributo type utilizado habitualmente para los archivos JavaScript es

"text/javascript". El atributo src es equivalente al atributo href de los enlaces

creados con la etiqueta <a>. La URL indicada en el atributo src puede ser

absoluta o relativa y externa o interna.

Page 90: HTML  DAW

90

Otros tipos de Enlaces

Además de enlazar un archivo JavaScript externo, la misma etiqueta <script>

también permite incluir en la página web un bloque de código JavaScript:

<html>

<head>

<script type="text/javascript">

//<![CDATA[

window.onload = function() { alert("La página se ha cargado completamente");

} //]]>

</script>

</head>

<body> ... </body>

</html>

Page 91: HTML  DAW

91

Otros tipos de Enlaces

Cuando se incluye código JavaScript en la propia página XHTML, se debe

insertar dentro de una sección especial llamada CDATA. Para ello, el código

JavaScript se debe encerrar entre <![CDATA[ y ]]>. Cuando el navegador

encuentra una sección de este tipo, no procesa su contenido como si fuera

XHTML y por tanto no tiene en cuenta los posibles errores de validación de

XHTML.

De esta forma, se pueden construir páginas XHTML válidas y código JavaScript

correcto. En los capítulos posteriores se profundiza en el concepto de validación

de páginas XHTML. Los caracteres // al comienzo y al final de la sección

CDATA son necesarios para los navegadores que no son capaces de procesar

correctamente estas secciones.

La etiqueta <script> (tanto cuando enlaza, como cuando incluye directamente el

código) puede aparecer en cualquier parte del documento HTML, aunque

normalmente se incluye dentro de la cabecera de la página (<head>...</head>).

Page 92: HTML  DAW

92

Otros tipos de Enlaces

La segunda etiqueta de XHTML para enlazar recursos es <link>, que permite

enlazar y relacionar la página con otros recursos externos.

El uso habitual de la etiqueta <link> es el de enlazar las hojas de estilos CSS

utilizadas por las páginas web:

<head> ...

<link rel="stylesheet" type="text/css" href="/css/comun.css" />

</head>

En este caso, es habitual establecer los atributos rel y type para indicar el tipo de

recurso enlazado y su relación con la página web. La URL del recurso enlazado

se indica en el atributo href, que admite tanto URL absolutas como relativas.

Page 93: HTML  DAW

93

Enlace al inicio del sitio web

<a href="/">Inicio</a>

Enlace a un email

<a href="mailto:[email protected]" title="Dirección de email para solicitar

más información"> Solicita más información </a>

!-- Envío del correo electrónico a varias direcciones a la vez -->

<a href="mailto:[email protected],[email protected]">Solicita más

información</a>

<!-- Añadir un "asunto" inicial al correo electrónico -->

<a href="mailto:[email protected]?subject=Solicitud de más información">Solicita más

información</a>

<!-- Añadir un texto inicial en el cuerpo del correo electrónico -->

<a href="mailto:[email protected]?body=Estaría interesado en solicitar más información

sobre sus productos">Solicita más información</a>

Page 94: HTML  DAW

94

Enlace a un archivo FTP

Para enlazar un archivo almacenado en un servidor FTP, la parte del protocolo de

la URL debe cambiar de http:// a ftp://:

<a href="ftp://ftp.ejemplo.com/ruta/archivo.zip" title="Archivo comprimido de

los contenidos"> Descarga un ZIP con todos los contenidos </a>

Enlazar varias hojas de estilos CSS

<link rel="stylesheet" type="text/css" href="/css/comun.css" />

<link rel="stylesheet" type="text/css" href="/css/secciones.css" />

Page 95: HTML  DAW

95

Enlazar hojas de estilos CSS para diferentes medios

<link rel="stylesheet" type="text/css" href="/css/comun.css" media="screen,

projection" />

<link rel="stylesheet" type="text/css" href="/css/impresora.css" media="print" />

<link rel="stylesheet" type="text/css" href="/css/movil.css" media="handheld" />

Enlazar el favicon

El favicon o icono para favoritos es el pequeño icono que muestran las páginas en

varias partes del navegador. Dependiendo del navegador (Firefox ..) que se utilice,

este icono se muestra en la barra de direcciones, en la barra de título del

navegador y/o en el menú de favoritos/marcadores.

<link rel="shortcut icon" href="/favicon.ico" type="image/ico" />

Page 96: HTML  DAW

96

Enlazar un archivo RSS

<link rel="alternate" type="application/rss+xml" title="Resumen de todos los

artículos del blog" href="/feed.xml" />

Enlazar hojas de estilos, favicon y RSS

<head> ...

<link rel="stylesheet" type="text/css" href="/css/impresora.css" media="print" />

<link rel="stylesheet" type="text/css" href="/css/movil.css" media="handheld" />

<style type="text/css" media="screen, projection">

@import '/css/main.css';

</style>

<link rel="shortcut icon" href="/favicon.ico" type="image/ico" />

<link rel="alternate" type="application/rss+xml" title="Resumen ..” href="/feed.xml" /> ...

</head>

Page 97: HTML  DAW

97

Las combinaciones de teclas permiten que los visitantes

seleccionen y activen vínculos sin utilizar el ratón, para ello se

utiliza el atributo accesskey=“tecla o número”.

<body>

<h3>Conbinaci&oacute;n de teclas</h3>

<p><a href="http://www.um.es" accesskey="h">Lenguajes de Marcas</a> (Alt-h,

Ctrl-h)</p>

<p><a href="www.carm.es" accesskey="x">Bases de Datos</a> (Alt-x, Ctrl-x)</p>

</body>

Page 98: HTML  DAW

98

Muchos navegadores permiten que los usuarios naveguen por los

vínculos, mapas de imágenes y elementos de formulario con la

tecla Tab. Para establecer el orden de tabulación utilizaremos el

atributo tabindex=“n”, donde n es el número que establece el orden

de tabulación comprendido entre 0 y 32767.

<body>

<h3>Conbinaci&oacute;n de teclas</h3>

<p><a href="http://www.um.es" tabindex="2">Lenguajes de Marcas</a> (Alt-h,

Ctrl-h)</p>

<p><a href="www.carm.es" tabindex="1">Bases de Datos</a> (Alt-x, Ctrl-x)</p>

</body>

Page 99: HTML  DAW

99

Page 100: HTML  DAW

100

El lenguaje HTML define tres tipos diferentes de listas para agrupar los

elementos: listas no ordenadas (se trata de una colección simple de elementos

en la que no importa su orden), listas ordenadas (similar a la anterior, pero los

elementos están numerados y por tanto, importa su orden) y listas de definición

(un conjunto de términos y definiciones similar a un diccionario).

Page 101: HTML  DAW

101

<ol><li> Introducción al Módulo Profesional de LMSGI. </li>

<li> Introducción a los Lenguajes de Programación.</li>

<li> Introducción al Lenguaje de Marcas - XML.</li>

<li> XHTML, Extensible Hypertext Markup Language. </li>

<li> WebEstilo. Hojas de estilo en cascada.</li>

<li> Lenguaje javascript. </li>

</ol>

Page 102: HTML  DAW

102

<ul><li> Introducción al Módulo Profesional de LMSGI. </li>

<li> Introducción a los Lenguajes de Programación.</li>

<li> Introducción al Lenguaje de Marcas - XML.</li>

<li> XHTML, Extensible Hypertext Markup Language. </li>

<li> WebEstilo. Hojas de estilo en cascada.</li>

<li> Lenguaje javascript. </li>

</ul>

Page 103: HTML  DAW

103

Su funcionamiento es similar al de un diccionario, ya que cada elemento de

la lista está formado por términos y definiciones. La etiqueta <dl> crea la

lista de definición y las etiquetas <dt> y <dd> definen respectivamente el

término y la descripción de cada elemento de la lista.

<dl>

<dt> Introducción al Módulo Profesional de LMSGI. </dt>

<dd> esta unidad de trabajo de encarga de ............</dd>

<dt> Introducción a los Lenguajes de Programación.</dt>

<dd> esta unidad de trabajo de encarga de ............</dd>

……

</dl>

Page 104: HTML  DAW

104

Cuando se crea un lista, se ordenada o no ordenada, también puede elegirse

el tipo de marcador que debe aparecer a la izquierda de cada elementos de la

lista.

<ul>

<li style="list-style-type:square"> Introducción al Módulo Profesional de LMSGI. </li>

<li> Introducción a los Lenguajes de Programación.</li>

<li> Introducción al Lenguaje de Marcas - XML.</li>

</ul>

<ol>

<li style="list-style-type:upper-alpha"> XHTML, Extensible Hypertext Markup Language. </li>

<li> WebEstilo. Hojas de estilo en cascada.</li>

<li> Lenguaje javascript. </li>

</ol>

http://www.w3schools.com/CSS/pr_list-style-type.asp

Page 105: HTML  DAW

105

Es posible empezar la enumeración de una determinada lista ordenada con

algo que sea diferente al 1 (el valor por defecto).

<ol start="2">

<li> XHTML, Extensible Hypertext Markup Language. </li>

<li> WebEstilo. Hojas de estilo en cascada.</li>

<li value="10"> Lenguaje javascript. </li>

<li> Lenguaje de Marcas XML </li>

</ol>

Page 106: HTML  DAW

106

<ul>

<li> Introducción al Módulo Profesional de LMSGI. </li>

<li> Introducción a los Lenguajes de Programación.</li>

<li style="list-style-image:url(whstart.ico)"> Introducción al Lenguaje de Marcas -

XML.</li>

<li> XHTML, Extensible Hypertext Markup Language. </li>

<li> WebEstilo. Hojas de estilo en cascada.</li>

<li style="list-style-image:url(dictmain.ico)"> Lenguaje javascript. </li>

<li> Lenguaje de Marcas XML </li>

</ul>

Page 107: HTML  DAW

107

<ul>

<li> Introducción al Módulo Profesional de LMSGI. </li>

<li> Introducción a los Lenguajes de Programación.</li>

<li style="list-style-position:inside"> Introducción al Lenguaje de Marcas - XML.</li>

<li> XHTML, Extensible Hypertext Markup Language. </li>

<li style="list-style-position:outside"> WebEstilo. Hojas de estilo en cascada.</li>

<li> Lenguaje javascript. </li>

<li> Lenguaje de Marcas XML </li>

</ul>

inside para mostrar los marcadores

ajustados al texto de los elementos

de la lista, o outside para mostrar

los marcadores a la izquierda del

texto del elemento de la lista

Page 108: HTML  DAW

108

<ul>

<li style="list-style:inside circle"> Introducción al Módulo Profesional de LMSGI. </li>

<li> Introducción a los Lenguajes de Programación.</li>

<li style="list-style:inside circle url(whstart.ico)"> Introducción....</li>

<li> XHTML, Extensible Hypertext Markup Language. </li>

<li> WebEstilo. Hojas de estilo en cascada.</li>

</ul>

Page 109: HTML  DAW

109

Page 110: HTML  DAW

110

Tablas

Tablas básicas

Tablas avanzadas

Establecer opciones

Page 111: HTML  DAW

111

Desde sus primeras versiones, HTML incluyó el soporte para crear tablas de datos en

las páginas web. Además de ser sencillo, el modelo definido por HTML es muy flexible

y bastante completo.

Las tablas en HTML utilizan los mismos conceptos de filas, columnas, cabeceras y

títulos que los que se utilizan en cualquier otro entorno de publicación de documentos:

Page 112: HTML  DAW

112

Las tablas de HTML puede contener elementos simples, agrupaciones de filas

y de columnas, cabeceras y pies de tabla, subdivisiones, cabeceras múltiples y

otros elementos complejos.

Hasta hace unos años, las tablas también se utilizaban para definir la estructura

de las páginas web. La cabecera de la página era una fila de una gran tabla, el

pie de página era otra fila de esta tabla y la zona de contenidos estaba formada

por varias columnas dentro de esa gran tabla.

Aunque algunos malos diseñadores siguen utilizando hoy en día las tablas para

definir la estructura completa de las páginas web, se trata de una técnica

obsoleta y nada recomendable. El motivo es que se complica en exceso el

código HTML y su mantenimiento es muy complejo. La solución correcta

para definir la estructura de las páginas consiste en la utilización de hojas

de estilos CSS.

Page 113: HTML  DAW

113

Las tablas más sencillas de HTML se definen con tres etiquetas: <table> para

crear la tabla, <tr> para crear cada fila y <td> para crear cada columna.

<table>

<tr>

<th>Tema</th>

<th>Duraci&oacute;n</th>

</tr>

<tr>

<td>XHMTL</td>

<td>30 horas </td>

</tr>

<tr>

<td>CSS</td>

<td>20 horas </td>

</tr>

</table>

Page 114: HTML  DAW

114

Las tablas más sencillas de HTML se definen con tres etiquetas: <table> para

crear la tabla, <tr> para crear cada fila y <td> para crear cada columna.

<table>

<tr>

<th>Tema</th>

<th>Duraci&oacute;n</th>

</tr>

<tr>

<td>XHMTL</td>

<td>30 horas </td>

</tr>

<tr>

<td>CSS</td>

<td>20 horas </td>

</tr>

</table> La etiqueta <table> encierra todas las filas y columnas de la

tabla. Las etiquetas <tr> (del inglés "table row") definen

cada fila de la tabla y encierran todas las columnas. Por

último, la etiqueta <td> (del inglés "table data cell") define

cada una de las columnas de las filas, aunque realmente

HTML no define columnas sino celdas de datos.

Page 115: HTML  DAW

115

abbr = "texto" - Permite describir el contenido de la celda (se emplea

sobre todo con los navegadores de voz utilizados por personas

discapacitadas).

scope = "col, row, colgroup, rowgroup" - Indica las celdas para las que

esta celda será su cabecera. Ej: scope="col" indica que esta celda es la

cabecera de todas las demás celdas que están en la misma columna.

colspan = "numero" - Número de columnas que ocupa esta celda.

rowspan = "numero" - Número de filas que ocupa esta celda.

Por otra parte, HTML define la etiqueta <caption> para establecer la leyenda o

título de una tabla. La etiqueta debe colocarse inmediatamente después de la

etiqueta <table> y cada tabla sólo puede incluir una etiqueta <caption>.

Page 116: HTML  DAW

116

<table>

<tr>

<th scope="col">Nombre producto</th>

<th scope="col">Precio unitario</th>

<th scope="col">Unidades</th>

<th scope="col">Subtotal</th>

</tr>

<tr>

<td>Reproductor MP3 (80 GB)</td>

<td>192.02</td>

<td>1</td>

<td>192.02</td>

</tr>

<tr>

<td>Fundas de colores</td>

<td>2.50</td>

<td>5</td>

<td>12.50</td>

</tr>

<tr>

<td>Reproductor de radio &amp; control

remoto</td>

<td>12.99</td>

<td>1</td>

<td>12.99</td>

</tr>

<tr>

<th scope="row">TOTAL</th>

<td>-</td>

<td>7</td>

<td><strong>207.51</strong></td>

</tr>

</table>

Page 117: HTML  DAW

117

Las tablas complejas suelen disponer de una estructura irregular que junta

varias columnas para formar una columna ancha o une varias filas para formar

una fila más alta que las demás. Para fusionar filas o columnas, se utilizan los

atributos rowspan y colspan respectivamente.

<table border="1">

<tr>

<td colspan="2">A</td>

</tr>

<tr>

<td>B</td>

<td>C</td>

</tr>

</table>

La primera fila de la tabla está formada

sólo por una celda, mientras que la

segunda fila está formada por dos celdas.

Page 118: HTML  DAW

118

Las tablas complejas suelen disponer de una estructura irregular que junta

varias columnas para formar una columna ancha o une varias filas para formar

una fila más alta que las demás. Para fusionar filas o columnas, se utilizan los

atributos rowspan y colspan respectivamente.

<table>

<tr>

<td>A</td>

<td rowspan="2">B</td>

</tr>

<tr>

<td>C</td>

</tr>

</table>

La primera fila de la tabla está formada

sólo por dos celdas, donde la 2ª celda

ocupa 2 filas.

Page 119: HTML  DAW

119

<table border="1">

<tr>

<td colspan="3">A</td>

<td>B</td>

</tr>

<tr>

<td>C</td>

<td colspan="2">D</td>

<td>E</td>

</tr>

<tr>

<td colspan="4">F</td>

</tr>

<tr>

<td>G</td>

<td>H</td>

<td>I</td>

<td>J</td>

</tr>

</table>

Page 120: HTML  DAW

120

<table border="1">

<tr>

<td>A</td>

<td>B</td>

<td rowspan="3">C</td>

<td>D</td>

</tr>

<tr>

<td rowspan="2">E</td>

<td>F</td>

<td rowspan="3">G</td>

</tr>

<tr>

<td>H</td>

</tr>

<tr>

<td>I</td>

<td>J</td>

<td>K</td>

</tr>

</table>

Page 121: HTML  DAW

121

Page 122: HTML  DAW

122

<table>……….</table>

<tbody>

<tr>

<th scope="row">N-3</th><td>-</td><td>-</td>

</tr>

<tr>

<th scope="row">N-2</th><td>3</td><td>5</td>

</tr>

<tr>

<th scope="row">N-1</th><td>4</td><td>4</td>

</tr>

<tr>

<th scope="row">N</th><td>5</td><td>7</td>

</tr>

</tbody>

<caption> An&aacute;lisis de ventas anuales </caption>

<thead>

<tr>

<th rowspan="2" scope="col">A&Ntilde;O</th>

<th colspan=“2" scope="col">Expansi&oacute;n de ventas</th>

</tr>

<tr>

<th scope="col">Prod. A</th>

<th scope="col">Pro. B</th>

</tr>

</thead>

<tfoot>

<tr>

<th rowspan="2" scope="col">A&Ntilde;O</th>

<th scope="col">Prod. A</th>

<th scope="col">Prod. B</th>

</tr>

<tr>

<th colspan="2" scope="col">Expansi&oacute;n de ventas</th>

</tr>

</tfoot>

Page 123: HTML  DAW

123

<table>……….</table>

Las partes que componen las tablas

complejas se definen mediante las etiquetas

<thead>, <tbody> y <tfoot>. La cabecera de

la tabla se define con la etiqueta <thead>, el

pie de la tabla se define mediante <tfoot> y

cada sección de datos se define con una

etiqueta <tbody>.

Aunque al principio resulta extraño, el

elemento <tfoot> siempre se escribe antes

que cualquier elemento <tbody> en el

código HTML. De hecho, si la etiqueta

<tfoot> aparece después de un elemento

<tbody>, la página no se considera válida.

Page 124: HTML  DAW

124

La etiqueta <tbody> permite realizar agrupaciones de filas, pero en

ocasiones se necesitan agrupar columnas. Aunque su uso no es muy

común, HTML define dos etiquetas similares para agrupar columnas:

<col> y <colgroup>.

La etiqueta <col> se utiliza para asignar los mismos atributos a varias

columnas de forma simultánea. De esta forma, la etiqueta <col> no

agrupa columnas, sino que sólo asigna atributos comunes a varias

columnas.

<table summary="Análisis de ventas anuales">

<caption>Análisis de ventas anuales</caption>

<col style="width:10%;" />

<col style="width:30%;" />

<thead>

<tr>

<th scope="col">AÑO</th>

<th scope="col">Producto A</th>

<th scope="col">Producto B</th>

<th scope="col">Producto C</th>

<th scope="col">Producto D</th>

</tr>

</thead>

El uso de las etiquetas <col> y <colgroup> no está muy

extendido, debido a que la mayoría de navegadores no

soportan muchas de sus funcionalidades.

Page 125: HTML  DAW

125

Por otra parte, la etiqueta <colgroup> se emplea para agrupar de forma

estructural varias columnas de la tabla. La forma habitual de indicar el

número de columnas que abarca la agrupación es utilizar el atributo span,

que establece el número de columnas de cada agrupación.

<table summary="Análisis de ventas anuales">

<caption>Análisis de ventas anuales</caption>

<colgroup span="1" style="color:red;" />

<colgroup span="3" style="color:blue;" />

<thead>

<tr>

<th scope="col">AÑO</th>

<th scope="col">Producto A</th>

<th scope="col">Producto B</th>

<th scope="col">Producto C</th>

<th scope="col">Producto D</th>

</tr>

</thead>

El uso de las etiquetas <col> y <colgroup> no está muy

extendido, debido a que la mayoría de navegadores no

soportan muchas de sus funcionalidades.

Page 126: HTML  DAW

126

<table border="10">

<tr>

<td>Celda (1,1)</td>

<td>Celda (1,2)</td>

<td>Celda (1,3)</td>

</tr>

<tr>

<td>Celda (2,1)</td>

<td>Celda (2,2)</td>

<td>Celda (2,3)</td>

</tr>

<tr>

<td>Celda (3,1)</td>

<td>Celda (3,2)</td>

<td>Celda (3,3)</td>

</tr>

</table>

10 pixeles para los bodes de la

tabla. Los bordes de las celdas

tendrán un ancho de 1 pixel

Page 127: HTML  DAW

127

<table style="border: double red 8px"

<tr>

<td>Celda (1,1)</td>

<td>Celda (1,2)</td>

<td>Celda (1,3)</td>

</tr>

<tr>

<td>Celda (2,1)</td>

<td>Celda (2,2)</td>

<td>Celda (2,3)</td>

</tr>

<tr>

<td>Celda (3,1)</td>

<td>Celda (3,2)</td>

<td>Celda (3,3)</td>

</tr>

</table>

Borde doble, rojo y con

una anchura de 8 pixeles

Page 128: HTML  DAW

128

<table border="1" style="border:double red 8px">

<tr>

<td>Celda (1,1)</td>

<td>Celda (1,2)</td>

<td>Celda (1,3)</td>

</tr>

<tr>

<td style="border:double #0000FF 20px">Celda (2,1)</td>

<td>Celda (2,2)</td>

<td>Celda (2,3)</td>

</tr>

<tr>

<td>Celda (3,1)</td>

<td>Celda (3,2)</td>

<td>Celda (3,3)</td>

</tr>

</table>

Page 129: HTML  DAW

129

<table border="1" width="300px">

<tr height="200px">

<td>Celda (1,1)</td>

<td>Celda (1,2)</td>

<td>Celda (1,3)</td>

</tr>

<tr height="20px">

<td>Celda (2,1)</td>

<td>Celda (2,2)</td>

<td>Celda (2,3)</td>

</tr>

<tr height="80px">

<td>Celda (3,1)</td>

<td>Celda (3,2)</td>

<td>Celda (3,3)</td>

</tr>

</table>

Page 130: HTML  DAW

130

<table border="1" align="center" width="400px">

<tr>

<td align="right">Celda (1,1)</td>

<td>Celda (1,2)</td>

<td>Celda (1,3)</td>

</tr>

<tr align="center">

<td>Celda (2,1)</td>

<td>Celda (2,2)</td>

<td>Celda (2,3)</td>

</tr>

<tr>

<td>Celda (3,1)</td>

<td align="justify">Celda (3,2)</td>

<td>Celda (3,3)</td>

</tr>

</table> El atributo align como atributo de table provoca que la

tabla se centra respecto a su localización –no el

contenido-. Y como atributo de tr y td provoca que sea

el contenido en este caso que se vea afectado

Page 131: HTML  DAW

131

<table border="1" style="float:right" width="400px">

<tr>

<td>Celda (1,1)</td>

<td>Celda (1,2)</td>

<td>Celda (1,3)</td>

</tr>

<tr>

<td>Celda (2,1)</td>

<td >Celda (2,2)</td>

<td>Celda (2,3)</td>

</tr>

<tr>

<td>Celda (3,1)</td>

<td>Celda (3,2)</td>

<td>Celda (3,3)</td>

</tr>

</table>

<p><strong>Float: </strong>

…;.</p>

Page 132: HTML  DAW

132

<table border="10" align="center" background="xhtml.jpg"

width="400px">

<tr>

<td>Celda (1,1)</td>

<td>Celda (1,2)</td>

<td>Celda (1,3)</td>

</tr>

<tr>

<td>Celda (2,1)</td>

<td >Celda (2,2)</td>

<td>Celda (2,3)</td>

</tr>

<tr>

<td>Celda (3,1)</td>

<td>Celda (3,2)</td>

<td>Celda (3,3)</td>

</tr>

</table>

Page 133: HTML  DAW

133

Page 134: HTML  DAW

134

<table border="10" align="center" cellpadding=“30px" cellspacing="15" width="400px">

<tr>

<td>Celda (1,1)</td>

<td>Celda (1,2)</td>

<td>Celda (1,3)</td>

</tr>

<tr>

<td style="border:#FF0000 double 10px">Celda (2,1)</td>

<td >Celda (2,2)</td>

<td>Celda (2,3)</td>

</tr>

<tr>

<td>Celda (3,1)</td>

<td>Celda (3,2)</td>

<td>Celda (3,3)</td>

</tr>

</table>

(X)HTML tiene dos atributos para la

etiqueta de tabla que permite controlar

el espaciado entre los contenidos de

una celda (cellpadding) y entre un

borde y lo siguiente (cellspacing)

Page 135: HTML  DAW

135

Atributo style:”…”

<style>

table

{

border:10px;

background:#0000CC;

}

</style>

<link rel="stylesheet" type="text/css" href=“miestilo.css">

Page 136: HTML  DAW

136

Page 137: HTML  DAW

137

HTML es un lenguaje de marcado cuyo propósito principal consiste en estructurar los

contenidos de los documentos y páginas web. Sin embargo, HTML también incluye elementos

para participar en el desarrollo de aplicaciones web. El estándar HTML/XHTML permite crear

formularios para que los usuarios interactúen con las aplicaciones web.

Los formularios son posiblemente la herramienta más utilizada en Internet para obtener datos e

información acerca de la gente que navega por nuestro sitio. La idea de los formularios es

recolectar información online en la interacción con el usuario y luego ejecutar una determinada

acción (action=“”) con la misma,.

Cinco son solamente las etiquetas que el código HTML posee para definir todos los elementos

interactivos que un formulario puede presentar: <FORM>, <INPUT>, <SELECT>, <OPTION>

y <TEXTAREA>.

Estas etiquetas, junto a un número de modificadores o atributos, son suficientes para indicarle al

navegador cliente cómo debe recoger la información, cómo debe manejarla una vez recolectada

y cómo debe interactuar con el servidor.

Page 138: HTML  DAW

138

Los formularios más sencillos se pueden crear utilizando solamente dos etiquetas:

<form> y <input>.

<h3>Formulario muy sencillo</h3>

<form action="http://www.midominio.es/gestion_formularios.php" method="get">

Escribe tu nombre:

<input type="text" name="nombre" value="" />

<br/>

<input type="submit" value="Enviar" />

</form>

Page 139: HTML  DAW

139

La etiqueta <form> encierra todos los contenidos del formulario (botones, cuadros de

texto, listas desplegables) y la etiqueta <input> permite definir varios tipos diferentes

de elementos (botones y cuadros de texto).

Atributos específicos

action = "url" Indica la URL que se encarga de procesar los

datos del formulario

method = "POST o GET" Método HTTP empleado al enviar el formulario

enctype = "application/x-www-form-urlencoded o

multipart/form-data"

Tipo de codificación empleada al enviar el formulario al servidor (sólo se indica de forma

explícita en los formularios que permiten adjuntar archivos)

accept = "tipo_de_contenido"

Lista separada por comas de todos los tipos de archivos aceptados por el servidor (sólo para los formularios que permiten adjuntar

archivos)

Otros: accept-charset, onsubmit, onreset

Page 140: HTML  DAW

140

La mayoría de formularios utilizan sólo los atributos action y method. El atributo

action indica la URL de la aplicación del servidor que se encarga de procesar los datos

introducidos por los usuarios. Esta aplicación también se encarga de generar la

respuesta que muestra el navegador.

El atributo method establece la forma en la que se envían los datos del formulario al

servidor. Este atributo hace referencia al método HTTP, por lo que no es algo propio

de HTML. Los dos valores que se utilizan en los formularios son GET y POST. De

esta forma, casi todos los formularios incluyen el atributo method="get" o el atributo

method="post".

El método POST permite el envío de mucha más información que el método GET. En general,

el método GET admite como máximo el envío de unos 500 bytes de información. La otra

gran limitación del método GET es que no permite el envío de archivos adjuntos con el

formulario. Además, los datos enviados mediante GET se ven en la barra de direcciones del

navegador (se añaden al final de la URL de la página), mientras que los datos enviados

mediante POST no se pueden ver tan fácilmente.

Page 141: HTML  DAW

141

<input>

type = "text | password | checkbox | radio | submit | reset | file | hidden | image | button"

Indica el tipo de control que se incluye en el formulario

name = "texto"Asigna un nombre al control (es imprescindible para que el

servidor pueda procesar el formulario)

value = "texto" Valor inicial del control

size = "unidad_de_medida"Tamaño inicial del control (para los campos de texto y de password se refiere al número de caracteres, en el resto de controles se refiere a su tamaño en píxel)

maxlength = "numero"Máximo número de caracteres para los controles de texto y

de password

checked = "checked"Para los controles checkbox y radiobutton permite indicar qué

opción aparece preseleccionada

disabled = "disabled"El control aparece deshabilitado y su valor no se envía al

servidor junto con el resto de datos

readonly = "readonly" El contenido del control no se puede modificar

src = "url"Para el control que permite crear botones con imágenes, indica la URL de

la imagen que se emplea como botón de formulario

alt = "texto" Descripción del control

Page 142: HTML  DAW

142

Cuadro de texto

Se trata del elemento más utilizado en los formularios.

<form action="http://www.midominio.es/gestion_formularios.php" method="get">

cuadro de Texto:

<input type="text" name="nombre" value="valor por defecto" size="15"

maxlength="30" readonly="readonly"/>

<br/>

<input type="submit" value="Enviar" />

</form>

Page 143: HTML  DAW

143

Cuadro de texto

El atributo name es el más importante en los campos del formulario..De hecho, si un campo

no incluye el atributo name, sus datos no se envían al servidor. El valor que se indica en el

atributo name es el nombre que utiliza la aplicación del servidor para obtener el valor de

este campo de formulario. Cuando el usuario pulsa el botón de envío del formulario, el

navegador envía los datos a una aplicación del servidor para que procese la información y

genere una respuesta adecuada.

El atributo value se emplea para establecer el valor inicial del cuadro de texto. Si se crea un

formulario para insertar datos, los cuadros de texto deberían estar vacíos. Por lo tanto, o no

se añade el atributo value o se incluye con un valor vacío value="". Si por el contrario se

crea un formulario para modificar datos, lo lógico es que se muestren inicialmente los datos

guardados en el sistema. En este caso, el atributo value incluirá el valor que se desea

mostrar: <input type="text" name="nombre" value="Juan Pérez" />

method=“get”

Page 144: HTML  DAW

144

Cuadro de texto

Si no se especifica un tamaño, el navegador muestra el cuadro de texto con un tamaño

predeterminado. El atributo size permite establecer el tamaño, en caracteres, con el que se

muestra el cuadro de texto. Su uso es imprescindible en muchos formularios, en los que

algunos campos como la dirección deben mostrar más caracteres de lo normal (<input

size="100" ...) y otros campos como el código postal deben mostrar menos caracteres de lo

normal (<input size="5"...).

Además de controlar el tamaño con el que se muestra un cuadro de texto, también se

puede limitar el tamaño del texto introducido. El atributo maxlength permite establecer el

máximo número de caracteres que el usuario puede introducir en un cuadro de texto. Su uso

es imprescindible para campos como el código postal, el número de la Seguridad Social y

cualquier otro dato con formato predefinido y limitado.

Por último, el atributo readonly permite que el usuario pueda ver los contenidos del

cuadro de texto pero no pueda modificarlos y el atributo disabled deshabilita un cuadro de

texto de forma que el usuario no pueda modificarlo y además, el navegador no envía sus

datos al servidor.

Page 145: HTML  DAW

145

Campo de contraseña

La única diferencia entre este control y el cuadro de texto normal es que el texto que el usuario

escribe en un cuadro de contraseña no se ve en la pantalla. En su lugar, los navegadores ocultan

el texto utilizando asteriscos o círculos, por lo que es ideal para escribir contraseñas y otros

datos sensibles.

<form action="http://www.midominio.es/gestion_formularios.php" method="get">

Cuadro de Texto:

<input type="text" name="nombre" value="valor por defecto" size="15" maxlength="30“ />

<br/>

Campo de Contraseña:

<input type="password" name="contrasena" value="" />

<br/>

<input type="submit" value="Enviar" />

</form>

Page 146: HTML  DAW

146

Checkbox

La única diferencia entre este control y el cuadro de texto normal es que el texto que el usuario

escribe en un cuadro de contraseña no se ve en la pantalla. En su lugar, los navegadores ocultan

el texto utilizando asteriscos o círculos, por lo que es ideal para escribir contraseñas y otros

datos sensibles.

<input name="select_1" type="checkbox" value="texto_enviar_select_1"/> texto_visible_select_1

<input name="select_2" type="checkbox" value="texto_enviar_select_2" checked="checked"/>

texto_visible_select_2

<input name="select_3" type="checkbox" value="texto_enviar_select_3"/> texto_visible_select_3

Si se quiere mostrar un checkbox seleccionado por

defecto, se utiliza el atributo checked. Si el valor del

atributo es checked, el checkbox se muestra

seleccionado. En cualquier otro caso, el checkbox

permanece sin seleccionar. Aunque resulta

redundante que el nombre y el valor del atributo

sean idénticos, es obligatorio indicarlo de esta forma

porque los atributos en XHTML no pueden tener

valores vacíos.

Page 147: HTML  DAW

147

Radio

Los controles de tipo radio son similares a los controles de tipo checkbox, pero presentan una

diferencia muy importante: son mutuamente excluyentes. Los radiobutton se utilizan cuando el

usuario solamente puede escoger una opción entre las distintas opciones relacionadas que se le

presentan. Cada vez que se selecciona una opción, automáticamente se deselecciona la otra

opción que estaba seleccionaba.

<br/>Sexo <br/>

<input type="radio" name="sexo" value="hombre"

checked="checked" /> Hombre

<input type="radio" name="sexo" value="mujer" />

Mujer <br/>

Page 148: HTML  DAW

148

Botón envío / reseteo del formulario

<input type="submit" value="Enviar Formulario" />

<input type="reset" name="limpiar" value="Borrar datos del formulario" />

Page 149: HTML  DAW

149

Ficheros Adjuntos

Los formularios también permiten adjuntar archivos para subirlos al servidor. Aunque desde

el punto de vista de HTML y del navegador no existe ninguna limitación sobre el número,

tipo o tamaño total de los archivos que se pueden adjuntar, todos los servidores añaden

restricciones por motivos de seguridad.

Fichero adjunto:<br/>

<input type="file" name="adjunto" />

El navegador se encarga de mostrar un cuadro

de texto donde aparece el nombre del archivo

seleccionado y un botón que permite navegar

por los directorios y archivos del ordenador del

usuario.

Si se incluye un control para adjuntar archivos,

es obligatorio añadir el atributo enctype en la

etiqueta <form> del formulario. El valor del

atributo enctype debe ser multipart/form-data,

por lo que la etiqueta <form> de los

formularios que permiten adjuntar archivos

siempre es:

<form action="..." method="post"

enctype="multipart/form-data"> ...

</form>

Page 150: HTML  DAW

150

Campos ocultos

Los campos ocultos se emplean para añadir

información oculta en el formulario:

<input type="hidden" name=“login"

value=“user1" />

Botón Imagen

<input type="image" name="enviar" src="apple-

logo.jpg" height="30" width="30" />

Pulsar el botón provoca el mismo efecto que si el

botón fuera de type=“submit”.

Page 151: HTML  DAW

151

Botón

Algunos formularios complejos necesitan botones más

avanzados que los de enviar datos (type="submit") y

resetear el formulario (type="reset"). Por ese motivo, el

estándar HTML/XHTML define un botón de tipo genérico.

<input type="button" name="mostrar" value="Mostrar"

onclick="funcion_javascript(document.getElementById('nombre').value)"

/>

<script language="javascript">

function funcion_javascript(f)

{

alert(document.getElementById('nombre').value);

alert(f);

}

</script>

Este tipo de botones sólo son útiles si se utilizan junto con el

lenguaje de programación JavaScript. Si la página incluye código

JavaScript, los botones de este tipo se pueden programar para que

realicen cualquier tarea compleja cuando se pulsa sobre ellos.

Page 152: HTML  DAW

152

HTML define algunos elementos adicionales

para mejorar la estructura de los formularios

creados.

La etiqueta <fieldset> agrupa todos los

controles de formulario a los que encierra. El

navegador muestra por defecto un borde

resaltado para cada agrupación. La etiqueta

<legend> se incluye dentro de cada etiqueta

<fieldset> y establece el título que muestra el

navegador para cada agrupación de elementos.

<form>

<fieldset> <legend>Datos personales

</legend> </fieldset>

<fieldset> <legend>Otros Datos

</legend>

</fieldset> </form>

Page 153: HTML  DAW

153

Por otra parte, todos los controles de formulario salvo

los botones presentan una carencia muy importante: no

disponen de la opción de establecer el título o texto

que se muestra junto al control

Afortunadamente, el lenguaje HTML incluye una

etiqueta denominada <label> y que se utiliza para

establecer el título de cada campo del formulario.

<label for="nombre">Nombre</label> <br/> <input

type="text" id="nombre" name="nombre" value=""

/>

La principal ventaja de utilizar <label> es que el código HTML

está mejor estructurado y se mejora su accesibilidad. Además,

al pinchar sobre el texto del <label>, el puntero del ratón se

posiciona automáticamente para poder escribir sobre el

campo de formulario asociado.

Page 154: HTML  DAW

154

Las áreas de texto son útiles cuando se

debe introducir una gran cantidad de

texto, ya que es mucho más cómodo de

introducir que en un campo de texto

norma.

La anchura del área de texto se controla

mediante el atributo cols, que indica las

columnas o número de caracteres que se

podrán escribir como máximo en cada

fila. La altura del área de texto se

controla mediante rows, que indica

directamente las filas de texto que serán

visibles.

El principal inconveniente de los

elementos <textarea> es que el lenguaje

HTML no permite limitar el número

máximo de caracteres que se pueden

introducir. (programación con JavaScript)

<textarea tributos></textarea>

Page 155: HTML  DAW

155

La imagen muestra los tres tipos de listas

desplegables disponibles.

El primero es el de las listas más

utilizadas que sólo muestran un

valor cada vez y sólo permiten

seleccionar un valor.

El segundo tipo de lista es el que

sólo permite seleccionar un valor

pero muestra varios a la vez.

Por último, el tercer tipo de lista

desplegable es aquella que muestra

varios valores y permite realizar

selecciones múltiples.

<select>

Page 156: HTML  DAW

156

<select>

<select name="so">

<option value="windows“selected="selected">Windows</option>

<option value="mac">Mac</option>

<option value="linux">Linux</option>

<option value="otro">Otro</option>

</select>

<select name="so2" size="5">

<option value="windows" selected="selected">Windows</option>

<option value="mac">Mac</option>

<option value="linux">Linux</option>

<option value="otro">Otro</option>

</select>

<select name="so3" size="5“

multiple="multiple">

<option value="windows"

selected="selected">Windows</option>

<option value="mac">Mac</option>

<option value="linux">Linux</option>

<option value="otro">Otro</option>

</select>

Page 157: HTML  DAW

157

<select>

<label for="programa">Programa seleccionado</label> <br/>

<select id="programa" name="programa">

<optgroup label="Sistemas Operativos">

<option value="Windows" selected="selected">Windows</option>

<option value="Mac">Mac</option>

<option value="Linux">Linux</option>

<option value="Other">Otro</option>

</optgroup>

<optgroup label="Navegadores">

<option value="Internet Explorer" selected="selected">Internet

Explorer</option>

<option value="Firefox">Firefox</option>

<option value="Safari">Safari</option>

<option value="Opera">Opera</option>

<option value="Other">Otro</option>

</optgroup>

</select>

Page 158: HTML  DAW

158

<select>

<label for="programa">Programa seleccionado</label> <br/>

<select id="programa" name="programa">

<optgroup label="Sistemas Operativos">

<option value="Windows" selected="selected">Windows</option>

<option value="Mac">Mac</option>

<option value="Linux">Linux</option>

<option value="Other">Otro</option>

</optgroup>

<optgroup label="Navegadores">

<option value="Internet Explorer" selected="selected">Internet

Explorer</option>

<option value="Firefox">Firefox</option>

<option value="Safari">Safari</option>

<option value="Opera">Opera</option>

<option value="Other">Otro</option>

</optgroup>

</select>

Page 159: HTML  DAW

159

Al pulsar la tecla Tab, los visitantes pueden desplazarse por los campos en su formulario

desde arriba hacia abajo (y luego seleccionar el deseado al pulsar Intro). En función de

la presentación de su formulario, es posible que prefiera establecer personalmente el

orden de tabulación para que los visitantes completen los campos en un determinado

oreden.

Para establecer el orden de tabulación:

En la etiqueta del elemento de formulario, se escribirá tabindex=“n”, donde n es el

número que indica el orden de tabulación.

Al desplazarse por el formulario, los elementos del formulario se seleccionan pero no se

activan. Pera ello es necesario pulsar Intro.

El valor para tabindex puede ser cualquier número entre 0 y 32767.

Por defecto, el orden de tabulación depende de los elementos en el código (X)HTML. Cuando

cambia el orden de tabulación, los elementos con numeración más baja son los primeros,

seguidos de los elementos con numeración más alta.

Se puede asigna orden de tabulación a campos de texto, casillas de verificación, vínculos,

mapas de imágenes ..

La primera vez en el IE que se pulsa la tecla Tab, el campo de Dirección, donde se muestra la

URL, se resalta. Luego, la siguiente tabulación lleva al visitante a donde se haya definido.

Page 160: HTML  DAW

160

Las teclas de acceso rápido permiten que sus visitantes seleccionen y activen objetos sin

ratón.

Para añadir teclas de acceso rápido/directo a un elemento del formulario:

Dentro de la etiqueta del elemento del formulario, se escribirá accesskey=”.

A continuación la combinación de teclas (cualquier tecla o número).

Se escribirá “.

<input type="password" name="contrasena" value="" accesskey="W"/>

En los sistemas Windows, para invocar la combinación de teclas de acceso rápido, se

utilizará la tecla ALT.

Cuando se utiliza una combinación de teclas de acceso rápido, no solamente lo destaca

del resto, sino que lo activa. En el caso de botones de opción y casillo de verificación,

esto significa que el elemento se selecciona. Si es un cuadro de texto, el curso se sitúa

dentro. Si es un botón, éste de activa.

Page 161: HTML  DAW

161

<form action="mailto:[email protected]"

method="post" enctype="text/plain">

Page 162: HTML  DAW

162

<form action="http://www.midominio.es/subir_fichero.php" name="ejemplo" method=“post">

<fieldset>

<legend>Otros Datos</legend>

<br/>Fichero adjunto:<br/>

<input type="file" name="adjunto" /><br/>

</fieldset>

</form>

Page 163: HTML  DAW

163

http://html.conclase.net/w3c/html401-es/cover.html#minitoc

Page 164: HTML  DAW

164

Elegir características

por defecto

Aplicar formato a elementos de texto

Aplicar formato al body

Centrar elementos de una página

Page 165: HTML  DAW

165

De vuelta a los días en los que CSS apenas contaba con soporte en la mayoría de los

navegadores, la mayoría de las personas controlaban la apariencia del texto en sus

páginas Web con elementos HTML. En parte debido a la guerra entre navegadores y

la balcanización de la Web, y en parte por el empuje hacia CSS y XHTML, el W3C

decidió desaprobar un número de elementos de formato, es decir, los marcó para

una definitiva eliminación de las especificaciones del estándar (X)HTML.

Todavía hoy no se ha hecho mucho y la mayoría de las páginas en la Web, en la

actualidad, utilizan una o más etiquetas desaprobadas. Aunque CSS es más potente,

más eficaz y mucho más sencillo de actualizar, para la mayoría de las personas

(X)HTML sigue siendo más fácil de entender !a veces más fácil de utilizar.

Además, aunque el soporte CSS ha aumentado considerablemente, todavía no

rivaliza el soporte universal que disfrutan la mayoría de las etiquetas (X)HTML.

Observe que las etiquetas de formato, a pesar de estar desaprobadas, siguen siendo

válidas y parte legal de la parte transitoria de HTML 4 y XHTML 1.0. y aunque,

algunos puedan decir que utilizar etiquetas desaprobadas es similar a una herejía,

hay tantas páginas que lo siguen usando, que es importante saber al menos cómo

funcionan.

Page 166: HTML  DAW

166

Puede seleccionar la fuente, tamaño y color por defeco para todo el texto de la

página.

<basefont color="#0000FF" size="5" face="Times New Roman, Times, serif" />

La etiqueta HTML &lt;basefont&gt; o fuente base en castellano, que usamos <br />

para definir el tama&ntilde;o de la fuente o letra que empleamos en un documento.

Los encabezados no se ven afectados por el atributo size,

aunque adquieren el tipo y el color.

Los vínculos no se ven afectados por el atributo calor, aunque

adquieren el tamaño y tipo de la fuente.

El elemento font anula el elemento basefont que anula el

atributo text de la etiqueta body. Los estilo anulan a basefont

(y text) pero no font.

El elemento basefont está desaprobado y puede ser

extremadamente inconsistente de un navegador a otro. Se

deberá evitar en su lugar utiliza estilos.

Page 167: HTML  DAW

167

Un valor de 3 en el atributo size representa el tamaño por

defecto para el texto del navegador, normalmente Times a 16

píxeles.

El elemento font anula el elemento basefont. El elemento font

también anula cualquier formato aplicado con hojas de estilo.

La etiqueta font puede cambiar el tamaño y fuente de n

vínculo, pero no su color.

El elemento font afecta el tamaño de los encabezados.

<font color="#00FF33" face="Courier New, Courier, monospace" lang="es" size="6"

title="Ejemplo de font">

La etiqueta HTML &lt;basefont&gt; o fuente base en castellano, que usamos <br />

para definir el tama&ntilde;o de la fuente o letra que empleamos en un documento.

</font>

Page 168: HTML  DAW

168

La etiqueta bgcolor le permite establecer el color de fondo

para toda la página Web.

el atributo text funciona de la misma manera que el

atributo color de la etiqueta basefont.

Tanto basefont como font anulan el atributo text.

Para cambiar el color de los vínculos que aún no se han

visitado, se utiliza el atributo link.

Para cambiar el color de los vínculos que ya se han

visitado, se utilizará el atributo vlink.

Si lo que se quiere es cambiar el color de un vínculo

cuando el usuario hace clic, escriba alink.

<body bgcolor="#66FF00"

text="#006699" link="#FF0000"

vlink="#FFFF00"

alink="#3300FF">

Page 169: HTML  DAW

169

Se puede utilizar una imagen como telón de fondo de toda

la página. Esto se realiza mediante el atributo

background.

Solamente IE, leftmargin indicará la anchura en píxeles

del espacio entre el borde izquierdo de la ventana y el

contenido de la página; topmargin es la altura en píxeles

entre la parte superior de la ventana y los contenidos de la

página.

En Netscapa se utilizará las etiquetas marginwidth

(leftmargin) y marghinheight (topmargin).

<body background="xhtml.jpg" leftmargin="60"

topmargin="20">

Page 170: HTML  DAW

170

Metainformación

Estructura de la cabecera

Metadatos

DOCTYPE

Page 171: HTML  DAW

171

Las páginas y documentos HTML incluyen más información de la que los usuarios

no ven en sus pantallas. Estos datos adicionales siempre están relacionados con la

propia página, por lo que se denominan metainformación o metadatos. La

metainformación siempre se incluye en la sección de la cabecera, es decir, dentro de

la etiqueta <head>.

Aunque la metainformación más conocida y utilizada es el título de la propia

página, se puede incluir mucha otra información útil para los navegadores y para los

buscadores. En las próximas secciones se explica cómo incluir la metainformación

y se introduce un concepto relacionado llamado DOCTYPE.

Page 172: HTML  DAW

172

Las páginas XHTML se dividen en dos partes denominadas cabecera y cuerpo. La

sección de la cabecera está formada por todas las etiquetas encerradas por la

etiqueta <head>.

La cabecera típica de una página HTML completa presenta la siguiente estructura:

<head>

<!-- Zona de etiquetas META -->

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

<!-- Zona de título -->

<title>El título del documento</title>

<!-- Zona de recursos enlazados (CSS, RSS, JavaScript) -->

<link rel="stylesheet" href="#" type="text/css" media="screen" />

<link rel="stylesheet" href="#" type="text/css" media="print" />

<link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="#" />

<script src=“javascript/fichero_codigo_javascript.js" type="text/javascript">

</script>

</head>

Page 173: HTML  DAW

173

Una de las partes más importantes de la metainformación de la página son los

metadatos, que permiten incluir cualquier información relevante sobre la propia

página.

La especificación oficial de HTML no define la lista de metadatos que se pueden

incluir, por lo que las páginas tienen libertad absoluta para definir los metadatos que

consideren adecuados. La etiqueta empleada para la definición de los metadatos es

<meta>.

Definir el autor del documento:

<meta name="author" content="Juan Pérez" />

Definir el programa con el que se ha creado el documento:

<meta name="generator" content=“Word" />

Definir la codificación de caracteres del documento:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />

Definir el copyright del documento:

<meta name="copyright" content="librosweb.es" />

Page 174: HTML  DAW

174

Definir las palabras clave que definen el contenido del documento:

<meta name="keywords" content="diseño, css, hojas de estilos, web, html" />

Definir una breve descripción del sitio:

<meta name="description" content="Artículos sobre diseño web, usabilidad y

accesibilidad" />

Para "refrescar" una página o redirigirla a otra, transcurrido un cierto tiempo:

<meta http-equiv="refresh" content=“5;URL=http://www.um.es" >

……… etc.

La etiqueta que define la codificación de los caracteres (http-

equiv="Content-Type") se emplea prácticamente en todas las páginas y las

etiquetas que definen la descripción (description) y las palabras clave

(keywords) también son muy utilizadas.

Page 175: HTML  DAW

175

El estándar XHTML deriva de XML, por lo que comparte con el muchas de sus normas y

sintaxis. Uno de los conceptos fundamentales de XML es la utilización del DTD o Document

Type Definition ("Definición del Tipo de Documento").

Un DTD es un documento que recoge el conjunto de normas y restricciones que deben

cumplir los documentos de un determinado tipo. Si por ejemplo se define un DTD para los

documentos relacionados con libros, se puede fijar como norma que cada libro tenga un título

y sólo uno, que tenga uno o más autores, que la información sobre el número de páginas

pueda ser opcional, etc.

El conjunto de normas, obligaciones y restricciones que se deben seguir al crear un

documento de un determinado tipo, se recogen en su correspondiente DTD. El estándar

XHTML define el DTD que deben seguir las páginas y documentos XHTML. En este

documento se definen las etiquetas que se pueden utilizar, los atributos de cada etiqueta y el

tipo de valores que puede tener cada atributo.

En realidad, la versión 1.0 del estándar de XHTML define tres DTD diferentes. Para indicar el

DTD utilizado al crear una determinada página, se emplea una etiqueta especial llamada

doctype. La etiqueta doctype es el único elemento que se incluye fuera de la etiqueta <html>

de la página. De hecho, la declaración del doctype es lo primero que se debe incluir en una

página web, antes incluso que la etiqueta <html>.

Page 176: HTML  DAW

176

Para que una página XHTML sea correcta y válida es imprescindible que incluya el

correspondiente doctype que indica el DTD utilizado. A continuación se muestran los tres

DTD que se pueden utilizar al crear páginas XHTML:

XHTML 1.0 Estricto

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Se trata de la variante con las normas más estrictas y las restricciones más severas. Las páginas

web que incluyan este doctype, no pueden utilizar atributos relacionados con el aspecto de los

contenidos, por lo que requiere una separación total de código HTML y estilos CSS.

XHTML 1.0 Transitorio

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Se trata de una variante menos estricta que la anterior, ya que permite el uso de algunos

atributos HTML relacionados con el aspecto de los elementos.

XHTML 1.0 Frameset

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

Esta última variante la utilizan las páginas que están formadas por frames, una práctica

completamente desaconsejada y que hoy en día sólo utilizan los sitios web obsoletos.

Page 177: HTML  DAW

177

Por otra parte, además del DOCTYPE apropiado, también es necesario que las

páginas web indiquen el namespace asociado. Un namespace en un documento

XML permite diferenciar las etiquetas y atributos que pertenecen a cada lenguaje.

Si en un mismo documento se mezclan etiquetas de dos o más lenguajes derivados

de XML (XHTML y SVG por ejemplo) y que tienen el mismo nombre, no se podría

determinar a qué lenguaje pertenece cada etiqueta y por tanto, no se podría

interpretar esa etiqueta o ese atributo. Los namespaces se indican mediante una

URL.

El namespace que utilizan todas las páginas XHTML (independientemente de la

versión y del DOCTYPE) es http://www.w3.org/1999/xhtml y se indica de la

siguiente manera:

<html xmlns="http://www.w3.org/1999/xhtml"> ... </html>

Page 178: HTML  DAW

178

De esta forma, es habitual que las páginas XHTML comiencen con el siguiente

código:

<!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" lang="es" xml:lang="es">

Aunque el código anterior es mucho más complicado que una simple etiqueta

<html>, es imprescindible para que las páginas XHTML creadas sean correctas y

superen satisfactoriamente el proceso de validación que se muestra en los capítulos

siguientes.

Afortunadamente, si utilizas un editor avanzado como Dreamweaver para crear las

páginas, todo el código anterior se incluye de forma automática. Si creas las páginas

a mano, sólo tienes que copiar y pegar ese código en cada nueva página.

Page 179: HTML  DAW

179

Comentarios

JavaScript

CSS

Iframes

Page 180: HTML  DAW

180

Al igual que la mayoría de lenguajes de marcado, HTML permite incluir

comentarios dentro de su código para añadir información que no se debe mostrar

por pantalla.

Normalmente, los diseñadores y programadores incluyen comentarios para marcar

el comienzo y el final de las secciones de las páginas, para incluir avisos y notas

para otros diseñadores o para incluir explicaciones sobre la forma en la que se ha

creado el código HTML.

Aunque los comentarios no se muestran por pantalla y por tanto son invisibles para

los usuarios, sí que se descargan con el código HTML de la página. Por este motivo,

nunca debe incluirse información sensible o confidencial en los comentarios.

Page 181: HTML  DAW

181

La sintaxis de los comentarios es la siguiente:

Apertura del comentario: <!--

Contenido del comentario: (cualquier texto)

Cierre del comentario: -->

El siguiente ejemplo muestra el uso de los comentarios HTML para indicar el

comienzo y final de cada sección. Recuerda que los comentarios no se muestran por

pantalla y que no influyen en la forma en la que se ven las páginas:<!-- Inicio del menú -->

<div id="menu">

<ul> <li>...

</li> <li>...

</li> <li>...<

/li> <li>...

</li> </ul>

<!-- Fin del menú -->

<!-- Inicio de la publicidad -->

<div id="publicidad"> ... </div>

<!-- Fin de la publicidad -->

Los comentarios de HTML puede ocupar tantas líneas como sea necesario. Sin

embargo, los comentarios no se pueden anidar, es decir, no se puede incluir un

comentario dentro de otro comentario.

Page 182: HTML  DAW

182

JavaScript (desde ahora JS) es un lenguaje de script, de guiones, creado

originalmente por la empresa Nestcape, que se inserta en las páginas web mediante

la etiqueta <SCRIPT> de HTML.

Una vez que el navegador descarga una página que contiene un script se encarga de

interpretarlo y de ejecutarlo. Así se consigue la independencia del script frente a la

plataforma. ¡Lo único que necesitamos, pues, es un navegador que interprete

scripts!

Existen varias versiones del lenguaje JS y además diferentes números de versión

para cada navegador, por ejemplo, JavaScript 1.3 para Nestcape Navigator 4.06 y

4.6 o JScript 5 para Microsoft Internet Explorer 5.0, entre otros.

La etiqueta <Script> puede insertarse en cualquier parte de la página, aunque

frecuentemente se sitúa en la sección de cabecera. Mediante el atributo language se

debe indicar si se trata de un script de JS o de cualquier otro lenguaje (si no se

indica se sobreentiende que es un script de JavaScript):

Page 183: HTML  DAW

183

<Script language="JavaScript">

…..

</Script>

Algunos navegadores no disponen de soporte completo de JavaScript, otros

navegadores permiten bloquearlo parcialmente e incluso algunos usuarios bloquean

completamente el uso de JavaScript porque creen que así navegan de forma más

segura.

Si JavaScript está bloqueado o deshabilitado y la página web requiere su uso para

un correcto funcionamiento, es habitual incluir un mensaje de aviso al usuario

indicándole que debería activar JavaScript para disfrutar completamente de la

página.

HTML define la etiqueta <noscript> para incluir un mensaje que los navegadores

muestran cuando JavaScript se encuentra bloqueado o deshabilitado.

Page 184: HTML  DAW

184

Una página web puede contener más de un script. Su

orden de ejecución corresponde a su orden de

aparición en la página. Si bien hay scripts que no son

ejecutados hasta que el usuario lleve a cabo alguna

acción (como los manejadores de eventos) o el estado

de la página cambie por algún motivo (por ejemplo,

porque se acaba de procesar todo el documento).

<script language="javascript">

alert("Hola Mundo");

</script>

</head>

<body>

<noscript>

<p>Bienvenido a Mi Sitio</p>

<p>La página que estás viendo requiere para su

funcionamiento el uso de JavaScript.

Si lo has deshabilitado intencionadamente, por favor

vuelve a activarlo.</p>

</noscript>

Incluir un mensaje de aviso que solamente sea visible en

los navegadores que tienen bloqueado JavaScript es tan

sencillo como incluir la etiqueta &lt;noscript&gt; dentro

del &lt;body&gt;.

</body>

Page 185: HTML  DAW

185

Algunos de los atributos más utilizados en la creación de páginas web son id, class y style.

Los tres atributos están muy relacionados con CSS, sobre todo class y style.

El atributo id se emplea para asignar un identificador único a cada elemento de la página, lo

que es útil tanto para aplicar estilos CSS a ese elemento como para programar aplicaciones

con JavaScript.

Por otra parte, el atributo class se emplea para definir la clase CSS que se aplica a un

elemento.

<style type="text/css">

.resumen {

color:#00FF99;

font-size:24px}

</style>

</head>

<body>

<p class="resumen">The &lt;style&gt; tag is used to define

style information for an HTML document.

Inside the style element you specify how HTML elements

should render in a browser.

The required type attribute defines the content of the style

element. The only possible value is &quot;text/css&quot;.

The style element always goes inside the head section

&nbsp;</p>

Page 186: HTML  DAW

186

Aunque su uso no es muy común, la etiqueta <iframe> puede ser muy útil en determinadas

ocasiones, ya que permite insertar un documento HTML dentro de otro documento HTML.

Un iframe puede considerarse como un agujero que se abre en una página web y a través

del cual se muestra otra página web.

<iframe>

src = "url" - URL del documento HTML que se visualiza en el iframe

height = "longitud" - Altura que ocupará el iframe en el documento

width = "longitud" - Anchura que ocupará el iframe en el documento

name = "texto" - Nombre que identifica al iframe

longdesc = "url" - Dirección en la que puede encontrarse una descripción larga del

contenido del iframe

scrolling = "yes | no | auto" - Indica si el iframe debe mostrar barras de scroll

(horizontal y vertical) cuando el contenido incluido no cabe en el iframe

<iframe src="/ruta/documento.html" width="250" height="250"

scrolling="no" />

Page 187: HTML  DAW

187

La página principal de Google Analytics emplea un <iframe> para incluir en un pequeño

recuadro la página correspondiente a la validación de usuario.

Page 188: HTML  DAW

188

¿Qué es la Accesibilidad

Web?

¿Para qué sirve?

¿Cómo funciona?

Ejemplos

http://www.w3.org/WAI/WCAG1-Conformance

Page 189: HTML  DAW

189

Hablar de Accesibilidad Web es hablar de un acceso universal a la Web,

independientemente del tipo de hardware, software, infraestructura de red,

idioma, cultura, localización geográfica y capacidades de los usuarios.

Con esta idea de accesibilidad nace la Iniciativa de Accesibilidad Web, conocida

como WAI (Web Accessibility Initiative). Se trata de una actividad desarrollada

por el W3C, cuyo objetivo es facilitar el acceso de las personas con discapacidad,

desarrollando pautas de accesibilidad, mejorando las herramientas para la

evaluación y reparación de accesibilidad Web, llevando a cabo una labor

educativa y de concienciación en relación a la importancia del diseño accesible

de páginas Web, y abriendo nuevos campos en accesibilidad a través de la

investigación en este área.

Introducción a la Accesibilidad Web. Disponible una versión en

español http://www.w3c.es/Traducciones/es/WAI/intro/accessibility

Breve introducción sobre lo que es la Accesibilidad Web y su

importancia.

Page 190: HTML  DAW

190

La idea principal radica en hacer la Web más accesible para todos los usuarios

independientemente de las circunstancias y los dispositivos involucrados a la

hora de acceder a la información. Partiendo de esta idea, una página accesible lo

será tanto para una persona con discapacidad, como para cualquier otra persona

que se encuentre bajo circunstancias externas que dificulten su acceso a la

información (en caso de ruidos externos, en situaciones donde nuestra atención

visual y auditiva no estén disponibles, pantallas con visibilidad reducida, etc.).

Para hacer el contenido Web accesible, se han desarrollado las denominadas

Pautas de Accesibilidad al Contenido en la Web (WCAG), cuya función principal

es guiar el diseño de páginas Web hacia un diseño accesible, reduciendo de esta

forma barreras a la información. WCAG consiste en 14 pautas que proporcionan

soluciones de diseño y que utilizan como ejemplo situaciones comunes en las que

el diseño de una página puede producir problemas de acceso a la información.

Las Pautas contienen además una serie de puntos de verificación que ayudan a

detectar posibles errores.

Page 191: HTML  DAW

191

Cada punto de verificación está asignado a uno de los tres niveles de prioridad

establecidos por las pautas.

Prioridad 1: son aquellos puntos que un desarrollador Web tiene que cumplir ya que, de

otra manera, ciertos grupos de usuarios no podrían acceder a la información del sitio Web.

Prioridad 2: son aquellos puntos que un desarrollador Web debería cumplir ya que, si no

fuese así, sería muy difícil acceder a la información para ciertos grupos de usuarios.

Prioridad 3: son aquellos puntos que un desarrollador Web debería cumplir ya que, de otra

forma, algunos usuarios experimentarían ciertas dificultades para acceder a la información.

En función a estos puntos de verificación se establecen los niveles de conformidad:

Nivel de Conformidad "A": todos

los puntos de verificación de prioridad 1

se satisfacen.

Nivel de Conformidad "Doble A":

todos los puntos de verificación de

prioridad 1 y 2 se satisfacen.

Nivel de Conformidad "Triple A":

todos los puntos de verificación de

prioridad 1,2 y 3 se satisfacen.

Page 192: HTML  DAW

192

http://www.w3c.es/traducciones/es/wai/intro/accessibility

Herramientas de evaluación que determinan si un sitio Web cumple los estándares

y pautas. Para obtener una lista de herramientas de evaluación, visite

Herramientas de evaluación, reparación y transformación para accesibilidad de

contenido Web.

http://www.w3.org/WAI/ER/tools/

Finding Evaluation Tools

The W3C WAI list of Web accessibility evaluation tools is available through:

Complete List - to show all tools in the list maintained by WAI

Simple Search - to find tools using common search criteria

Advanced Search - to find tools using detailed search criteria

Page 193: HTML  DAW

193

Page 194: HTML  DAW

194

Un ejemplo de prioridad 1 sería la identificación clara de cualquier

cambio de idioma que se pueda producir en el texto de un documento. Es

decir, si se utilizan diferentes idiomas es necesario que cualquier cambio

esté claramente señalado con el atributo lang:

Un ejemplo de código correcto sería el siguiente:

<p>

<q>Buenos días Philip</q>

<q lang="en">Good morning</q>.

Respondió Philip en inglés.

<q>¿Qué tal estás?</q>

<q lang="fr">Très bien.</q> Volvió a responder, pero esta vez en

francés.

</p>

Page 195: HTML  DAW

195

Otro ejemplo de prioridad 1 sería la utilización del atributo alt para

incorporar texto equivalente al contenido de una imagen cuando se

quieren utilizar gráficos; esto permitiría que dispositivos o personas que

no pueden visualizar los gráficos, obtengan una representación

alternativa textual. El código correspondiente sería:

<img src="wai.png" alt="Web Accessibility Initiative" lang="en"/>

Page 196: HTML  DAW

196

Validación

Validador del W3C

Validación con

Dreamweaver

Page 197: HTML  DAW

197

La validación es el proceso que asegura que un documento escrito en un determinado

lenguaje (por ejemplo XHTML) cumple con las normas y restricciones de ese lenguaje. Las

normas y restricciones de los documentos escritos en XML (y en sus lenguajes derivados,

como XHTML) se definen en el DTD o Document Type Definition ("Definición del Tipo de

Documento").

El concepto de validación es objeto de controversia en el ámbito del diseño web. Por una

parte, la validación no es obligatoria y las páginas web se pueden ver bien sin que sean

válidas. Por otra parte, una página válida es más correcta que otra página que no lo sea, ya

que cumple con las normas y restricciones impuestas por XHTML.

Debido a esta controversia, algunos diseñadores consideran que se da demasiada

importancia a la validación de las páginas y a la creación de páginas válidas. El resto de

diseñadores argumentan que si la especificación de XHTML impone una serie de normas y

restricciones, lo más correcto es que las páginas web las cumplan, aunque no sea

obligatorio.

En cualquier caso, el proceso de validación consiste en probar página a página si su código

HTML pasa la prueba de validación. Los validadores son las herramientas que se utilizan

para validar cada página. Algunos editores de páginas web incluyen sus propios validadores

y el organismo W3C ha creado una herramienta gratuita para la validación de las páginas.

Page 198: HTML  DAW

198

Si utilizas Dreamweaver para crear las páginas web, el validador se encuentra

integrado en la propia herramienta. En primer lugar, accede a la configuración de

la herramienta de validación desde la opción Edición > Preferencias > Validador:

Page 199: HTML  DAW

199

En esta ventana de configuración se puede elegir el DTD que se utiliza en caso de

que la página web no indique el DTD que utiliza. Las páginas declaran el DTD

que utilizan mediante el doctype. Una vez seleccionado el DTD por defecto (en

la imagen anterior, se ha elegido el DTD de XHTML 1.0 de transición), se puede

acceder a la herramienta de validación de Dreamweaver desde el icono que se

muestra en la siguiente imagen:

Page 200: HTML  DAW

200

Si no se han producido errores al validar la página, Dreamweaver lo indica

mediante un mensaje que declara a la página como válida. Si se produce algún

error, la página no es válida y Dreamweaver muestra la lista de todos los errores

encontrados junto con sus posibles soluciones:

Después de corregir todos los errores, se puede pasar otra vez la prueba de

validación para comprobar que la página cumple con todas las restricciones que

impone el tipo de doctype que utiliza.

Page 201: HTML  DAW

201

La validación de las páginas web no requiere el uso de editores avanzados como

Dreamweaver, ya que el organismo W3C ha creado una herramienta que se puede

utilizar gratuitamente a través de Internet: http://validator.w3.org/

Page 202: HTML  DAW

202

Aunque la herramienta sólo está disponible en inglés, su uso es muy intuitivo:

Validate by URI, permite escribir la URL de la página que se quiere validar.

Esta opción es la más sencilla para validar las páginas que ya están

publicadas en Internet.

Validate by File Upload, muestra un formulario mediante el que se puede

subir el archivo HTML correspondiente a la página que se quiere validar.

Esta opción es la mejor para validar las páginas web que has desarrollado y

que aún no has publicado en Internet.

Validate by Direct Input, permite validar código HTML de forma directa. Se

trata de la opción más rápida para validar trozos o páginas HTML

completas. Esta opción es la mejor cuando estás desarrollando las páginas y

quieres asegurarte que el código sea válido.

La siguiente imagen muestra el resultado de la validación de la página principal de

Google realizada mediante la opción Validate by URI:

Page 203: HTML  DAW

203

Si la página no pasa correctamente la prueba de validación, se muestra el listado

completo de fallos junto con la ayuda necesaria para resolver cada uno de los

errores.

Como se observa en la imagen anterior, incluso una página tan sencilla como la

portada de Google contiene decenas de errores que impiden considerarla válida.

Por lo tanto, la página principal de Google no es una página válida, aunque eso

no impide que se vea bien en todos los navegadores y que los usuarios la

consideren correcta.

Page 204: HTML  DAW

204