Universidad de Costa Rica
Escuela de Ciencias de la Computación e Informática
CI-2413 Desarrollo de aplicaciones web
Profesor: Jeisson Hidalgo Céspedes
27-Setiembre-2011
Laboratorio 05
Este laboratorio pretende ayudar al estudiante a crear un pequeño sitio web personal, cuya apariencia es uniforme utilizando hojas de estilo CSS. La navegabilidad entre los distintos recursos del sitio debe ser construida sin redundar código. Finalmente el sitio web debe ser publicado para que sea accesible a través del protocolo HTTP.
Materiales
- Un editor de texto, o un ambiente de desarrollo web como Aptana Studio.
- La especificación HTML 4.01 del Consorcio Web
- La especificación CSS 2.1 del Consorcio Web.
- El validador unificado de contenido y estilos (Unicorn) del Consorcio web.
- Un compresor de archivos.
- Varios navegadores web.
- Los documentos que haya hecho en las tareas y laboratorios anteriores del curso. En concreto:
- Tarea 01: Su documento XML con la base de datos "Universidad".
- Tarea 02: El DTD para la base de datos "Universidad".
- Tarea 03: Laboratorio 01: Reproducir el enunciado del laboratorio mismo.
- Tarea 04: El documento XHTML con las estadísticas de validez de sitios externos.
- Tarea 05 a 07: Su currículo de vida hecho en los laboratorios 02, 03 y 04.
Procedimiento
Primero se debe definir la estructura del sitio y el diseño de las páginas que lo componen. Luego creará la página principal, una sección de aficiones en la que deberá reutilizar código, otra sección para las tareas del curso. Finalmente publicará su sitio en un servidor web disponible al mundo. Todos los documentos web que cree deben ser de tipo XHTML 1.0 strict
y válidos.
Parte 1. Estructura y diseño del sitio web
- Una de las primeras actividades que se debe realizar a la hora de crear un sitio web es definir su estructura, algo similar a lo que se llama "mapa del sitio". Elabore un bosquejo de la estructura que le gustaría que su sitio web personal tenga. He aquí un ejemplo:
index.html
encabezado.html
menu.html
css/
imprimir.css
pantalla.css
comun.css
img/
autor/
curriculo.html
curriculo.css
foto.jpg
linea_vida.svg
aficiones/
ciclismo.html
videojuegos.html
musica.html
computacion/
appweb/
index.html
universidad/
index.html
tarea1.xml
tarea1.css
estadisticas/
index.html
agentweb/
index.jsp
-
En una hoja de papel haga un bosquejo del diseño (estilo) general que usted quiere tener en cada página de su sitio personal. Los siguientes son dos ejemplos:

Parte 2. La página principal
- Cree un documento de tipo
XHTML 1.0 strict
con nombre index.html
como página principal de su sitio web en una carpeta vacía, la cual será la raíz de su sitio personal. En este laboratorio se le hará referencia a esta carpeta como /
, y por ende su página principal será /index.html
. Asegúrese como siempre de usar un título adecuado para el documento web.
- En el cuerpo (
body
) de su página principal /index.html
, cree una división (div
) para cada una de las secciones que componen su diseño, por ejemplo: encabezado, menú y contenido.
- Escriba el contenido de cada una de las secciones de su página principal. Por ejemplo:
- Encabezado. Agregue una imagen que identifique su sitio. Puede ser algo a lo que es muy aficionado/a, una fotografía suya, o una ilustración vectorial. Las compañías suelen usar el logotipo de la empresa en este lugar. Guarde esta imagen en una subcarpeta
/img
. Luego escriba su nombre completo, a modo de sugerencia, en un título 1. Finalmente, incluya un lema; puede ser una frase célebre suya o el texto "Página personal".
- Menú. En una lista no ordenada, agregue una entrada para cada una de las partes que componen su sitio web, por ejemplo: Inicio, Aficiones, Computación y Autor. Convierta al texto "Inicio" en un enlace hacia
"/"
. Para poder probar esto, debe montar su sitio en un servidor web, sea local o remoto. De lo contrario deberá usar /index.html
. ¿Cuáles son las ventajas y desventajas de cada uno de estos destinos?.
- Contenido. Puede proveer cualquier texto dándole la bienvenida al visitante, presentándose a usted mismo, y darle un vistazo rápido de las partes que componen su sitio web. Para efectos de este laboratorio, esto último es obligatorio y debe proveer una imagen y un párrafo por cada una de dichas partes, por ejemplo: Aficiones, Computación y Autor. Las imágenes pueden ser fotografías o ilustraciones, pero deben mantener la uniformidad (apariencia, tamaño, origen) (sugerencia: capture fotografías con una cámara digital y edítelas para que ocupen el menor ancho de banda pero sin verse mal, o bien haga ilustraciones vectoriales). El texto adyacente debe incluir enlaces hacia las partes respectivas del sitio, y no de la forma "pinche aquí".
- Aplique estilo a cada una de las secciones de su página principal:
- Cree una subcarpeta para almacenar hojas de estilo comunes a todo el sitio web, por ejemplo:
/css
. En ella cree una hoja de estilos para uso en pantalla, como /css/pantalla.css
. Aplique esta hoja de estilos a su página principal /index.html
.
- Escriba estilos en
/css/pantalla.css
para que las secciones de encabezado y menú aparezcan en las posiciones que usted escogió en su diseño.
- Encabezado. Con estilos controle la ubicación del logotipo del sitio para que aparezca en una posición agradable, por ejemplo, a la izquierda de su nombre. Ubique también el lema del sitio.
- Menú. Use los estilos CSS para deshabilitar los "puntos" que el navegador asume para los elementos de lista, y hágalos más prominentes de algún modo (fuentes más grandes, fondos sólidos, bordes, lo que quiera). Haga que cuando el puntero del ratón pasa sobre un ítem del menú, se resalte su fondo. Tenga cuidado de no afectar otras listas que hayan en su sitio web.
- Contenido. Con estilos CSS haga que las imágenes estén a la izquierda o derecha de sus párrafos respectivos para ahorrar espacio vertical. Haga que los enlaces se resalten cuando el puntero del ratón pasa sobre ellos.
- Aplique otros estilos a los elementos de cada sección hasta que adquieran la apariencia que usted desea. Por ejemplo: fuentes, colores, imágenes en el fondo, etc.
Parte 3. Aficiones
- Cree una carpeta
/aficiones
para almacenar los documentos que componen esta sección de su sitio web. Haga que la segunda entrada del menú del sitio (en su archivo /index.html
) sea un enlace apuntando hacia esta carpeta.
- Cree una página de índice para la sección de aficiones:
/aficiones/index.html
, también de tipo XHTML 1.0 Strict
. Esta página debe mantener el diseño de su sitio web, y por ende, debe incluir el encabezado y el menú exactamente igual a las otras páginas que componen su sitio. La única diferencia es la sección de contenido de dicha página.
- Investigue mecanismos para incluir el encabezado y menú del sitio en cada página que lo compone. Compare las ventajas y desventajas de al menos los siguientes:
- Redundancia de código.
- Uso del elemento
object
.
- Programación en el cliente: JavaScript.
- Server side includes.
- Programación en el servidor: CGI, PHP, etc.
Si hace redundancia de código, será un hastío cuando quiera hacer una modificación en una de estas divisiones, por ejemplo, cuando quiera agregar una nueva sección al menú de su sitio web. Para este laboratorio debe utilizar alguna de las anteriores (excepto la primera). El resto de este procedimiento asume la segunda. Estudie el elemento object
en la especificación HTML 4.01, para incluir documentos web dentro de otros documentos.
- Extraiga del
/index.html
el encabezado de su sitio a un archivo externo /encabezado.html
, y el código del menú a un archivo externo /menu.html
. Incluya estos archivos con un elemento object
tanto en el índice del sitio /index.html
como el índice de las aficiones /aficiones/index.html
.
- Ajuste los estilos CSS para que se apliquen al cambio anterior y sus documentos se vean adecuadamente.
- Complete el contenido de la página
/aficiones/index.html
, haciendo entradas a cada una de las aficiones que quiera publicar en su sitio personal, como lo hizo en el índice del sitio. Recuerde utilizar fotografías o ilustraciones.
- Por cada afición cree una página
XHTML 1.0 strict
que reutilice el encabezado y el menú del sitio. Llene el contenido de dicha página con detalles de su afición con el fin de araer otros seguidores. Incluya fotografías, en qué forma ejerce su afición, o lo que guste.
- Modifique el menú principal del sitio
/menu.html
para subdividir el ítem "Aficiones" en otra lista no ordenada, cuyos ítemes son enlaces hacia las aficiones que acaba de crear. Aplique estilos para que la sublista se vea diferenciada y con menor pominencia. Al modificar el menú, todo el sitio debería ver el cambio de inmediato.
Parte 4. Tareas del curso
- Repita el procedimiento de la Parte 3 para crear una sección que contenga las tareas y laboratorios que haya realizado durante el curso. No es necesario que cree un achivo
.html
para cada tarea, basta con que los referencie desde un index.html
para el curso.
- Si desea publicar en su página personal asignaciones hechas en otros cursos, puede hacerlo también. En tal caso, agregue una entrada a un submenú para cada curso. No es necesario incluir una entrada del menú por cada tarea que haya hecho.
- Agregue una entrada "Autor" al menú principal y enlace su currículo de vida.
- Asegúrese de que los estilos del sitio completo sean uniformes, es decir, que las tareas se ajusten a ellos también (a excepción del documento XML de la base de datos Universidad y su DTD).
Parte 5. Publicación del sitio
- Si no dispone de algún servicio de alojamiento web, cree uno gratuito. Puede fundamentar su decisión utilizando el buscador Free Web Hosts. Luego "suba" los archivos a dicho servidor.
- Establezca un icono para los favoritos en su sitio web. Revise el material de referencia del curso para hacer esto. Asegúrese de que el navegador lo utilice en la barra de direcciones, en la respetiva pestaña o en los favoritos.
- Estudie la implementación actual de los navegadores de los estilos CSS 3 (por ejemplo, en la Wikipedia). Escoja dos estilos que sean ampliamente implementados y aplíquelos en sus hojas de estilo. El cambio debería impactar a todo el sitio de golpe.
- [5%] Asegúrese de que los documentos web y las hojas de estilo que creó sean válidos (puede ignorar los mensajes de
warning
que genera el validador sobre los estilos).
Evaluación
Los porcentajes entre corchetes que aparecen en el Procedimiento indican el peso de cada actividad en la evaluación.
Para presentar su proyecto, envíe el enlace hacia su sitio publicado al profesor mediante correo electrónico. Además comprima su sitio web y súbalo a la plataforma educativa (Moodle) de la ECCI, en la asignación con título Proyecto01
.