Portafolio de evidencia piw

Page 1

Portafolio de Evidencia. Programación de Interfaces Web I. Jesús Isidro González Espinoza Ing. En Sistemas Computacionales Matricula: 25113224 Profesor: Dr. José Benito Franco Urrea Horario: 11-13 hrs. Unidad: Centro Cuatrimestre: 6to. Modulo: 2 Ciclo: 201330-2

Ciudad Obregón, Sonora a 12 de noviembre de 2013


Índice. 1. INFORMACIÓN INSTITUCIONAL 2. INTRODUCCIÓN (ARCHIVO ENVIADO) A-CLASE SEMANA 1. B-CLASE SEMANA 2. C-CLASE SEMANA 3. D-CLASE SEMANA 4. 5. TAREAS Tarea 1- Etiquetas HTML. Tarea 2-(Registro de dominio- hosting- etc…) 6. RESÚMENES RESUMEN 1 -El ciclo de vida de la información en la Web RESUMEN 2- Cotizaciones de Páginas Web RESUMEN 3- HACIA UN WEB ACCESIBLE

INFORMACION INSTITUCIONAL


MISION.

La misión de UNIDEP es formar profesionales de éxito que cuenten con actitudes, habilidades y conocimientos que demanda el sector productivo de la región.

VISION.

La Universidad del Desarrollo Profesional es una institución de educación superior de calidad, que ofrece programas presénciales y semipresenciales de bachillerato, profesional asociado, licenciatura, postgrado, diplomados y cursos en México y en el extranjero.

Se distingue por facilitar a sus egresados la incorporación al mercado de trabajo, apoyada en una estrecha vinculación con el sector productivo y en planes de estudios pertinentes y dinámicos.

Es reconocida por su modelo educativo profesionalizante, por la flexibilidad de su oferta académica impartida en ciclos continuos y por horarios y cuotas accesibles, acordes a la disponibilidad de tiempo y recursos económicos del alumno.

Cuenta con profesores de amplia experiencia profesional y educativa. Sus instalaciones

dentro

de

la

ciudad

permiten

el

fácil

acceso.

Cuenta con un modelo de administración sistematizado, participativo, operado por personal que es recompensado por su desempeño efectivo que le permite maximizar las aportaciones de sus socios y mantener finanzas sanas.


VALORES Y ACTITUDES UNIDEP Lealtad._ Los Integrantes de la comunidad Universitaria consideramos la fidelidad como un valor excelso que enaltecemos en nuestro quehacer diario. Justicia._ Los integrantes de la comunidad Universitaria actuamos con la constante y perpetua voluntad de dar a cada cual lo que le corresponde conforme a sus méritos o actos. Honestidad._ Los integrantes de la comunidad universitaria actuamos con sinceridad y honradez en nuestras tareas y en congruencia entre los pensamientos, palabras y acciones. Responsabilidad._ Los integrantes de la comunidad universitaria llevamos a cabo nuestras actividades con integridad, con sentido del propósito y apegados a los objetivos institucionales. Esfuerzo._ Los integrantes de la comunidad universitaria usamos nuestra máxima energía para cumplir con los objetivos trazados. Creatividad._ Los integrantes de la comunidad universitaria resolvemos los problemas con imaginación, conocimientos y con un espíritu de mejora continua.



Introducción En los orígenes de la Web y en sus primeras versiones, HTML era un lenguaje fácil de aprender y muy reducido en cuanto a sus tags y estructura. Estamos hablando de los años 1990 al 1993. Todo cambió cuando empezaron a surgir los primeros navegadores que eran capaces de representar recursos gráficos como añadido a la información textual. Así, el número de sitios web comenzó a crecer y con él, el número de tags que la especificación HTML contemplaba. El objetivo era construir sitios web cada vez más atractivos visualmente hablando, con lo que HTML debía incluir nuevos tags destinados a conseguir diversos efectos visuales. Con todos estos cambios que la web había sufrido, nos encontramos con que un lenguaje que en sus inicios había sido "orientado a la estructura", ahora estaba totalmente "orientado a la visualización" (HTML 4 es la más viva representación de esta realidad). Encontramos tags com <B>, <U> o < I > que definen estilos de visualización sin aportar nada a la estructura del documento representados. Otro aspecto importante y que condiciona totalmente la estructura del documento es el uso del tag FONT. Con el uso de este tag podemos hacer que una zona que corresponde a la cabecera o título de una página, y que debería expresarse con un H1, pase ahora a estar definida mediante el tag FONT. Con este cambio se pierde totalmente la estructura del documento. La realidad ahora es que el mayor número de los sites realizados con HTML 4 consiguen que el volumen de información de visualización sea muy superior al de la información verdaderamente relevante. Esto parece, cuanto menos preocupante. Motivos por los que no podemos permitir que nuestros documentos publicados en la web pierdan su estructura: 1. La indexación por los buscadores es mucho más complicada (Google asigna un peso mucho mayor a una página que utiliza H1 para definir sus secciones, que a los campos META del documento). 2. Se reduce la accesibilidad. Actualmente existen aplicaciones que permiten la lectura de páginas web como ayuda a los discapacitados (persona ciegas o con otras discapacidades). Si una persona discapacitada intenta acceder a una página sin una mínima estructuración, el resultado puede ser lamentable. 3. La estructura de la página y la información contenida en la misma es mucho más sencilla de mantener. Actualmente, ciertos aspectos del código HTML pueden hacer que una misma página tenga visualizaciones distintas en distintos navegadores. Estos errores de diseño son difícilmente depurables cuando la página contiene una estructura de tags complicada y sin ninguna estructuración. Por otra parte, un cambio en un tipo de fuente supone el rediseño de todas las páginas de un site al tener que sustituir todos los valores para el tag FONT.


Todos estos problemas han sido seguidos muy de cerca por el W3C, el cual comenzó a trabajar en 1995 en CSS. Principales características aportadas por CSS en contraposición a los elementos de visualización presentes en la especificación de HTML 4: 1.Estilo enriquecido. CSS permite la creación de documentos visualmente mucho más ricos que lo que HTML nunca permitirá. No en vano CSS está pensado única y exclusivamente para asistir al diseñador a la hora de dar estilo a un documento estructurado. 2.Fácil de utilizar. La utilización de hojas de estilo CSS hace que el diseñador pueda reducir sustancialmente su carga de trabajo al diseñar todo un site. Esto se debe a que CSS es capaz de centralizar ciertos efectos visuales que plasmemos en diversas secciones del site, en lugar de tenerlos diseminados por páginas y páginas del site. 3. Reutilización en múltiples páginas. Una hoja de estilo que recoja aspectos visuales comunes a varias páginas puede ser reutilizada en cualquier sección del site aprovechando dichos efectos ya definidos. De esta manera es sencillo generar un estilo general del web y mantenerlo así consistente para todas las páginas. Así, si deseamos modificar un estilo que es común a todo el site, sólo necesitaríamos modificar una línea de nuestro fichero CSS (con la aproximación clásica que ofrece HTML, deberíamos modificar todas y cada una de las páginas). 4. Reutilización en múltiples páginas. Una hoja de estilo que recoja aspectos visuales comunes a varias páginas puede ser reutilizada en cualquier sección del site aprovechando dichos efectos ya definidos. De esta manera es sencillo generar un estilo general del web y mantenerlo así consistente para todas las páginas. Así, si deseamos modificar un estilo que es común a todo el site, sólo necesitaríamos modificar una línea de nuestro fichero CSS (con la aproximación clásica que ofrece HTML, deberíamos modificar todas y cada una de las páginas). Figura 1. Hoja de estilos personal Figura 2. Hoja de estilos personal Ejemplo 1. Fichero personal.css a {color: white; background-color: black;} 5. Reduce el tamaño del código HTML enviado. Al centralizar los estilos ya no es necesario la utilización de tags como FONT en todos los documentos del site. De esta manera se reduce considerablemente el tiempo en que tarda en cargarse el código de una página. 6. Nos prepara para el futuro. Debemos ser conscientes que muchos tags como FONT, BASEFONT, U, STRIKE, S, CENTER, han sido marcados por el W3C como "deprecated", es decir, que se desaconseja su uso ya que serán eliminados en un futuro de la especificación. De igual manera HTML retornará progresivamente a sus orígenes, volviendo a ser un lenguaje para la estructuración de información. Esta es la vía de XML, cuya primera aproximación es el lenguaje de marcas XHTML.


HTML5 no es una nueva versión del antiguo lenguaje de etiquetas, ni siquiera una mejora de esta ya antigua tecnología, sino un nuevo concepto para la construcción de sitios web y aplicaciones en una era que combina dispositivos móviles, computación en la nube y trabajos en red. Todo comenzó mucho tiempo atrás con una simple versión de HTML propuesta para crear la estructura básica de páginas web, organizar su contenido y compartir información. El lenguaje y la web misma nacieron principalmente con la intención de comunicar información por medio de texto. El limitado objetivo de HTML motivó a varias compañías a desarrollar nuevos lenguajes y programas para agregar características a la web nunca antes implementadas. Estos desarrollos iniciales crecieron hasta convertirse en populares y poderosos accesorios. Simples juegos y bromas animadas pronto se transformaron en sofisticadas aplicaciones, ofreciendo nuevas experiencias que cambiaron el concepto de la web para siempre. De las opciones propuestas, Java y Flash fueron las más exitosas; ambas fueron masivamente adoptadas y ampliamente consideradas como el futuro de Internet. Sin embargo, tan pronto como el número de usuarios se incrementó e Internet pasó de ser una forma de conectar amantes de los ordenadores a un campo estratégico para los negocios y la interacción social, limitaciones presentes en estas dos tecnologías probaron ser una sentencia de muerte. El mayor inconveniente de Java y Flash puede describirse como una falta de integración. Ambos fueron concebidos desde el principio como complementos (plug-ins), algo que se inserta dentro de una estructura pero que comparte con la misma solo espacio en la pantalla. No existía comunicación e integración alguna entre aplicaciones y documentos. La falta de integración resultó ser crítica y preparó el camino para la evolución de un lenguaje que comparte espacio en el documento con HTML y no está afectado por las limitaciones de los plugins. Javascript, un lenguaje interpretado incluido en navegadores, claramente era la manera de mejorar la experiencia de los usuarios y proveer funcionalidad para la web. Sin embargo, después de algunos años de intentos fallidos para promoverlo y algunos malos usos, el mercado nunca lo adoptó plenamente y pronto su popularidad declinó. Los detractores tenían buenas razones para oponerse a su adopción. En ese momento, Javascript no era capaz de reemplazar la funcionalidad de Flash o Java. A pesar de ser evidente que ambos limitaban el alcance de las aplicaciones y aislaban el contenido web, populares funciones como la reproducción de video se estaban convirtiendo en una parte esencial de la web y solo eran efectivamente ofrecidas a través de estas tecnologías. A pesar del suceso inicial, el uso de Java comenzó a declinar. La naturaleza compleja del lenguaje, su evolución lenta y la falta de integración disminuyeron su importancia hasta el punto en el que hoy día no es más usado en aplicaciones web de importancia. Sin Java, el mercado volcó su atención a Flash. Pero el hecho de que Flash comparte las mismas características básicas que su competidor en la web lo hace también susceptible de correr el mismo destino.


Mientras esta competencia silenciosa se llevaba a cabo, el software para acceder a la web continuaba evolucionando. Junto con nuevas funciones y técnicas rápidas de acceso a la red, los navegadores también mejoraron gradualmente sus intérpretes Javascript. Más potencia trajo más oportunidades y este lenguaje estaba listo para aprovecharlas. En cierto punto durante este proceso, se hizo evidente para algunos desarrolladores que ni Java o Flash podrían proveer las herramientas que ellos necesitaban para crear las aplicaciones demandadas por un número creciente de usuarios. Estos desarrolladores, impulsados por las mejoras otorgadas por los navegadores, comenzaron a aplicar Javascript en sus aplicaciones de un modo nunca visto. La innovación y los increíbles resultados obtenidos llamaron la atención de más programadores. Pronto lo que fue llamado la “Web 2.0” nació y la percepción de Javascript en la comunidad de programadores cambió radicalmente. Javascript era claramente el lenguaje que permitía a los desarrolladores innovar y hacer cosas que nadie había podido hacer antes en la web. En los últimos años, programadores y diseñadores web alrededor del mundo surgieron con los más increíbles trucos para superar las limitaciones de esta tecnología y sus iniciales deficiencias en portabilidad. Gracias a estas nuevas implementaciones, Javascript, HTML y CSS se convirtieron pronto en la más perfecta combinación para la necesaria evolución de la web. HTML5 es, de hecho, una mejora de esta combinación, el pegamento que une todo. HTML5 propone estándares para cada aspecto de la web y también un propósito claro para cada una de las tecnologías involucradas. A partir de ahora, HTML provee los elementos estructurales, CSS se encuentra concentrado en cómo volver esa estructura utilizable y atractiva a la vista, y Javascript tiene todo el poder necesario para proveer dinamismo y construir aplicaciones web completamente funcionales. Las barreras entre sitios webs y aplicaciones finalmente han desaparecido. Las tecnologías requeridas para el proceso de integración están listas. El futuro de la web es prometedor y la evolución y combinación de estas tres tecnologías (HTML, CSS y Javascript) en una poderosa especificación está volviendo a Internet la plataforma líder de desarrollo. HTML5 indica claramente el camino.


“ Add your company slogan ”

PROGRAMACIÓN DE INTERFACES

WEB

I Profesor: Dr. José Benito Franco Urrea

LOGO


PROGRAMACIÓN DE INTERFACES WEB I 1. Introducción a la programación en páginas WEB. 1.1. HTML HTML es el lenguaje con el que se definen las páginas web. Básicamente se trata de un conjunto de etiquetas que sirven para definir el texto y otros elementos que compondrán una página web. El HTML es un lenguaje de marcación de elementos para la creación de documentos hipertexto, muy fácil de aprender, lo que permite que cualquier persona, aunque no haya programado en la vida, pueda enfrentarse a la tarea de crear una web.


PROGRAMACIÓN DE INTERFACES WEB I

Para qué sirve    

Describir estructura y contenido Complementar el texto con Objetos Se escribe en forma de “Etiquetas” Rodeada por Corchetes Angulares

< >


PROGRAMACIÓN DE INTERFACES WEB I

Estructura de Elementos


PROGRAMACIÓN DE INTERFACES WEB I


PROGRAMACIÓN DE INTERFACES WEB I HTML5 provee básicamente tres características: estructura, estilo y funcionalidad. Nunca fue declarado oficialmente pero, incluso cuando algunas APIs (Interface de Programación de Aplicaciones) y la especificación de CSS3 por completo no son parte del mismo, HTML5 es considerado el producto de la combinación de HTML, CSS y Javascript. Estas tecnologías son altamente dependientes y actúan como una sola unidad organizada bajo la especificación de HTML5.


PROGRAMACIÓN DE INTERFACES WEB I HTML está a cargo de la estructura, CSS presenta esa estructura y su contenido en la pantalla y Javascript hace el resto que (como veremos más adelante) es extremadamente significativo.

Estructura global Los documentos HTML se encuentran estrictamente organizados. Cada parte del documento está diferenciada, declarada y determinada por etiquetas específicas. En esta parte del capítulo vamos a ver cómo construir la estructura global de un documento HTML y los nuevos elementos semánticos incorporados en HTML5. <!DOCTYPE html>


PROGRAMACIÓN DE INTERFACES WEB I Luego de declarar el tipo de documento, debemos comenzar a construir la estructura HTML. Como siempre, la estructura tipo árbol de este lenguaje tiene su raíz en el elemento <html>. Este elemento envolverá al resto del código: <!DOCTYPE html> <html lang=”es”> </html>

El atributo lang en la etiqueta de apertura <html> es el único atributo que necesitamos especificar en HTML5. Este atributo define el idioma humano del contenido del documento que estamos creando, en este caso es por español.


PROGRAMACIÓN DE INTERFACES WEB I <head> Continuemos construyendo nuestra plantilla. El código HTML insertado entre las etiquetas <html> tiene que ser dividido entre dos secciones principales. Al igual que en versiones previas de HTML, la primera sección es la cabecera y la segunda el cuerpo. El siguiente paso, por lo tanto, será crear estas dos secciones en el código usando los elementos <head> y <body> ya conocidos. El elemento <head> va primero, por supuesto, y al igual que el resto de los elementos estructurales tiene una etiqueta de apertura y una de cierre: <!DOCTYPE html> <html lang="es"> <head> </head> </html>

Excepto por el título y algunos íconos, el resto de la información incorporada en el documento entre estas etiquetas es invisible para el usuario.

Dentro de las etiquetas <head> definiremos el título de nuestra página web, declararemos el set de caracteres correspondiente, proveeremos información general acerca del documento e incorporaremos los archivos externos con estilos, códigos Javascript o incluso imágenes necesarias para generar la página en la pantalla.


PROGRAMACIÓN DE INTERFACES WEB I <body> La siguiente gran sección que es parte principal de la organización de un documento HTML es el cuerpo. El cuerpo representa la parte visible de todo documento y es especificado entre etiquetas <body>. Estas etiquetas tampoco han cambiado en relación con versiones previas de HTML:

<!DOCTYPE html> <html lang="es"> <head> </head> <body> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I <meta> Es momento de construir la cabecera del documento. Algunos cambios e innovaciones fueron incorporados dentro de la cabecera, y uno de ellos es la etiqueta que define el juego de caracteres a utilizar para mostrar el documento. Ésta es una etiqueta <meta> que especifica cómo el texto será presentado en pantalla: <!DOCTYPE html> <html lang="es"> <head> <meta charset=”iso-8859-1”> </head> <body> </body> </html>

Reconoce Acentos <meta charset=” utf-8”>


PROGRAMACIÓN DE INTERFACES WEB I <title> La etiqueta <title>, como siempre, simplemente especifica el título del documento <!DOCTYPE html> <html lang="es"> <head> <meta charset=”iso-8859-1”> <title>Este texto es el título del documento</title> </head> <body> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I <header> Uno de los nuevos elementos incorporados en HTML5 es <header>. El elemento <header> no debe ser confundido con <head> usado antes para construir la cabecera del documento. Del mismo modo que <head>, la intención de <header> es proveer información introductoria (títulos, subtítulos, logos), pero difiere con respecto a <head> en su alcance. Mientras que el elemento <head> tiene el propósito de proveer información acerca de todo el documento, <header> es sado solo para el cuerpo o secciones específicas dentro del cuerpo: <!DOCTYPE html> <html lang="es"> <head> <meta charset=”iso-8859-1”> <title>Este texto es el título del documento</title> </head> <body> <header> <h1>Este es el título principal del sitio web</h1> </header> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I Escribir código y ejecutarlo <!DOCTYPE html> <html lang="es"> <head> <meta charset=”iso-8859-1”> <title>Este texto es el título del documento</title> </head> <body> <header> <h1>Este es el título principal del sitio web</h1> </header> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I

Estructura del cuerpo La estructura del cuerpo (el código entre las etiquetas <body>) generará la parte visible del documento. Este es el código que producirá nuestra página web.

HTML siempre ofreció diferentes formas de construir y organizar la información dentro del cuerpo de un documento. Uno de los primeros elementos provistos para este propósito fue <table>. Las tablas permitían a los diseñadores acomodar datos, texto, imágenes y herramientas dentro de filas y columnas de celdas, incluso sin que hayan sido concebidas para este propósito. El elemento <div> comenzó a dominar la escena. Con el surgimiento de webs más interactivas y la integración de HTML, CSS y Javascript, el uso de <div> se volvió una práctica común. Pero este elemento, así como <table>, no provee demasiada información acerca de las parte del cuerpo que está representando. Desde imágenes a menús, textos, enlaces, códigos, formularios, cualquier cosa puede ir entre las etiquetas de apertura y cierre de un elemento <div>.


PROGRAMACIÓN DE INTERFACES WEB I Organización La Figura 1-1 representa un diseño común encontrado en la mayoría de los sitios webs estos días. A pesar del hecho de que cada diseñador crea sus propios diseños, en general podremos identificar las siguientes secciones en cada sitio web estudiado:


PROGRAMACIÓN DE INTERFACES WEB I En la parte superior, descripto como Cabecera, se encuentra el espacio donde usualmente se ubica el logo, título, subtítulos y una corta descripción del sitio web o la página. Inmediatamente debajo, podemos ver la Barra de Navegación en la cual casi todos los desarrolladores ofrecen un menú o lista de enlaces con el propósito de facilitar la navegación a través del sitio. Los usuarios son guiados desde esta barra hacia las diferentes páginas o documentos, normalmente pertenecientes al mismo sitio web.


PROGRAMACIÓN DE INTERFACES WEB I El contenido más relevante de una página web se encuentra, en casi todo diseño, ubicado en su centro. Esta sección presenta información y enlaces valiosos. La mayoría de las veces es dividida en varias filas y columnas. En el ejemplo de la Figura 1-1 se utilizaron solo dos columnas: Información Principal y Barra Lateral, pero esta sección es extremadamente flexible y normalmente diseñadores la adaptan acorde a sus necesidades insertando más columnas, dividiendo cada columna entre bloques más pequeños o generando diferentes distribuciones y combinaciones. El contenido presentado en esta parte del diseño es usualmente de alta prioridad. En el diseño de ejemplo, Información Principal podría contener una lista de artículos, descripción de productos, entradas de un blog o cualquier otra información importante, y la Barra Lateral podría mostrar una lista de enlaces apuntando hacia cada uno se esos ítems. En un blog, por ejemplo, esta última columna ofrecerá una lista de enlaces apuntando a cada entrada del blog, información acerca del autor, etc…


PROGRAMACIÓN DE INTERFACES WEB I En la base de un diseño web clásico siempre nos encontramos con una barra más que aquí llamamos Institucional. La nombramos de esta manera porque esta es el área en donde normalmente se muestra información acerca del sitio web, el autor o la empresa, además de algunos enlaces con respecto a reglas, términos y condiciones y toda información adicional que el desarrollador considere importante compartir. La barra Institucional es un complemento de la Cabecera y es parte de lo que se considera estos días la estructura esencial de una página web, como podemos apreciar en el siguiente ejemplo:


PROGRAMACIÓN DE INTERFACES WEB I La Figura 1-2 es una representación de un blog normal. En este ejemplo se puede claramente identificar cada parte del diseño considerado anteriormente. 1. Cabecera 2. Barra de Navegación 3. Sección de Información Principal 4. Barra Lateral 5. El pie o la barra Institucional


PROGRAMACIÓN DE INTERFACES WEB I HTML5 considera esta estructura básica y provee nuevos elementos para diferenciar y declarar cada una de sus partes. A partir de ahora podemos decir al navegador para qué es cada sección:


PROGRAMACIÓN DE INTERFACES WEB I <nav> Siguiendo con nuestro ejemplo, la siguiente sección es la Barra de Navegación. Esta barra es generada en HTML5 con el elemento <nav>: <!DOCTYPE html> <html lang="es"> <head> <meta charset=”utf-8”> <title>Este texto es el título del documento</title> </head> <body> <header> <h1>Este es el título principal del sitio web</h1> </header> <nav> <ul> <li>principal</li> <li>fotos</li> <li>videos</li> <li>contacto</li> </ul> </nav> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I Como se puede apreciar en el ejemplo anterior, el elemento <nav> se encuentra dentro de las etiquetas <body> pero es ubicado después de la etiqueta de cierre de la cabecera (</header>), no dentro de las etiquetas <header>. Esto es porque <nav> no es parte de la cabecera sino una nueva sección.


PROGRAMACIÓN DE INTERFACES WEB I

<section> Siguiendo nuestro diseño estándar nos encontramos con las columnas que en la Figura 1-1 llamamos Información Principal y Barra Lateral. Como explicamos anteriormente, la columna Información Principal contiene la información más relevante del documento y puede ser encontrada en diferentes formas (por ejemplo, dividida en varios bloques o columnas). Debido a que el propósito de estas columnas es más general, el elemento en HTML5 que especifica estas secciones se llama simplemente <section>:


PROGRAMACIÓN DE INTERFACES WEB I <!DOCTYPE html> <html lang="es"> <head> <meta charset=”utf-8”> <title>Este texto es el título del documento</title> </head> <body> <header> <h1>Este es el título principal del sitio web</h1> </header> <nav> <ul> Al igual que la Barra de Navegación, <li>principal</li> la columna Información Principal es <li>fotos</li> una sección aparte. Por este motivo, <li>videos</li> la sección para Información Principal <li>contacto</li> va debajo de l a etiqueta de cierre </ul> </nav>. </nav> <section> </section> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I <aside> En un típico diseño web (Figura 1-1) la columna llamada Barra Lateral se ubica al lado de la columna Información Principal. Esta es una columna o sección que normalmente contiene datos relacionados con la información principal pero que no son relevantes o igual de importantes. </section> <aside> <blockquote>Mensaje número uno</blockquote> <blockquote>Mensaje número dos</blockquote> </aside> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I El elemento <aside> podría estar ubicado del lado derecho o izquierdo de nuestra página de ejemplo, la etiqueta no tiene una posición predefinida. El elemento <aside> solo describe la información que contiene, no el lugar dentro de la estructura. Este elemento puede estar ubicado en cualquier parte del diseño y ser usado siempre y cuando su contenido no sea considerado como el contenido principal del documento. Por ejemplo, podemos usar <aside> dentro del elemento <section> o incluso insertado entre la información relevante, como en el caso de una cita.


PROGRAMACIÓN DE INTERFACES WEB I <footer> Se utiliza para cerrar el diseño. </aside> <footer> Derechos Reservados © 2013-2014 </footer> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I Dentro del cuerpo El cuerpo de nuestro documento está listo. La estructura básica de nuestro sitio web fue finalizada, pero aún tenemos que trabajar en el contenido. Los elementos HTML5 estudiados hasta el momento nos ayudan a identificar cada sección del diseño y asignar un propósito intrínseco a cada una de ellas, pero lo que es realmente importante para nuestro sitio web se encuentra en el interior de estas secciones. La mayoría de los elementos ya estudiados fueron creados para construir una estructura para el documento HTML que pueda ser identificada y reconocida por los navegadores y nuevos dispositivos.


PROGRAMACIÓN DE INTERFACES WEB I <article> El diseño considerado anteriormente (Figura 1-1) es el más común y representa una estructura esencial para los sitios web estos días, pero es además ejemplo de cómo el contenido clave es mostrado en pantalla. Del mismo modo que los blogs están divididos en entradas, los sitios web normalmente presentan información relevante dividida en partes que comparten similares características. El elemento <article> nos permite identificar cada una de estas partes:

<section> <article> Este es el texto de mi primer mensaje </article> <article> Este es el texto de mi segundo mensaje </article> </section>


PROGRAMACIÓN DE INTERFACES WEB I Como puede observarse en el código, las etiquetas <article> se encuentran ubicadas dentro del elemento <section>. Las etiquetas <article> en nuestro ejemplo pertenecen a esta sección, son sus hijos, del mismo modo que cada elemento dentro de las etiquetas <body> es hijo del cuerpo. Y al igual que cada elemento hijo del cuerpo, las etiquetas <article> son ubicadas una sobre otra, como es mostrado en la Figura 1-4.


PROGRAMACIÓN DE INTERFACES WEB I El elemento <article> no está limitado por su nombre (no se limita, por ejemplo, a artículos de noticias). Este elemento fue creado con la intención de contener unidades independientes de contenido, por lo que puede incluir mensajes de foros, artículos de una revista digital, entradas de blog, comentarios de usuarios, etc… Lo que hace es agrupar porciones de información que están relacionadas entre sí independientemente de su naturaleza.


PROGRAMACIÓN DE INTERFACES WEB I

Como una parte independiente del documento, el contenido de cada elemento <article> tendrá su propia estructura. Para definir esta estructura, podemos aprovechar la versatilidad de los elementos <header> y <footer> estudiados anteriormente. Estos elementos son portables y pueden ser usados no solo para definir los límites del cuerpo sino también en cualquier sección de nuestro documento:


PROGRAMACIĂ“N DE INTERFACES WEB I <section> <article> <header> <h1>TĂ­tulo del mensaje uno</h1> </header> Este es el texto de mi primer mensaje <footer> <p>comentarios (0)</p> </footer> </article> <article> <header> <h1>Titulo del mensaje dos</h1> </header> Este es el texto de mi segundo mensaje <footer> <p>comentarios (0)</p> </footer> </article> </section>


PROGRAMACIÓN DE INTERFACES WEB I

Los dos mensajes insertados en el código fueron construidos con el elemento <article> y tienen una estructura específica. En la parte superior de esta estructura incluimos las etiquetas <header> conteniendo el título definido con el elemento <h1>, debajo se encuentra el contenido mismo del mensaje y sobre el final, luego del texto, vienen las etiquetas <footer> especificando la cantidad de comentarios recibidos.


PROGRAMACIÓN DE INTERFACES WEB I

<hgroup> Dentro de cada elemento <header>, en la parte superior del cuerpo o al comienzo de cada <article>, incorporamos elementos <h1> para declarar un título. Básicamente, las etiquetas <h1> son todo lo que necesitamos para crear una línea de cabecera para cada parte del documento, pero es normal que necesitemos también agregar subtítulos o más información que especifique de qué se trata la página web o una sección en particular. De hecho, el elemento <header> fue creado para contener también otros elementos como tablas de contenido, formularios de búsqueda o textos cortos y logos. Para construir este tipo de cabeceras, podemos aprovechar el resto de las etiquetas H, como <h1>, <h2>, <h3>, <h4>, <h5> y <h6>, pero siempre considerando que por propósitos de procesamiento interno, y para evitar generar múltiples secciones durante la interpretación del documento por parte del navegador, estas etiquetas deben ser agrupadas juntas. Por esta razón, HTML5 provee el elemento <hgroup>:


PROGRAMACIÓN DE INTERFACES WEB I <section> <article> <header> <hgroup> <h1>Título del mensaje uno</h1> <h2>Subtítulo del mensaje uno</h2> </hgroup> <p>publicado 10-12-2011</p> </header> Este es el texto de mi primer mensaje <footer> <p>comentarios (0)</p> </footer> </article> <article> <header> <hgroup> <h1>Título del mensaje dos</h1> <h2>Subtítulo del mensaje dos</h2> </hgroup> <p>publicado 14-10-2013 </p> </header>

Este es el texto de mi segundo mensaje <footer> <p>comentarios (0)</p> </footer> </article> </section>

Siempre recuerde que <hgroup> fue creado solo con la intención de agrupar etiquetas H, exactamente como su nombre lo indica.


PROGRAMACIÓN DE INTERFACES WEB I

<figure> y <figcaption> La etiqueta <figure> fue creada para ayudarnos a ser aún más específicos a la hora de declarar el contenido del documento. Antes de que este elemento sea introducido, no podíamos identificar el contenido que era parte de la información pero a la vez independiente, como ilustraciones, fotos, videos, etc… Normalmente estos elementos son parte del contenido relevante pero pueden ser extraídos o movidos a otra parte sin afectar o interrumpir el flujo del documento. Cuando nos encontramos con esta clase de información, las etiquetas <figure> pueden ser usadas para identificarla:


PROGRAMACIĂ“N DE INTERFACES WEB I </header> Este es el texto de mi primer mensaje <figure> <img src="img/imagen1.jpg"> <figcaption> Esta es la imagen del primer mensaje </figcaption> </figure> <footer> <p>comentarios (0)</p>


PROGRAMACIÓN DE INTERFACES WEB I En el código, en el primer mensaje, luego del texto insertamos una imagen :

<img src="img/imagen1.jpg"> Esta es una práctica común, a menudo el texto es enriquecido con imágenes o videos. Las etiquetas <figure> nos permiten envolver estos complementos visuales y diferenciarlos así de la información más relevante.


PROGRAMACIÓN DE INTERFACES WEB I <mark> La etiqueta <mark> fue agregada para resaltar parte de un texto que originalmente no era considerado importante pero ahora es relevante acorde con las acciones del usuario. El ejemplo que más se ajusta a este caso es un resultado de búsqueda. El elemento <mark> resaltará la parte del texto que concuerda con el texto buscado: <span>Mi <mark>coche</mark> es rojo</span> <section> <article> <header> <span>Mi <mark>coche</mark> es rojo</span> <hgroup> <h1>Título del mensaje uno</h1> <h2>Subtítulo del mensaje uno</h2>


PROGRAMACIÓN DE INTERFACES WEB I <small> La nueva especificidad de HTML es también evidente en elementos como <small>. Previamente este elemento era utilizado con la intención de presentar cualquier texto con letra pequeña. La palabra clave referenciaba el tamaño del texto, independientemente de su significado. En HTML5, el nuevo propósito de <small> es presentar la llamada letra pequeña, como impresiones legales, descargos, etc…

<small> Derechos Reservados © 2013-2014 </small>


PROGRAMACIÓN DE INTERFACES WEB I <cite> Otro elemento que ha cambiado su naturaleza para volverse más específico es <cite>. Ahora las etiquetas <cite> encierran el título de un trabajo, como un libro, una película, una canción, etc…

<span>Amo la película <cite>Tentaciones</cite></span> <address> El elemento <address> es un viejo elemento convertido en un elemento estructural. No necesitamos usarlo previamente para construir nuestra plantilla, sin embargo podría ubicarse perfectamente en algunas situaciones en las que debemos presentar información de contacto relacionada con el contenido del elemento <article> o el cuerpo completo. Este elemento debería ser incluido dentro de <footer>, como en el siguiente ejemplo:


PROGRAMACIĂ“N DE INTERFACES WEB I </aside> <footer> <small> Derechos Reservados © 2013-2014 </small>

<address> <a href="EJM 1.html">Benny Franco</a> </address> </footer> </body>


PROGRAMACIÓN DE INTERFACES WEB I <time> En cada <article> de nuestra última plantilla incluimos la fecha indicando cuándo el mensaje fue publicado. Para esto usamos un simple elemento <p> dentro de la cabecera (<header>) del mensaje, pero existe un elemento en HTML5 específico para este propósito. El elemento <time> nos permite declarar un texto comprensible para humanos y navegadores que representa fecha y hora: <article> <header> <h1>Título del mensaje dos</h1> <time datetime="2011-10-12" pubdate>publicado 12-10-2011</time>

</header> Este es el texto del mensaje </article> El atributo datetime tiene el valor que representa la fecha comprensible para el navegador (timestamp). El formato de este valor deberá seguir un patrón similar al del siguiente ejemplo: 2011-10-12T12:10:45. También incluimos el atributo pubdate, el cual solo es agregado para indicar que el valor del atributo datetime representa la fecha de publicación.


PROGRAMACIÓN DE INTERFACES WEB I

Referencia rápida <header> Este elemento presenta información introductoria y puede ser aplicado en diferentes secciones del documento. Tiene el propósito de contener la cabecera de una sección pero también puede ser utilizado para agrupar índices, formularios de búsqueda, logos, etc… <nav> Este elemento indica una sección de enlaces con propósitos de navegación, como menús o índices. No todos los enlaces dentro de una página web tienen que estar dentro de un elemento <nav>, solo aquellos que forman partes de bloques de navegación. <section> Este elemento representa una sección general del documento. Es usualmente utilizado para construir varios bloques de contenido (por ejemplo, columnas) con el propósito de ordenar el contenido que comparte una característica específica, como capítulos o páginas de un libro, grupo de noticias, artículos, etc…


PROGRAMACIÓN DE INTERFACES WEB I <aside> Este elemento representa contenido que está relacionado con el contenido principal pero no es parte del mismo. Ejemplos pueden ser citas, información en barras laterales, publicidad, etc… <footer> Este elemento representa información adicional sobre su elemento padre. Por ejemplo, un elemento <footer> insertado al final del cuerpo proveerá información adicional sobre el cuerpo del documento, como el pie normal de una página web. Puede ser usado no solo para el cuerpo sino también para diferentes secciones dentro del cuerpo, otorgando información adicional sobre estas secciones específicas. <article> Este elemento representa una porción independiente de información relevante (por ejemplo, cada artículo de un periódico o cada entrada de un blog). El elemento <article> puede ser anidado y usado para mostrar una lista dentro de otra lista de ítems relacionados, como comentarios de usuarios en entradas de blogs, por ejemplo. <hgroup> Este elemento es usado para agrupar elementos H cuando la cabecera tiene múltiples niveles (por ejemplo, una cabecera con título y subtítulo).


PROGRAMACIÓN DE INTERFACES WEB I <figure> Este elemento representa una porción independiente de contenido (por ejemplo, imágenes, diagramas o videos) que son referenciadas desde el contenido principal. Esta es información que puede ser removida sin afectar el fluido del resto del contenido. <figcaption> Este elemento es utilizado para mostrar una leyenda o pequeño texto relacionado con el contenido de un elemento <figure>, como la descripción de una imagen. <mark> Este elemento resalta un texto que tiene relevancia en una situación en particular o que ha sido mostrado en respuesta de la actividad del usuario. <small> Este elemento representa contenido al margen, como letra pequeña (por ejemplo, descargos, restricciones legales, declaración de derechos, etc…).


PROGRAMACIÓN DE INTERFACES WEB I <cite> Este elemento es usado para mostrar el título de un trabajo (libro, película, poema, etc…). <address> Este elemento encierra información de contacto para un elemento <article> o el documento completo. Es recomendable que sea insertado dentro de un elemento <footer>. <time> Este elemento se utiliza para mostrar fecha y hora en formatos comprensibles por los usuarios y el navegador. El valor para los usuarios es ubicado entre las etiquetas mientras que el específico para programas y navegadores es incluido como el valor del atributo datetime. Un segundo atributo optativo llamado pubdate es usado para indicar que el valor de datetime es la fecha de publicación


“ Add your company slogan ”

PROGRAMACIÓN DE INTERFACES

WEB

I Profesor: Dr. José Benito Franco Urrea

LOGO


PROGRAMACIÓN DE INTERFACES WEB I

CSS y HTML Estilos CSS (Cascading Style Sheets) y modelos de caja Elementos block Con respecto a la estructura, básicamente cada navegador ordena los elementos por defecto de acuerdo a su tipo: block (bloque) o inline (en línea). Esta clasificación está asociada con la forma en que los elementos son mostrados en pantalla. Elementos block son posicionados uno sobre otro hacia abajo en la página. Elementos inline son posicionados lado a lado, uno al lado del otro en la misma línea, sin ningún salto de línea a menos que ya no haya más espacio horizontal para ubicarlos.


PROGRAMACIร N DE INTERFACES WEB I Casi todos los elementos estructurales en nuestros documentos serรกn tratados por los navegadores como elementos block por defecto. Esto significa que cada elemento HTML que representa una parte de la organizaciรณn visual (por ejemplo: <section>, <nav>, <header>, <footer>, <div>) serรก posicionado debajo del anterior.


PROGRAMACIÓN DE INTERFACES WEB I Modelos de caja Para aprender cómo podemos crear nuestra propia organización de los elementos en pantalla, debemos primero entender cómo los navegadores procesan el código HTML. Los navegadores consideran cada elemento HTML como una caja. Una página web es en realidad un grupo de cajas ordenadas siguiendo ciertas reglas. Estas reglas son establecidas por estilos provistos por los navegadores o por los diseñadores usando CSS.

CSS tiene un set predeterminado de propiedades destinados a sobrescribir los estilos provistos por navegadores y obtener la organización deseada. Estas propiedades no son específicas, tienen que ser combinadas para formar reglas que luego serán usadas para agrupar cajas y obtener la correcta disposición en pantalla. La combinación de estas reglas es normalmente llamada modelo o sistema de disposición. Todas estas reglas aplicadas juntas constituyen lo que se llama un modelo de caja.


PROGRAMACIÓN DE INTERFACES WEB I

Centrando el cuerpo de la plantilla El primer elemento que es parte del modelo de caja es siempre <body>. Normalmente, por diferentes razones de diseño, el contenido de este elemento debe ser posicionado horizontalmente. Siempre deberemos especificar el tamaño de este contenido, o un tamaño máximo, para obtener un diseño consistente a través de diferentes configuraciones de pantalla.


PROGRAMACIÓN DE INTERFACES WEB I Crear un nuevo archivo con nombre plantilla

.css

y con extensión

(plantilla.css)

Agregar la siguiente línea:

body { text-align: center;} Nota: el archivo plantilla.css debe de estar en el mismo directorio que el archivo ejemplo1.html

En el código del ejemplo1.html agregar la línea: <!DOCTYPE html>

<head> <meta charset=”UTF-8”> <title>Este texto es el título del documento</title>

<link rel="stylesheet" href=“plantilla.css"> </head>


PROGRAMACIÓN DE INTERFACES WEB I Normalmente, para la mayoría de los elementos, necesitamos personalizar los márgenes o simplemente mantenerlos al mínimo. Algunos elementos por defecto tienen márgenes que son diferentes de cero y en la mayoría de los casos demasiado amplios. A medida que avanzamos en la creación de nuestro diseño encontraremos que la mayoría de los elementos utilizados deben tener un margen de 0 pixeles. Para evitar el tener que repetir estilos constantemente, podemos utilizar el selector universal. Selector universal

*

Agregar la siguiente línea al archivo plantilla.css:

* {margin: 0px; padding: 0px;}


PROGRAMACIÓN DE INTERFACES WEB I Existe solo un modelo de caja que es considerado estándar estos días, y muchos otros que aún se encuentran en estado experimental. El modelo válido y ampliamente adoptado es el llamado Modelo de Caja Tradicional, el cual ha sido usado desde la primera versión de CSS.

Creando la caja principal Siguiendo con el diseño de nuestra plantilla, debemos especificar una tamaño o tamaño máximo para el contenido del cuerpo. En el código Ejemplo 1.thml agregamos un elemento <div> a la plantilla para agrupar todas las cajas dentro del cuerpo. Este <div> será considerado la caja principal para la construcción de nuestro modelo de caja (este es el propósito por el que lo agregamos). De este modo, modificando el tamaño de este elemento lo hacemos al mismo tiempo para todos los demás:


PROGRAMACIÓN DE INTERFACES WEB I

Agregar la siguiente línea al archivo plantilla.css: #agrupar {width: 960px; margin: 15px auto;text-align: left;} La regla en el código está referenciando por primera vez un elemento a través del valor de su atributo id. El carácter # le está diciendo al navegador que el elemento afectado por este conjunto de estilos tiene el atributo

id con el

valor agrupar. Esta regla provee tres estilos para la caja principal. El primer estilo establece un valor fijo de 960 pixeles. Esta caja tendrá siempre un ancho de 960 pixeles, lo que representa un valor común para un sitio web estos días (los valores se encuentranentre 960 y 980 pixeles de ancho.


PROGRAMACIÓN DE INTERFACES WEB I En el código el estilo margin: 15px auto asigna 15 pixeles al margen superior e inferior del elemento <div> que está afectando y declara como automático el tamaño de los márgenes de izquierda y derecha (los dos valores declarados son usados para definir los cuatro márgenes). De esta manera, habremos generado un espacio de 15 pixeles en la parte superior e inferior del cuerpo y los espacios a los laterales (margen izquierdo y derecho) serán calculados automáticamente de acuerdo al tamaño del cuerpo del documento y el elemento <div>, efectivamente centrando el contenido en pantalla.


PROGRAMACIÓN DE INTERFACES WEB I El segundo estilo es parte de lo que llamamos el Modelo de Caja Tradicional. En la regla previa del código en el archivo css especificamos que el contenido del cuerpo sería centrado horizontalmente con el estilo text-align: center. Pero esto solo afecta contenido inline, como textos o imágenes. Para elementos block, como un <div>, necesitamos establecer un valor específico para sus márgenes que los adapta automáticamente al tamaño de su elemento padre. La propiedad margin usada para este propósito puede tener cuatro valores: superior, derecho, inferior, izquierdo, en este orden. Esto significa que el primer valor declarado en el estilo representa el margen de la parte superior del elemento, el segundo es el margen de la derecha, y así sucesivamente.


PROGRAMACIÓN DE INTERFACES WEB I La página web ya está centrada y tiene un tamaño fijo de 960 pixeles.

La cabecera Continuemos con el resto de los elementos estructurales. Siguiendo la etiqueta de apertura del <div> principal se encuentra el primer elemento estructural de HTML5: <header>. Este elemento contiene el título principal de nuestra página web y estará ubicado en la parte superior de la pantalla. En nuestra plantilla, <header> fue identificado con el atributo id y el valor cabecera. Como ya mencionamos, cada elemento block, así como el cuerpo, por defecto tiene un valor de ancho del 100%. Esto significa que el elemento ocupará todo el espacio horizontal disponible. En el caso del cuerpo, ese espacio es el ancho total de la pantalla visible (la ventana del navegador), pero en el resto de los elementos el espacio máximo disponible estará determinado por el ancho de su elemento padre. En nuestro ejemplo, el espacio máximo disponible para los elemento dentro de la caja principal será de 960 pixeles, porque su padre es la caja principal la cual fue previamente configurada con este tamaño.


PROGRAMACIÓN DE INTERFACES WEB I Agregar la siguiente línea al archivo plantilla.css: body {text-align: center;} * {margin: 0px;padding: 5px;}

#cabecera {background: #FFFBB9;border: 1px solid #999999;padding: 20px;}

Debido a que <header> ocupará todo el espacio horizontal disponible en la caja principal y será tratado como un elemento block (y por esto posicionada en la parte superior de la página), lo único que resta por hacer es asignar estilos que nos permitirán reconocer el elemento cuando es presentado en pantalla. En la regla mostrada en el código del archivo css le otorgamos a <header> un fondo amarillo, un borde sólido de 1 pixel y un margen interior de 20 pixeles usando la propiedad padding.


PROGRAMACIÓN DE INTERFACES WEB I

Barra de navegación Siguiendo al elemento <header> se encuentra el elemento <nav>, el cual tiene el propósito de proporcionar ayuda para la navegación. Los enlaces agrupados dentro de este elemento representarán el menú de nuestro sitio web. Este menú será una simple barra ubicada debajo de la cabecera. Por este motivo, del mismo modo que el elemento <header>, la mayoría de los estilos que necesitamos para posicionar el elemento <nav> ya fueron asignados: <nav> es un elemento block por lo que será ubicado debajo del elemento previo, su ancho por defecto será 100% por lo que será tan ancho como su padre (el <div> principal), y (también por defecto) será tan alto como su contenido y los márgenes predeterminados. Por lo tanto, lo único que nos queda por hacer es mejorar su aspecto en pantalla. Esto último lo logramos agregando un fondo gris y un pequeño margen interno para separar las opciones del menú del borde del elemento:


PROGRAMACIÓN DE INTERFACES WEB I Agregar las siguientes línea al archivo plantilla.css: body {text-align: center;} * {margin: 0px;padding: 5px;} #cabecera {background: #FFFBB9;border: 1px solid #999999;padding: 20px;}

#menu { background: #CCCCCC; padding: 5px 15px;} #menu li {display: inline-block; list-style: none;padding: 5px;font: bold 14px verdana, sans-serif;} Dentro de la barra de navegación hay una lista creada con las etiquetas <ul> y <li>. Por defecto, los ítems de una lista son posicionados unos sobre otros. Para cambiar este comportamiento y colocar cada opción del menú una al lado de la otra, referenciamos los elementos <li> dentro de este elemento <nav> en particular usando el selector #menu li, y luego asignamos a todos ellos el estilo display: inline-block para convertirlos en lo que se llama cajas inline. A diferencia de los elementos block, los elementos afectados por el parámetro inline-block estandarizado en CSS3 no generan ningún salto de línea pero nos permiten tratarlos como elementos block y así declarar un valor de ancho determinado. Este parámetro también ajusta el tamaño del elemento de acuerdo con su contenido cuando el valor del ancho no fue especificado.


PROGRAMACIÓN DE INTERFACES WEB I

Section y aside Los siguientes elementos estructurales en nuestro código son dos cajas ordenadas horizontalmente. El Modelo de Caja Tradicional es construido sobre estilos CSS que nos permiten especificar la posición de cada caja. Usando la propiedad float podemos posicionar estas cajas del lado izquierdo o derecho de acuerdo a nuestras necesidades. Los elementos que utilizamos en nuestra plantilla HTML para crear estas cajas son <section> y <aside>, cada uno identificado con el atributo id y los valores seccion y columna respectivamente.


PROGRAMACIÓN DE INTERFACES WEB I Agregar las siguientes línea al archivo plantilla.css: body {text-align: center;} * {margin: 0px;padding: 5px;} #cabecera {background: #FFFBB9;border: 1px solid #999999;padding: 20px;}

#menu { background: #CCCCCC; padding: 5px 15px;} #menu li {display: inline-block; list-style: none;padding: 5px;font: bold 14px verdana, sans-serif;}

#seccion {float: left; width: 660px; margin: 20px;} #columna {float: left; width: 220px; margin: 20px 0px; padding: 20px; background: #CCCCCC;}


PROGRAMACIÓN DE INTERFACES WEB I La propiedad de CSS float es una de las propiedades más ampliamente utilizadas para aplicar el Modelo de Caja Tradicional. Hace que el elemento flote hacia un lado o al otro en el espacio disponible. Los elementos afectados por float actúan como elementos block (con la diferencia de que son ubicados de acuerdo al valor de esta propiedad y no el flujo normal del documento). Los elementos son movidos a izquierda o derecha en el área disponible, tanto como sea posible, respondiendo al valor de float. La propiedad float mueve la caja al espacio disponible del lado especificado por su valor, width asigna un tamaño horizontal y margin, por supuesto, declara el margen del elemento. Afectado por estos valores, el contenido del elemento <section> estará situado a la izquierda de la pantalla con un tamaño de 660 pixeles, más 40 pixeles de margen, ocupando un espacio total de 700 pixeles de ancho.


PROGRAMACIÓN DE INTERFACES WEB I La propiedad float del elemento <aside> también tiene el valor left (izquierda). Esto significa que la caja generada será movida al espacio disponible a su izquierda. Debido a que la caja previa creada por el elemento <section> fue también movida a la izquierda de la pantalla, ahora el espacio disponible será solo el que esta caja dejó libre. La nueva caja quedará ubicada en la misma línea que la primera pero a su derecha, ocupando el espacio restante en la línea, creando la segunda columna de nuestro diseño. El tamaño declarado para esta segunda caja fue de 220 pixeles. También agregamos un fondo gris y configuramos un margen interno de 20 pixeles. Como resultado final, el ancho de esta caja será de 220 pixeles más 40 pixeles agregados por la propiedad padding (los márgenes de los lados fueron declarados a 0px).


PROGRAMACIÓN DE INTERFACES WEB I

Footer Para finalizar la aplicación del Modelo de Caja Tradicional, otra propiedad CSS tiene que ser aplicada al elemento <footer>. Esta propiedad devuelve al documento su flujo normal y nos permite posicionar <footer> debajo del último elemento en lugar de a su lado:

Agregar las siguientes línea al archivo plantilla.css:

#pie { clear: both; text-align: center; padding: 20px; border-top: 2px solid #999999;}


PROGRAMACIÓN DE INTERFACES WEB I Declara un borde de 2 pixeles en la parte superior de <footer>, un margen interno (padding) de 20 pixeles, y centra el texto dentro del elemento. A sí mismo, restaura el normal flujo del documento con la propiedad clear. Esta propiedad simplemente restaura las condiciones normales del área ocupada por el elemento, no permitiéndole posicionarse adyacente a una caja flotante. El valor usualmente utilizado es both, el cual significa que ambos lados del elemento serán restaurados y el elemento seguirá el flujo normal (este elemento ya no es flotante como los anteriores). Esto, para un elemento block, quiere decir que será posicionado debajo del último elemento, en una nueva línea. La propiedad clear también empuja los elementos verticalmente, haciendo que las cajas flotantes ocupen un área real en la pantalla. Sin esta propiedad, el navegador presenta el documento en pantalla como si los elementos flotantes no existieran y las cajas se superponen.


PROGRAMACIÓN DE INTERFACES WEB I


PROGRAMACIÓN DE INTERFACES WEB I Los valores left (izquierda) y right (derecha) de la propiedad float no significan que las cajas deben estar necesariamente posicionadas del lado izquierdo o derecho de la ventana. Lo que los valores hacen es volver flotante ese lado del elemento, rompiendo el flujo normal del documento. Si el valor es left, por ejemplo, el navegador tratará de posicionar el elemento del lado izquierdo en el espacio disponible. Si hay espacio disponible luego de otro elemento, este nuevo elemento será situado a su derecha, porque su lado izquierdo fue configurado como flotante. El elemento flota hacia la izquierda hasta que encuentra algo que lo bloquea, como otro elemento o el borde de su elemento padre. Esto es importante cuando queremos crear varias columnas en la pantalla. En este caso cada columna tendrá el valor left en la propiedad float para asegurar que cada columna estará continua a la otra en el orden correcto. De este modo, cada columna flotará hacia la izquierda hasta que es bloqueada por otra columna o el borde del elemento padre.


PROGRAMACIÓN DE INTERFACES WEB I Últimos toques Lo único que nos queda por hacer es trabajar en el diseño del contenido. Para esto, solo necesitamos configurar los pocos elementos HTML5 restantes:

Agregar las siguientes línea al archivo plantilla.css:

article {background: #FFFBCC; border: 1px solid #999999; padding: 20px; margin-bottom: 15px;} article footer {text-align: right;} time {color: #999999;} figcaption {font: italic 14px verdana, sans-serif;}


PROGRAMACIÓN DE INTERFACES WEB I La primera regla del código referencia todos los elementos <article> y les otorga algunos estilos básicos (color de fondo, un borde sólido de 1 pixel, margen interno y margen inferior). El margen inferior de 15 pixeles tiene el propósito de separar un elemento <article> del siguiente verticalmente. Cada elemento <article> cuenta también con un elemento <footer> que muestra el número de comentarios recibidos. Para referenciar un elemento <footer> dentro de un elemento <article>, usamos el selector article footer que significa “cada <footer> dentro de un <article> será afectado por los siguientes estilos”. Esta técnica de referencia fue aplicada aquí para alinear a la derecha el texto dentro de los elementos <footer> de cada <article>. Al final del código en el Listado 2-35 cambiamos el color de cada elemento <time> y diferenciamos la descripción de la imagen (insertada con el elemento <figcaption>) del resto del texto usando una tipo de letra diferente.


“ Add your company slogan ”

PROGRAMACIÓN DE INTERFACES

WEB

I Profesor: Dr. José Benito Franco Urrea

LOGO


PROGRAMACIÓN DE INTERFACES WEB I

CSS y HTML Estilos CSS (Cascading Style Sheets) y modelos de caja Elementos block Con respecto a la estructura, básicamente cada navegador ordena los elementos por defecto de acuerdo a su tipo: block (bloque) o inline (en línea). Esta clasificación está asociada con la forma en que los elementos son mostrados en pantalla. Elementos block son posicionados uno sobre otro hacia abajo en la página. Elementos inline son posicionados lado a lado, uno al lado del otro en la misma línea, sin ningún salto de línea a menos que ya no haya más espacio horizontal para ubicarlos.


PROGRAMACIร N DE INTERFACES WEB I Casi todos los elementos estructurales en nuestros documentos serรกn tratados por los navegadores como elementos block por defecto. Esto significa que cada elemento HTML que representa una parte de la organizaciรณn visual (por ejemplo: <section>, <nav>, <header>, <footer>, <div>) serรก posicionado debajo del anterior.


PROGRAMACIÓN DE INTERFACES WEB I Modelos de caja Para aprender cómo podemos crear nuestra propia organización de los elementos en pantalla, debemos primero entender cómo los navegadores procesan el código HTML. Los navegadores consideran cada elemento HTML como una caja. Una página web es en realidad un grupo de cajas ordenadas siguiendo ciertas reglas. Estas reglas son establecidas por estilos provistos por los navegadores o por los diseñadores usando CSS.

CSS tiene un set predeterminado de propiedades destinados a sobrescribir los estilos provistos por navegadores y obtener la organización deseada. Estas propiedades no son específicas, tienen que ser combinadas para formar reglas que luego serán usadas para agrupar cajas y obtener la correcta disposición en pantalla. La combinación de estas reglas es normalmente llamada modelo o sistema de disposición. Todas estas reglas aplicadas juntas constituyen lo que se llama un modelo de caja.


PROGRAMACIÓN DE INTERFACES WEB I Existe solo un modelo de caja que es considerado estándar estos días, y muchos otros que aún se encuentran en estado experimental. El modelo válido y ampliamente adoptado es el llamado Modelo de Caja Tradicional, el cual ha sido usado desde la primera versión de CSS.

Estilos en línea Una de las técnicas más simples para incorporar estilos CSS a un documento HTML es la de asignar los estilos dentro de las etiquetas por medio del atributo style.


PROGRAMACIÓN DE INTERFACES WEB I Documento HTML simple que contiene el elemento <p> modificado por el atributo style con el valor font-size: 20px. Este estilo cambia el tamaño por defecto del texto dentro del elemento <p> a un nuevo tamaño de 20 pixeles. Estilos1.html <!DOCTYPE html> <head> <meta charset="utf-8"/> <title>Ejemplos con CSS3</title> </head> <body> <p style=”font-size: 20px”>Página WEB con estilos CSS</p> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I Usar la técnica demostrada anteriormente es una buena manera de probar estilos y obtener una vista rápida de sus efectos, pero no es recomendado para aplicar estilos a todo el documento. La razón es simple: cuando usamos esta técnica, debemos escribir y repetir cada estilo en cada uno de los elementos que queremos modificar, incrementando el tamaño del documento a proporciones inaceptables y haciéndolo imposible de mantener y actualizar. Solo imagine lo que ocurriría si decide que en lugar de 20 pixeles el tamaño de cada uno de los elementos <p> debería ser de 24 pixeles. Tendría que modificar cada estilo en cada etiqueta <p> en el documento completo.


PROGRAMACIĂ“N DE INTERFACES WEB I Estilos embebidos Una mejor alternativa es insertar los estilos en la cabecera del documento y luego usar referencias para afectar los elementos HTML correspondientes:

estilos2.html <!DOCTYPE html> <head> <meta charset="utf-8"/> <tittle>Ejemplos con CSS3</tittle> <style> p { font-size: 200%; font-weight: bold;} </style> </head> <body>


PROGRAMACIร N DE INTERFACES WEB I <p> Pรกgina WEB con estilos CSS </p> <p style="text-transform: uppercase;"> Prueba de transformaciรณn </p> <p style="text-transform: lowercase;"> Prueba de transformaciรณn </p> <p style="text-transform: capitalize;"> Prueba de transformaciรณn </p> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I Decoración del texto Añade a las cadenas de texto cierto formato mediante el uso de la propiedad "text-decoration", la cual puede tomar uno de los siguientes valores:

<!DOCTYPE html> <head> <meta charset="utf-8"/> <title>Ejemplos con CSS3</title> <style> p { font-size: 200%; font-weight: bold;} </style> </head> <body>


PROGRAMACIÓN DE INTERFACES WEB I <p style="text-decoration: underline;"> Prueba de decoración del texto </p> <p style="text-decoration: overline;"> Prueba de decoración del texto </p> <p style="text-decoration: line-through;"> Prueba de decoración del texto </p> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I Crear un nuevo archivo con nombre misestilos.css En la primera línea agregar

p { font-size: 50px } body{background: orange} p{color: yellow; background: blue} Crear el archivo estilos3.html <!DOCTYPE html> La etiqueta <link> inserta <head> archivos con estilos CSS <meta charset="utf-8"/> en nuestros documentos. <title>Ejemplos con CSS3</title> <link rel="stylesheet" href="misestilos.css"> </head> <body> <p> Página WEB con estilos CSS </p> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I

Almacenar todos nuestros estilos en un archivo externo e insertar este archivo dentro de cada documento que lo necesite es muy conveniente, sin embargo no podremos hacerlo sin buenos mecanismos que nos ayuden a establecer una específica relación entre estos estilos y los elementos del documento que van a ser afectados.


PROGRAMACIÓN DE INTERFACES WEB I Referenciando con el atributo id El atributo id es como un nombre que identifica al elemento. Esto significa que el valor de este atributo no puede ser duplicado. Este nombre debe ser único en todo el documento. Para referenciar un elemento en particular usando el atributo id desde nuestro archivo CSS la regla debe ser declarada con el símbolo # al frente del valor que usamos para identificar el elemento:

Archivo misestilos2.css agregar la línea #texto1 { font-size: 80px }


PROGRAMACIร N DE INTERFACES WEB I Nuestro cรณdigo HTML lucirรก de esta manera EJM 8.html: estilos4.html

<!DOCTYPE html> <head> <meta charset="utf-8"/> <title>Ejemplos con CSS3</title> <link rel="stylesheet" href="misestilos2.css"> </head> <body> <p id="texto1">Ejemplos con ID de estilos con CSS3</p> <p> texto sin estilo </p> </body> </html> El resultado de este procedimiento es que cada vez que hacemos una referencia usando el identificador texto1 en nuestro archivo CSS, el elemento con ese valor de id serรก modificado, pero el resto de los elementos <p>, o cualquier otro elemento en el mismo documento, no serรกn afectados.


PROGRAMACIÓN DE INTERFACES WEB I Referenciando con el atributo class La mayoría del tiempo, en lugar de utilizar el atributo id para propósitos de estilos es mejor utilizar class. Este atributo es más flexible y puede ser asignado a cada elemento HTML en el documento que comparte un diseño similar:

Archivo misestilos2.css agregar la línea #texto1 { font-size: 80px }

.texto2 { font-size: 30px }


PROGRAMACIĂ“N DE INTERFACES WEB I Estilos4.html <!DOCTYPE html> <head> <meta charset="utf-8"/> <title>Ejemplos con CSS3</title> <link rel="stylesheet" href="misestilos2.css"> </head> <body> <p id="texto1"> Ejemplos con ID de estilos con CSS3 </p>

<p> otro texto sin estilo </p> <p class="texto2">Texto con estilo usando class</p> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I

Centrando el cuerpo El primer elemento que es parte del modelo de caja es siempre <body>. Normalmente, por diferentes razones de diseño, el contenido de este elemento debe ser posicionado horizontalmente. Siempre deberemos especificar el tamaño de este contenido, o un tamaño máximo, para obtener un diseño consistente a través de diferentes configuraciones de pantalla.


PROGRAMACIÓN DE INTERFACES WEB I Archivo misestilos2.css agregar la línea #texto1 { font-size: 80px } .texto2 { font-size: 30px }

body { text-align: center;}

Estilos4.html (sin cambio)


PROGRAMACIÓN DE INTERFACES WEB I El elemento <h1>, por ejemplo, será usado varias veces en el documento, no solo para el título principal de la página web como pasaba anteriormente sino también para secciones internas, por lo que tenemos que otorgarle los estilos apropiados: Archivo misestilos2.css agregar la línea

#texto1 { font-size: 80px } .texto2 { font-size: 30px } body { text-align: center;}

h1 {font: bold 20px verdana, sans-serif;} h2 {font: bold 15px verdana, sans-serif;}


PROGRAMACIÓN DE INTERFACES WEB I Estilos4.html

<!DOCTYPE html> <head> <meta charset="utf-8"/> <title> Ejemplos con CSS3 </title> <link rel="stylesheet" href="misestilos2.css"> </head> <body> <header> <h1>Este es el título principal del sitio web</h1> <h2>Segundo título</h2> </header> <p id="texto1">Ejemplos con ID de estilos con CSS3</p> <p> texto sin aplicar estilos </p> <p class="texto2">texto con estilo usuando class</p> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I La propiedad font, asignada a los elementos <h1> y <h2> en el código anterior, nos permite declarar todos los estilos para el texto en una sola línea. Las propiedades que pueden ser declaradas usando font son: font-style, font-variant, font-weight, font-size/lineheight, y font-family en este orden. Con estas reglas estamos cambiando el grosor, tamaño y tipo de letra del texto dentro de los elementos <h1> y <h2> a los valores que deseamos.


PROGRAMACIÓN DE INTERFACES WEB I Normalmente, para la mayoría de los elementos, necesitamos personalizar los márgenes o simplemente mantenerlos al mínimo. Algunos elementos por defecto tienen márgenes que son diferentes de cero y en la mayoría de los casos demasiado amplios. A medida que avanzamos en la creación de nuestro diseño encontraremos que la mayoría de los elementos utilizados deben tener un margen de 0 pixeles. Para evitar el tener que repetir estilos constantemente, podemos utilizar el selector universal. Selector universal * *{ margin: 0px; padding: 0px; }


PROGRAMACIĂ“N DE INTERFACES WEB I Archivo misestilos2.css agregar la lĂ­nea

#texto1 { font-size: 80px } .texto2 { font-size: 30px } body { text-align: center;} h1 {font: bold 20px verdana, sans-serif;} h2 {font: bold 15px verdana, sans-serif;}

* {margin: 0px;padding: 0px;}


PROGRAMACIÓN DE INTERFACES WEB I Colores Lista de colores disponibles por nombre: aqua, gray, navy, silver, black, green, olive, teal, blue, lime, purple, white, fuchsia, maroon, red, yellow. Están tomados de los dieciséis colores básicos que se generan como VGA. Colores definidos mediante valores RGB. Pueden definirse como valores porcentuales entre 0 y 100 % (color: rgb(100%,80%,60%)) , o mediante valores numéricos entre 0 y 255 (color: rgb(255,0,0)).


PROGRAMACIร N DE INTERFACES WEB I Colores definidos mediante valores hexadecimales con la estructura #RRGGBB (color: #FF0000). La notaciรณn hexadecimal puede abreviarse cuando sus valores se repiten para cada par, como en la expresiรณn color: #000. Colores web-safe. Son aquellos cuya visualizaciรณn se mantendrรก entre navegadores. Existen 216 de estos colores, los cuales se obtienen mediante incrementos del 20%, 51 unidades o 33 en hexadecimal (rgb(40%,100%,80%), rgb(0,204,153) o #669933).


PROGRAMACIÓN DE INTERFACES WEB I Unidades.- Medidas absolutas de longitud: -Pulgadas (in). -Centímetros (cm). -Milímetros (mm). -Puntos (pt). Medida tipográfica utilizada en la definición de las fuentes. En una pulgada hay 72 puntos (font-size: 18pt equivale a font-size: 0.25in). -Picas (pc). Mediada también tipográfica que hace corresponder una pica a 12 puntos.

Medidas relativas de longitud: em: se corresponde al tamaño de la fuente para el párrafo en concreto al que se aplique. Si definimos que el texto tendrá un tamaño de 14 puntos, el valor de 1em será equivalente a 14 puntos. ex: similar a em, pero hace corresponder el tamaño actual de la fuente, al que tendría una X minúscula.


PROGRAMACIÓN DE INTERFACES WEB I

Indentación Indentación de la primera línea de un párrafo. Es una propiedad que se aplica a elementos de tipo bloque, y acepta tanto un valor de longitud, como un porcentaje: P {text-indent: 0.25in;} Podemos conseguir una sangría francesa, utilizando valores negativos para la indentación: P {text-indent: -30px;}


PROGRAMACIĂ“N DE INTERFACES WEB I Crear el archivo estilo.css .indentacion { text-indent: 0.25in; } .indentacion_francesa { margin-left: 0.25in; text-indent: -0.25in; } .indentacion:first-letter, p.indentacion_francesa:first-letter {font-size: 24pt;background-color: blue; color: white; padding: 5px; border: 1px solid navy;}

Crear el archivo Identacion.html <!DOCTYPE html> <head> <title>Propiedades del texto</title> <link rel="stylesheet" href="estilo.css"> </head> <body>


PROGRAMACIร N DE INTERFACES WEB I <p class="indentacion"> Texto de ejemplo sobre los valores de la indentaciรณn. Texto de ejemplo sobre los valores de la indentaciรณn.

</p> <p class="indentacion_francesa"> Texto de ejemplo sobre los valores de la indentaciรณn. Texto de ejemplo sobre los valores de la indentaciรณn.

</p> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I

Alineación Nos permite alinear los textos dentro de elementos de bloque de las siguientes formas: -Izquierda (left). -Centrado (center). -Derecha (right). -Justificado (justify), es decir, centrado a derecha e izquierda.

Crear el archivo estiloAlineacion.css

h1 { text-align: left; } h2 { text-align: right; } h3 { text-align: center; }


PROGRAMACIÓN DE INTERFACES WEB I

Crear el archivo alineacion.html <!DOCTYPE html> <head> <title>Propiedades del texto</title> <link rel="stylesheet" href="estiloAlineacion.css">

</head> <body> <h1>Alineación izquierda</h1> <h2>Alineación derecha</h2> <h3>Alineación centrada</h3> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I Anchura de líneas Define la distancia entre las líneas base de dos líneas de texto. En resumen, esta propiedad permite aumentar o disminuir la distancia vertical entre dos líneas de texto. Esta distancia pude expresarse con medidas relativa (em, ex), valores absolutos (cm, in, px) o porcentajes directamente.

Crear el archivo estiloAnchura.css p { width: 300px; } p.normal { line-height: 14pt; } p.grande { line-height: 150%; } p.xgrande { line-height: 200%; }


PROGRAMACIÓN DE INTERFACES WEB I

Crear el archivo anchura.html <!DOCTYPE html> <head> <title>Propiedades del texto</title> <link rel="stylesheet" href="estiloAnchura.css"> </head> <body> <p class="normal"> Texto con distintas medidas entre líneas para ver su comportamiento en párrafos de texto. </p> <p class="grande"> Texto con distintas medidas entre líneas para ver su comportamiento en párrafos de texto. </p> <p class="xgrande"> Texto con distintas medidas entre líneas para ver su comportamiento en párrafos de texto. </p> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I El atributo word-wrap tiene dos posibles valores: normal o break-word. Hace que las palabras no se corten, lo que sería el comportamiento normal que conocíamos hasta ahora, ocurriendo que las palabras largas nos puedan descuadrar nuestro diseño. Ahora podemos ver una caja que tenía una anchura de 300 px y que por culpa de una palabra muy larga se deforma la caja o el texto aparece por fuera.


PROGRAMACIĂ“N DE INTERFACES WEB I CREAR EL ARCHIVO NUEVO cortaparrafo.css

#ejemplo{ width:100px; height:200px; background-color:red; } .ww{ word-wrap: break-word; } h2 {font: bold 15px verdana, sans-serif;}

p{color: green;}


PROGRAMACIร N DE INTERFACES WEB I CREAR EL ARCHIVO NUEVO cortaparrafo.html <!DOCTYPE html> <head> <title>Propiedades corta Pรกrrafo</title> <link rel="stylesheet" href="cortaparrafo.css"> </head> <body> <h2>Sin word-wrap</h2> <div id="ejemplo">

<P>Enalemanlaspalabrasseconformanavecesuniendoseaotraspalabrasporl oquesevuelvenenormes</P> </div> <h2>Con word-wrap</h2> <div class="ww" id="ejemplo"> <p>Enalemanlaspalabrasseconformanavecesuniendoseaotraspalabrasporl oquesevuelvenenormes</P> </div> </body> </html>


PROGRAMACIÓN DE INTERFACES WEB I El elemento <video> Una de las características más mencionadas de HTML5 fue la capacidad de procesar video.

CREAR EL ARCHIVO NUEVO video.html <!DOCTYPE html> <head> <title>Reproductor de Video</title> </head> <body> <section id="reproductor"> <video id="medio" width="720" height="400" controls> <source src="atreverse.mp4" controls></video> </section> </body> </html>


“ Add your company slogan ”

PROGRAMACIÓN DE INTERFACES

WEB

I Profesor: Dr. José Benito Franco Urrea

LOGO OCTUBRE 2013


PROGRAMACIĂ“N DE INTERFACES WEB I Nuevas propiedades de CSS3 Las nuevas propiedades CSS3 son extremadamente poderosas y deben ser estudiadas una por una, pero para facilitar su aprendizaje vamos a aplicar todas ellas sobre la misma plantilla. Por este motivo comenzaremos por crear un documento HTML sencillo con algunos estilos bĂĄsicos:

Archivo nuevocss3.css

body {text-align: center;} #principal { display: block; width: 500px; margin: 50px auto; padding: 15px; text-align: center; border: 1px solid #999999; background: #DDDDDD;}

#titulo {font: bold 36px verdana, sans-serif;}


PROGRAMACIĂ“N DE INTERFACES WEB I

Archivo nuevosestilos.html <!DOCTYPE html> <head> <title>Nuevos Estilos CSS3</title> <link rel="stylesheet" href="nuevocss3.css"> </head> <body> <header id="principal"> <span id="titulo">Estilos CSS Web 2.0</span> </header> </body> </html>


PROGRAMACIร N DE INTERFACES WEB I Border-radius La propiedad border-radius logra el efecto de esquinas redondeadas en las cajas de sus pรกginas web.

Modificar el Archivo nuevocss3.css

body {text-align: center;} #principal { display: block; width: 500px; margin: 50px auto; padding: 15px; text-align: center; border: 1px solid #999999; background: #DDDDDD;

border-radius: 20px;}

#titulo {font: bold 36px verdana, sans-serif;}


PROGRAMACIÓN DE INTERFACES WEB I Box-shadow Gracias a CSS3 y a la nueva propiedad box-shadow podremos aplicar sombras a nuestras cajas con solo una simple línea de código:

Modificar el Archivo nuevocss3.css body {text-align: center;} #principal { display: block; width: 500px; margin: 50px auto; padding: 15px; text-align: center; border: 1px solid #999999; background: #DDDDDD; border-radius: 20px;

box-shadow: rgb(150,150,150) 5px 5px;} #titulo {font: bold 36px verdana, sans-serif;}


PROGRAMACIÓN DE INTERFACES WEB I Box-shadow box-shadow: rgb(150,150,150) 5px 5px 10px El valor de 10px se puede agregar es la distancia de difuminación

box-shadow: rgb(150,150,150) 5px 5px 10px inset palabra clave: inset. Esta palabra clave convierte a la sombra externa en una sombra interna, lo cual provee un efecto de profundidad al elemento afectado.


PROGRAMACIĂ“N DE INTERFACES WEB I Modificar el Archivo nuevocss3.css body {text-align: center;} #principal { display: block; width: 500px; margin: 50px auto; padding: 15px; text-align: center; border: 1px solid #999999; background: #DDDDDD; border-radius: 20px;

box-shadow: rgb(150,150,150) 5px 5px 10px inset;} #titulo {font: bold 36px verdana, sans-serif;}


PROGRAMACIĂ“N DE INTERFACES WEB I Text-shadow Para crear sombras para figuras irregulares como textos, existe una propiedad especial llamada text-shadow:

Modificar el Archivo nuevocss3.css body {text-align: center;} #principal { display: block; width: 500px; margin: 50px auto; padding: 15px; text-align: center; border: 1px solid #999999; background: #DDDDDD; border-radius: 20px;

box-shadow: rgb(150,150,150) 5px 5px 10px inset;} #titulo {font: bold 36px verdana, sans-serif;

text-shadow: rgb(0,0,150) 3px 3px 5px;}


PROGRAMACIÓN DE INTERFACES WEB I @font-face

http://www.dafont.com

La propiedad @font-face permite a los diseñadores proveer un archivo conteniendo una fuente específica para mostrar sus textos en la página. Ahora podemos incluir cualquier fuente que necesitemos con solo proveer el archivo adecuado:

Modificar el Archivo nuevocss3.css body {text-align: center;} #principal { display: block; width: 500px; margin: 50px auto; padding: 15px; text-align: center; border: 1px solid #999999; background: #DDDDDD; border-radius: 20px; box-shadow: rgb(150,150,150) 5px 5px 10px inset;} #titulo {font: bold 36px MiNuevaFuente,verdana, sans-serif; text-shadow: rgb(0,0,150) 3px 3px 5px;}

@font-face { font-family: 'MiNuevaFuente'; src: url('COMICATE.TTF');}


PROGRAMACIÓN DE INTERFACES WEB I -moz- para Firefox. -webkit- para Safari y Chrome. -o- para Opera. -khtml- para Konqueror. -ms- para Internet Explorer. -chrome- específico para Google Chrome.


PROGRAMACIÓN DE INTERFACES WEB I


PROGRAMACIÓN DE INTERFACES WEB I


PROGRAMACIÓN DE INTERFACES WEB I


PROGRAMACIÓN DE INTERFACES WEB I


H1 H1 es una etiqueta que sirve para colocar la frase que indica el título del contenido de una página web. Importante en este punto delimitar de forma clara la diferencia entre sitio web y página web: un título H1 debe hacer referencia a una página de tu sitio web, y no al sitio web en general. De este párrafo, se extraen varias conclusiones. La primera de ellas, es que si el titular H1 resume en una frase el contenido de la página actual, no tiene sentido que en un mismo documento web tengamos varios H1, pues el resumen de tu sitio debe ser uno. Un caso de mal uso relacionado con este hecho son los blogs donde en el listado de los últimos posts cada uno de ellos lleva un titular H1: esto no es correcto, y lo adecuado sería que en el listado los títulos fueran H2 (etiqueta de título de menor importancia de la que hablaré más tarde), y al acceder al post completo ya sí se nos mostrara el título como un H1.

Header La etiqueta header sirve para mostrar información de cabecera útil para un documento u otras secciones principales. Típicamente se utiliza para agregar encabezados, es decir, h1-h6 que definen el título y subtítulos de la sección, aunque también se puede utilizar para dar información sobre fechas de publicación, versiones del contenido mostrado, o enlaces de navegación dentro del documento (por ejemplo, enlaces a la home, información de contacto, o al mapa web de una página). A pesar del nombre de la etiqueta, ésta no tiene por qué ir situado al principio del HTML, sino que puede estar posicionado en cualquier posición dentro de nuestro documento.

Ej: <header> <h1>Blog: HTML5 Paso a paso</h1> <p>Mi nombre es Sergio Raposo Vargas</p> </header>

Nav. La etiqueta nav en html 5 es utilizada para contener elementos de navegación como puede ser el menú de navegación principal de un sitio web, esta etiqueta es el sustituto de la etiqueta ul combinada con un poco de css para generar el menú de nuestra web.

Section. El elemento de HTML section (<section>) representa una sección genérica de un documento, es decir, sirve para agrupar contenidos que comparten un mismo tema; típicamente, estos llevan un título de sección. Jesús Isidro González Espinoza. Programación de interfaces web. Tarea 1. 7mo Cuatrimestre. Profesor: Dr. Benito Franco Urrea. Ciudad Obregón, Sonora a 15 de octubre de 2014.


Notas de uso: 

Si la intención es separar el contenido de un elemento <section> , es mejor usar el elemento <article> en su lugar.

No se debe usar el elemento <section> como un mero contenedor genérico; para esto ya existe <div>, especialmente si el objetivo solamente es aplicar un estilo (CSS) a la sección. Como regla general, el título de una sección debería aparecer en el esquema del documento.

Aside. El Elemento HTML Aside (<aside>) representa una sección de una página que consiste en contenido que está tangencialmente relacionado con el contenido que le rodea, que podría ser considerado independiente de ese contenido. Estas secciones son a menudo representadas como barras laterales o como inserciones y contienen una explicación al margen como una definición de glosario, elementos relacionados indirectamente, como publicidad, la biografía del autor, o en aplicaciones web, la información de perfil o enlaces a blogs relacionados.

Footer La etiqueta footer representa el pie de un documento o sección. La información que se suele añadir en este bloque es el autor del documento, enlaces a contenido relacionado, información de copyright, avisos legales, etc . Igualmente podremos agregar al pie información de contacto. Recordar que para ello disponemos de otra etiqueta llamada address. Al igual que en la etiqueta anterior, a pesar de su nombre, este elemento no tiene por qué ir al final del documento o sección aunque suele ser lo más normal. Ej: <footer>Este documento fue escrito en 2011.</footer>

Ul.

Jesús Isidro González Espinoza. Programación de interfaces web. Tarea 1. 7mo Cuatrimestre. Profesor: Dr. Benito Franco Urrea. Ciudad Obregón, Sonora a 15 de octubre de 2014.


Las listas no ordenadas van dentro de la etiqueta <ul> y de su cierre </ul>. Cada punto que queramos añadir a la lista, lo haremos dentro de la etiqueta <li> y su cierre. Si no le indicamos nada a la etiqueta <li>, ésta se generará de forma automática. Pero si queremos definir nosotros mismo el símbolo del punto, podemos gracias al atributo “type”. Así podemos hacer que la lista esté definida por puntos negros (li type="disc"), por puntos con el fondo blanco (li type="circle") o por cuadrados (li type="square"). Aunque esta apariencia dependerá del navegador. Hay algunos navegadores que dan otras apariencias a estos mismos atributos. Vamos con un pequeño ejemplo en código: <ul> <li type="circle">Esto es un tipo de punto.</li> <li type="square">Este es otro.</li> <li type="disc">Y este es otro diferente.</li> </ul>

Li El elemento HTML li inserta un ítem en una lista, ya sea ordenada (elemento HTML ol) ó desordenada (elemento HTML ul). Nota que los atributos "type" y "value" de este elemento han sido desaprobados desaprobados en HTML 4.01 por su naturaleza presentacional. Un buen reemplazo purde ser logrado con el uso de hojas de estilo.

Jesús Isidro González Espinoza. Programación de interfaces web. Tarea 1. 7mo Cuatrimestre. Profesor: Dr. Benito Franco Urrea. Ciudad Obregón, Sonora a 15 de octubre de 2014.


Tarea 2. Requisitos para registrar un dominio .com Antes de registrar un dominio .com, es necesario cumplir una serie de normas técnicas y administrativas:  

La longitud mínima del nombre de dominio es de 2 caracteres y la máxima de 64. Pueden consistir en todas las letras del alfabeto inglés y castellano, es decir: de la a a la z incluyendo la letra ñ, los acentos, números y guiones y, en general, todos los caracteres de la lengua castellana. Cualquier otro tipo de carácter, incluyendo espacios, subrayados y comas, no es válido.

Por otro lado, no existen limitaciones al registro de nombres de dominio .com, por lo que su número es ilimitado, siempre que la empresa cumpla con los requisitos documentales exigidos. No obstante, se recomienda que las empresas registren sus marcas de productos, servicios,… como nombre de dominio, a fin de que la empresa goce de suficiente protección frente a terceros, tanto en el mundo físico como en el virtual. provedores de hosting u huspedaje de paginas Cuando se habla de hospedaje web (web hosting) se está hablando siempre de computadoras. Las computadoras que se utilizan para otorgar este servicio suelen ser, sin embargo, algo distintas a las que se utilizan en el hogar, pero al fin y al cabo son computadoras conectadas a internet donde se almacenan archivos y desde donde estos archivos son enviados a otras computadoras (como la tuya) a través de internet. Las compañías que se dedican a ofrecer el servicio de hospedaje web (o web hosting en inglés) son llamadas proveedores de hospedaje web o alguno de sus sinónimos como alojamiento web, web hosting o simplemente hosting. ¿Cómo funciona el hospedaje web (web hosting)? Un proveedor de hospedaje web (web hosting) renta por lo general espacio y conectividad dentro de uno de sus servidores web de tal forma que el cliente pueda tener sus sitios web disponibles y accesibles a través de internet. Los proveedores de hospedaje web son responsables del mantenimento de los servidores que controlan así como de otros servicios básicos como los respaldos (backups) y las actualizacione de software de los servidores de alojamiento web (upgrades). Existen compañías proveedoras de hospedaje web (web hosting) de todos los tamaños, desde aquellas que apenas tienen uno o dos servidores hasta las compañías más grandes que cuentan Jesús Isidro González Espinoza. Ing. En Sistemas Computacionales. Programación de interfaces web. Maestro: Dr. José Benito Franco Urrea. UNIDEP.


incluso con centros de datos (datacenters) completos con cientos de servidores conectados a internet. Un centro de datos eficiente y profesional, es un lugar físico que cuenta con todas las facilidades para ofrecer los servicios de hospedaje web (web hosting) principalmente una o varias conexiones permanentes a internet de alta velocidad, monitoreo de servicios 24/7, energía electríca ininterrumpida (respaldo de energía o UPS), control de temperatura y humedad, seguridad física (accesos seguros) y otras más, de tal forma que exista un ambiente ideal para los sistemas y las computadoras que se localizan dentro de la instalación. Dependiendo de las necesidades y el presupuesto que tenga cada cliente, es posible rentar desde un espacio básico en un servidor web hasta uno o varios servidores completos (lo que se llama servidores dedicados puesto que son dedicados a un solo cliente a diferencia de los servidores compartidos, cuyos recursos son usados por muchos clientes). Incluso con algunos proveedores existe la opción de comprar un servidor o llevar uno propio al datacenter (colocación de servidores) con lo que el cliente paga unicamente por los servicios de conectividad, energía y mantenimiento. Como se puede suponer, entre más crecen los requerimientos del cliente, los costos asociados al servicio pueden ir incrementándose de manera similar, sin embargo, para la inmensa mayoría de las empresas que comienzan en internet, un servicio de hospedaje web compartido basico (shared web hosting) suele ser más que suficiente en un inicio. En resumen, cuando se habla del servicio de hospedaje web (web hosting), usualmente se está hablando de uno de los siguientes tres tipos de servicio: hospedaje web dedicado (dedicated hosting), hospedaje web compartido (shared hosting) y colocación de servidores. Tipos de hospedaje web (web hosting) Como hemos podido ver, existen tres tipos principales de servicios cuando se habla de hospedaje web. A continuación se describe cada uno de estos tipos: Hospedaje web Dedicado / VPS Con el hospedaje web dedicado (dedicated hosting) el cliente tiene un servidor completo a su servicio en el que puede hospedar sus sitios web y servicios relacionados (e-mails, ftp, etc.) sin compartir los recursos de dicho servidor con nadie más. El cliente cuenta con acceso remoto a su servidor web mediante el cual puede hacer mantenimiento, instalaciones, acualizaciones o cualquier otra cosa que quiera o necesite. Este tipo de hospedaje web (web hosting) es requerido por sitios grandes con una cantidad de tráfico (visitas) importante. Los costos suelen ser, en mayor o menor medida, más altos que otros tipos de hosting para sitios o clientes con requerimientos menores, como por ejemplo, el hospedaje web compartido (shared web hosting). Los Servidores Privados Virtuales (VPS: Virtual Private Server) son similares a los servidores dedicados en cuanto al uso y acceso de los clientes, sin embargo, lo que el cliente en realidad tiene Jesús Isidro González Espinoza. Ing. En Sistemas Computacionales. Programación de interfaces web. Maestro: Dr. José Benito Franco Urrea. UNIDEP.


es una sección de servidor dedicado particionada (dividida) y dedicada para su uso exclusivo. Se comparten muchos de los beneficios de tener un servidor dedicado, sin embargo los recursos del servidor se tienen que compartir con otras personas (por la misma razón, los costos de un VPS suelen ser menores que los de un servidor dedicado). Hospedaje web compartido (shared web hosting) El servicio de hospedaje web compartido significa que los sitios web del cliente comparten espacio y recursos en un servidor web en el que estan también hospedados otros sitios web de otros clientes. El espacio total del disco duro del servidor se subdivide en varias partes y cada cliente obtiene una parte de ese espacio total. Esto quiere decir que cada cliente va a tener una cuota o capacidad de almacenamiento en disco así como de transferecia de datos asignada, las cuales no pueden ser excedidas ya que esto ocasionaría la suspensión del servicio o un incremento en precios por tarifas excedentes (las políticas respecto a esto varían de proveedor a proveedor). De la misma forma, los sitios web comparten otros recursos del sistema con otros usuarios (memoria, procesamiento de CPU, etc), pero por lo general esto no significa que la confidencialidad de la información de cada cliente quede vulnerada en ninguna forma ya que en practicamente todas las instalciones modernas de sistemas de hospedaje web (web hosting), existen varios niveles de protección para que ningún usuario pueda acceder a la información de otro usuario dentro del mismo servidor. Este tipo de hospedaje web (web hosting) suele ser la variedad más económica que existe en el servicio, sin embargo y como se comentó previamente, suele ser suficiente para la inmensa mayoría de las empresas que comienzan en internet. Colocación de servidores (Collocation) La colocación de servidores es similar al servicio de hospedaje web dedicado con la diferencia de que el cliente en realidad es propietario del servidor web y no solo lo renta como en el otro caso. Esta modalidad se utiliza principalmente con empresas medianas y/o grandes que desean tener control de los equipos que utilizan pero no tienen presupuesto asignado para instalar un centro de datos propio (o simplemente prefieren utilizar los servicios de los centros de datos establecidos por cuestiones logísticas y no de presupuesto). 1. IPAGE iPage ofrece plan de hosting economico que incluye todo lo que uno puede necesitar para configurar y ejecutar una página web con todas las funciones de forma rápida y sencilla, incluyendo 2 herramientas avanzadas de arrastrar y soltar para construir el sitio web, tienda online, blog y galería de fotos, Security Suite, etc. iPage ofrece un nombre de dominio gratis de por vida, Google Adwords, Yahoo! y créditos de Facebook de marketing, y el 100% de hosting verde. Jesús Isidro González Espinoza. Ing. En Sistemas Computacionales. Programación de interfaces web. Maestro: Dr. José Benito Franco Urrea. UNIDEP.


Precio:

$1.00 mensual

Espacio en Disco: Ilimitado Ancho de Banda: Ilimitado Url:

http://www.ipage.com

2. HOSTGATOR HostGator ofrece planes de alojamiento web con precios que empiezan en $ 3.96/mes al año, Hostgator es conocido por ofrecer un excelente soporte tecnico 24/7 via teléfono o chat.

Precio:

$3.96 mensual

Espacio en Disco: Ilimitado Ancho de Banda: Ilimitado Url: Cupones

de

HGDESCUENTO25 (25% HGMESGRATIS (primer mes a $0.01) Como

aplicar

los

Descuento:

descuento

cupones

de

sobre

descuento

tu

en

plan)

HostGator?

3. BLUEHOST BlueHost ofrece alojamiento confiable desde 1996 con una de las mejores atenciónes al cliente, ofreciendo espacio ilimitado de alojamiento con características avanzadas como soporte SSH, Ruby (RoR), Python, etc. BlueHost ofrece un dominio gratis para siempre, así como muchos otros regalos incluidos, como blog gratuito, instalación Forum, etc.

Precio:

$4.95 mensual

Espacio en Disco: Ilimitado Jesús Isidro González Espinoza. Ing. En Sistemas Computacionales. Programación de interfaces web. Maestro: Dr. José Benito Franco Urrea. UNIDEP.


Ancho de Banda: Ilimitado Url:

http://www.bluehost.com

4.GoDaddy GoDaddy es un famoso registrador de nombres de dominio y proveedor de servicios de alojamiento web. La compañía fue fundada en 1997 y es ahora bien conocida en cualquier parte del mundo. Todos los segmentos están cubiertos por productos de alojamiento web de GoDaddy como alojamiento compartido, VPS, servidores dedicados y Cloud Hosting. Por lo tanto siempre se puede encontrar una solución adecuada a sus necesidades y presupuesto. Y para America Latina un plus adicional es que ofrecen atención al cliente por correo o teléfono en español! Precio:

$3.99 mensual

Espacio en Disco: 100GB Ancho de Banda: Ilimitado Url:

http://www.godaddy.com

5. JUSTHOST JustHost ofrece plan de alojamiento web económico todo incluido con espacio ilimitado y GRATIS constructor de sitio web que viene con muchas plantillas de páginas web para crear fácilmente un sitio web. JustHost ofrece una configuración de cuenta de inmediato y muchos complementos gratuito como crédito Google Adwords , créditos de Anuncio MySpace, etc

Precio:

$2.95 mensual

Espacio en Disco: Ilimitado Ancho de Banda: Ilimitado Url:

http://www.justhost.com Jesús Isidro González Espinoza. Ing. En Sistemas Computacionales. Programación de interfaces web. Maestro: Dr. José Benito Franco Urrea. UNIDEP.


6. INMOTION InMotion Hosting viene con una gama de soluciones de alojamiento web que se inicia con el presupuesto de $ 3.00, paquete de alojamiento compartido y se prepara para los servidores dedicados de $ 199.95. Esta versatilidad significa que la empresa se dirige a múltiples segmentos del mercado: los clientes personales, empresas, clientes corporativos, etc. Mientras que las opciones más baratas apenas pueden satisfacer un webmaster serio. Precio:

$7.95 mensual

Espacio en Disco: Ilimitado Ancho de Banda: Ilimitado Url:

http://www.inmotionhosting.com

7. HUB Web Hosting Hub ofrece bajo costo todo en un solo plan de alojamiento web que incluye alojamiento de blogs (WordPress blog), así como de alojamiento Joomla, Drupal. WebHostingHub ofrece un soporte GRATIS, registro / transferencia de dominio, además de soporte 24/7, 90-días garantía de devolución de dinero.

Precio:

$5.95 mensual

Espacio en Disco: Ilimitado Ancho de Banda: Ilimitado Url:

http://www.webhostinghub.com

8. FATCOW Fat Cow ofrece un ECO-Friendly plan de alojamiento web que es perfecto para los sitios personales y sitios web de pequeñas empresas, ya que incluye la herramienta de construcción de Tienda en Línea, Carrito de Compras, SSL Secure Server, etc. Alojamiento FatCow ofrece un dominio gratuito incluido, así como fácil instalación de WordPress, phpBB, Joomla y $ 50 de crédito de AdWords. Precio:

$3.15 mensual Jesús Isidro González Espinoza. Ing. En Sistemas Computacionales. Programación de interfaces web. Maestro: Dr. José Benito Franco Urrea. UNIDEP.


Espacio en Disco: Ilimitado Ancho de Banda: Ilimitado Url:

http://www.fatcow.com

9. HOSTMONSTER HostMonster ofrece alojamiento todo-en-uno ilimitado que soporta las extensiones de Front Page, acceso SSH (Secure Shell), CGI, PHP, MySQL con panel de control cPanel, guiones de instalación 1Click, constructor de sitio, etc. HostMonster ofrece también soporte al cliente 24/7 con tiempos de espera promedio de menos de 2 minutos.

Precio:

$5.95 mensual

Espacio en Disco: Ilimitado Ancho de Banda: Ilimitado Url:

http://www.hostmonster.com

10. GREENGEEKS GreenGeeks ofrece un 300% de energía verde con cada plan de alojamiento. Su equipo de expertos es amable, accesible y está tan comprometidos con sus clientes como nosotros hacia la protección de nuestro medio ambiente.

Precio:

$4.95 mensual

Espacio en Disco: Ilimitado Ancho de Banda: Ilimitado Url:

http://www.greengeeks.com

Jesús Isidro González Espinoza. Ing. En Sistemas Computacionales. Programación de interfaces web. Maestro: Dr. José Benito Franco Urrea. UNIDEP.


Cuanto cobrar por una pagina web. 

Diseño gráfico: Existen gigantescas bases de datos de iconos, fondos, texturas etc… que reducen mucho el tiempo dedicado a diseñar una web. Sin embargo, la utilización de prefabricados despersonaliza la web, la hace (aunque el usuario no lo sepa) parecida a muchas y hace más difícil transmitir una imagen de marca fiel. No hace falta decir que personalizar/diseñar estos elementos lleva tiempo… y dinero. Accesibilidad y usabilidad: Estos dos conceptos indican la capacidad de una web para ser visualizada por personas o dispositivos con alguna deficiencia física o técnica. Una web accesible lleva más tiempo que una poco accesible, por ej: una animación Flash sin contenido alternativo en un menú provocará que el usuario que navegue sin Flash o a través de un dispositivo incompatible con Flash no pueda ver la página. Crear un contenido alternativo lleva tiempo… y dinero. Tipografía: Detrás de una web legible se esconden pruebas de tipografía. La aplicación de nuevas tecnologías (CSS3) hace posible utilizar fuentes ilimitadas a la hora de crear una web pero precisamente eso hace de la elección de una tipografía correcta un proceso más largo que en la época de las “fuentes seguras”. Programación: Quizá esta sea la cualidad más complicada de percibir y en la que hace falta un poco de confianza en el desarrollador de la web: cuando en unos años alguien quiera hacer alguna modificación en la web va a depender de la limpieza del codigo, de la organización, de los comentarios etc.. que dicha modificación sea un proceso sencillo o que directamente sea un proceso imposible que haga más fácil crear la página desde cero. Compatibilidad con navegadores y dispositivos: Puede que cambie en el futuro pero, a día de hoy, crear una web que sea compatible con todos los navegadores, incluyendo los “obsoletos al nacer” de la familia Explorer lleva entre un 20% y un 40% del tiempo total dedicado al diseño. Si además nos preocupamos de que la página se vea correctamente en nuevos dispositivos como tablets, teléfonos móviles etc el tiempo dedicado aumenta… y por consiguiente el precio.

Si has leído y asimilado lo expuesto hasta aquí simplemente te voy a dar tres franjas de precios y voy a dejar al sentido común identificar qué cualidades de las anteriormente expuestas va a tener cada una: 300€ me la hace un amigo/primo/amigo de primo/amigo de mi hermano/conocido. 400€-1000€ 1100€-3000€ Posicionamiento Web.

Jesús Isidro González Espinoza. Ing. En Sistemas Computacionales. Programación de interfaces web. Maestro: Dr. José Benito Franco Urrea. UNIDEP.


El posicionamiento en buscadores u Optimización de motores de búsqueda es el proceso de mejorar la visibilidad de un sitio web en los resultados orgánicos de los diferentes buscadores. También es frecuente nombrarlo por su título inglés, SEO (Search Engine Optimization). También es común llamarlo posicionamiento web, aunque este término no resulta tan preciso, ya que engloba otras fuentes de tráfico fuera de los motores de búsqueda. En los últimos años, la generalización de las estrategias de posicionamiento en buscadores y su implementación en un mayor número de websites, han logrado generar la consciencia que ocupar los primeros puestos en las páginas de resultados puede ser crucial para un sitio. En los últimos años, los motores de búsqueda están incorporando nuevas variables que es necesario tener en cuenta para la optimización de un sitio web. Búsquedas locales, o búsquedas personalizadas son algunos de estos nuevos tipos de posicionamiento.

Jesús Isidro González Espinoza. Ing. En Sistemas Computacionales. Programación de interfaces web. Maestro: Dr. José Benito Franco Urrea. UNIDEP.


Resumen ciclo de vida de la información de la web. Se precisan origen, alcance y definición de la Arquitectura de Información, enmarcada en los procesos de implementación y creación de un sitio Web, con vistas a relacionarlos con el Ciclo de Vida de la Información propuesto por Vizcaya; sobre la base de este análisis se propone un ciclo de vida de la información en la Web y se presentan conclusiones. Palabras clave: ciclo de vida de la información, arquitectura de información, World Wide Web. Para el desarrollo del artículo se emplearon las siguientes técnicas: análisis documental clásico, análisis documental cuantitativo y observación científica. La invasión de las tecnologías de la información y la comunicación, ha traído consigo el enrutamiento de diversas áreas del conocimiento hacia el entorno digitalizado de las redes y en consecuencia, han emergido nuevas disciplinas cuyo objeto de estudio se circunscribe al interacción hombre-máquina y su impacto social. Disciplinas como Usabilidad (conjunto de características de diseño y funcionamiento de una interfaz de usuario, que garantizan su correcta manipulación y entendimiento), y Arquitectura de Información (diseño de la organización de los contenidos/información para facilitar el entendimiento), etc. Gómez, 2002. El presente artículo de investigación se propuso determinar la relación entre las Ciencias de la información y la Arquitectura de información, a partir del Ciclo de vida de la información propuesto por Vizcaya Alonso, analizar un sitio Web como un sistema de información, determinar qué procesos se llevan a cabo en él para organizar y representar la información y proponer un ciclo de vida de la información en la web, a partir del análisis del ciclo de vida de la información.

Ciclo de Vida de la Información propuesto por Vizcaya Alonso. Según Ledón Tedros, 2002 el ciclo de vida de la información es, coherentemente, tanto el conjunto de procesos por los que atraviesa la información durante su circulación, como la serie de transformaciones y entidades a las que todos y cada uno conducen. El Ciclo de Vida no solo representa los procesos que se llevan a cabo en un sistema de información, sino también, los procesos que van desde la generación de información hasta que esta se convierte en conocimiento capaz de generar una nueva información, ya sea a nivel individual de las personas como a un nivel social.

Jesús Isidro González Espinoza. Ing. Sistemas Computacionales. Programación de Interfaces WEB. UNIDEP. Dr. José Benito Franco Urrea Cd. Obregón, Sonora a 31 de octubre de 2013


La Arquitectura de Información y el diseño de sitios web. Existen varias definiciones de arquitectura de información (AI) y una de las más completas es la dada por Rosenfeld y Morville, 1999 (6) como la actividad que clarifica la misión y visión del sitio…, determina el contenido y funcionalidad que el sitio va a tener, especifica como los usuarios van a encontrar la información al definir su organización, navegación, etiquetado y sistemas de búsqueda, mapea como el sitio se va a acomodar al cambio y crecimiento en el tiempo. Rosenfeld y Morville trazaron las pautas teóricas en la arquitectura de información sin haber habido luego grandes transformaciones en cuanto a su terminología y elementos que la componen. Desde entonces, la AI se ha instituido como una nueva disciplina con la idea de organizar la información que se encuentra en Internet, mediante la integración de componentes administrativos, tecnológicos y humanos. Fue con el desarrollo e incremento de los sitios web, donde está disciplina cobró auge. Información. Un sitio Web puede considerarse un sistema en tanto está compuesto por elementos que se relacionan entre si para cumplir determinados objetivos. Estos elementos o componentes de un sitio Web, son amplios y diversos. Entre ellos se encuentran las siguientes entidades y procesos: Entidades - Información y los elementos a través de los cuales se representa y organiza (esquemas, estructuras, sistema de navegación, archivos, y las propias páginas que integran el sitio) - Equipo de realización (arquitecto de información, diseñador, programador, etc.) - Usuarios Procesos: todos las tareas que se realizan durante su concepción, diseño, implementación, posicionamiento y uso. En tal sentido, un sitio Web es un sistema cuyo objeto principal es la información que se transforma a medida que pasa por cada uno de los subprocesos que en él tienen lugar. Selección La selección de la información es el proceso que permite la entrada de la mayor cantidad de recursos al sistema conformado por un sitio Web. El mismo parte de conocer quiénes usarán el Jesús Isidro González Espinoza. Ing. Sistemas Computacionales. Programación de Interfaces WEB. UNIDEP. Dr. José Benito Franco Urrea Cd. Obregón, Sonora a 31 de octubre de 2013


sitio, lo que en el ambiente de la Web se denomina estudio de la audiencia. Mediante este estudio no solo se identifican los usuarios sino también sus necesidades de información, y la infraestructura tecnológica de la que disponen para acceder al sistema.

Esquemas cronológicos Son aquellos que se aplican a las fuentes de información de acuerdo a la fecha en que fueron emitidos o, en algunos casos, a los períodos de tiempo que aborde el contenido de la fuente. Este esquema es muy frecuente en el campo noticioso, los archivos también constituyen un ejemplo de su utilización para ayudar al acceso de sus contenidos. Esquemas geográficos En estos esquemas se organizan los contenidos a través del área o lugar geográfico al que corresponden. Mediante estos sistemas se puede acceder a las fuentes o recursos de información, no solo por temas, sino también, asociados con el mapa del lugar geográfico donde se corresponden y viceversa. Sistema de navegación Se emplean para trazar el curso del usuario en su proceso de consulta, determinar su posición, y hallar el camino de regreso. Aportan sentido de contexto y comodidad. Estos pueden ser: Jerárquicos: constituyen la consecución de las estructuras jerárquicas. Globales: buscan la posibilidad de navegación tanto a lo profundo como a lo largo del sitio. Permiten navegar desde y hacia todos los elementos del sitio. Locales: son propios de un subsitio o una sección que amerite una navegación autónoma. Específicos: Es más una característica editorial que de arquitectura. Se emplean cuando no es posible clasificar las relaciones entre las páginas. Sistemas de búsqueda En este proceso la AI solo se encarga de diseñar como va a estar estructurado el sistema de búsqueda interna de un sitio Web. Es un proceso que hasta hace algunos años no era Jesús Isidro González Espinoza. Ing. Sistemas Computacionales. Programación de Interfaces WEB. UNIDEP. Dr. José Benito Franco Urrea Cd. Obregón, Sonora a 31 de octubre de 2013


imprescindible pero recientemente ha ido tomando auge ya que la implementación de su producto final es un buscador interno del sitio. Los buscadores internos constituyen una opción alternativa para acceder a los contenidos del sitio, por lo que deben, integrarse con un adecuado diseño, al resto de elementos de la arquitectura de información.

Relación entre la arquitectura de información y el ciclo de vida de la información.

Ciclo de vida de la infla Web.

Jesús Isidro González Espinoza. Ing. Sistemas Computacionales. Programación de Interfaces WEB. UNIDEP. Dr. José Benito Franco Urrea Cd. Obregón, Sonora a 31 de octubre de 2013


El ciclo de vida que se propone comienza con el origen de la información, que en el ambiente digital proviene o de un proceso de digitalización de un documento impreso o surge en ese propio ambiente como resultado del proceso de hacer explícito determinado conocimiento. Esa información que puede estar soportada en diferentes formatos es seleccionada por el sistema a partir del estudio de la audiencia de un sitio necesidades de información. En este proceso se analizan además múltiples variables como la infraestructura tecnológica con que cuenta el sistema, las vías de acceso a la información, las temáticas determinadas por los objetivos del sistema y las necesidades de sus usuarios y el presupuesto asignado para adquirir dicha información y ponerla a disposición de la audiencia del sitio.

Jesús Isidro González Espinoza. Ing. Sistemas Computacionales. Programación de Interfaces WEB. UNIDEP. Dr. José Benito Franco Urrea Cd. Obregón, Sonora a 31 de octubre de 2013


Cotizaciones de Páginas Web La diferencia en costos de páginas web se debe principalmente a que cada proveedor integra diferentes servicios en su oferta, además de que la calidad, funcionalidad y desempeño de la página web varían entre una propuesta y otra. Cuando uno desea adquirir una nueva página web para nuestro negocio o empresa, lo común es cotizar el diseño de esa página con dos o tres proveedores distintos para analizar costos y seleccionar aquella opción que resulte la más conveniente, comparando las características y precio de cada propuesta. El problema al que seguramente nos enfrentaremos es que no será sencillo tomar la decisión, debido a que los precios y condiciones entre una propuesta y otra serán muy distintos. Usted se preguntará a qué se debe que existan diferencias tan grandes entre las cotizaciones recibidas. La respuesta es muy sencilla y nos ofrece una explicación lógica a algo que es complejo de asimilar para la mayoría de las personas que no tienen una experiencia previa en este tipo de proyectos. La variación en los costos se debe a que cada agencia hace las cosas de una manera distinta, utilizan diferentes tecnologías, ejecutan diferentes actividades durante el desarrollo del proyecto, en algunos casos participan especialistas en otros no, los servicios incluidos no son precisamente los mismos y el tiempo que destinan al proyecto cambia entre una agencia y otra. En resumen, cada proveedor entrega un producto de calidad y características diferentes. De ahí las diferencias en costo.

Opciones disponibles en el mercado Si usted contrata un paquete económico, su página web seguramente será hospedada en un servidor de bajo rendimiento, de los más económicos, el titular del dominio y del contrato de hospedaje será la agencia, le solicitarán pagos mensuales para mantenerlo como cliente cautivo, se usará una plantilla predefinida para diseñar su sitio web, probablemente con un contenido que no excederá las diez páginas y se le ofrecerá el servicio de registro en buscadores, el cual, por cierto, no sirve para nada. Sí, leyó bien, no es útil porque al ser un simple trámite de registro, no ayudará en nada a que su página web sea localizada a través de un buscador.

Comprendiendo las diferencias Ahora probablemente comprenda usted mejor por qué las diferencias en costo entre una y otra propuesta. Como en cualesquier otra industria, en el diseño web existen calidades y precios. Es responsabilidad de usted saber identificar cuál es la mejor alternativa para su empresa.

Jesús Isidro González Espinoza. Ing. Sistemas Computacionales. Programación de Interfaces WEB. UNIDEP. Dr. José Benito Franco Urrea Cd. Obregón, Sonora a 31 de octubre de 2013


El proceso de compra de una página web no tiene que ser muy diferente a otras adquisiciones. Si usted quiere asegurarse que los objetivos de su proyecto se cumplan, estudie en qué consisten los cuatro servicios básicos (registro de dominio, hospedaje, diseño web y posicionamiento), defina claramente sus necesidades, cotice en base a estos requerimientos y seleccione la opción que ofrezca la mejor relación costo-beneficio.

Jesús Isidro González Espinoza. Ing. Sistemas Computacionales. Programación de Interfaces WEB. UNIDEP. Dr. José Benito Franco Urrea Cd. Obregón, Sonora a 31 de octubre de 2013


Hacia un Web accesible. ABSTRACT The concepts of availability, as well as their importance, are analyzed. A detailed description is made of the main techniques to achieve an accessible Web site, an indispensable knowledge for the correct methodological design and the implementation of the Websites. Key words: Access to web sites. Copyright: © ECIMED. Contribución de acceso abierto, distribuida bajo los términos de la Licencia Creative Commons Reconocimiento-No Comercial-Compartir Igual 2.0, que permite consultar, reproducir, distribuir, comunicar públicamente y utilizar los resultados del trabajo en la práctica, así como todos sus derivados, sin propósitos comerciales y con licencia idéntica, siempre que se cite adecuadamente el autor o los autores y su fuente original.

La accesibilidad Web.

Las Pautas de Accesibilidad al Contenido en la Web , Web Content Accessibility Guidelines (WCAG, por sus siglas en inglés) (http://www.w3.org/TR/WAIWEBCONTENT/), desarrolladas por la W 3C, explican cómo hacer accesibles los contenidos de la Web a personas con discapacidad. Las pautas están pensadas para todos los desarrolladores de contenidos de la Web (creadores de páginas y diseñadores de sitios) y para sus metodólogos. El fin principal de estas pautas es promover la accesibilidad. De cualquier modo, siguiéndolas, se hará la Web más asequible también para todos los usuarios, cualquiera que sea la aplicación que emplee el usuario -navegador de sobremesa, navegador de voz, teléfono móvil, PC de automóvil, etc.- o las limitaciones bajo las que opere -entornos ruidosos, habitaciones infra o supra iluminadas, entorno de manos libres, etcétera. Seguir estas pautas ayudará también a que cualquier persona encuentre información en la Web más rápidamente. Estas pautas no desalientan a los desarrolladores en la utilización de imágenes, vídeo u otros recursos, por el contrario explican cómo hacer los contenidos multimedia más accesibles a una amplia audiencia. Las pautas presentan diferentes niveles de prioridad, del 1 al 3 según se muestra a continuación:

Jesús Isidro González Espinoza. Programación de interfaces web. Resumen 3. 7mo Cuatrimestre. Profesor: Dr. Benito Franco Urrea. Ciudad Obregón, Sonora a 11 de noviembre de 2014.


• Prioridad 1: El desarrollador tiene que satisfacer este punto de verificación. De otra forma, uno o más grupos de usuarios encontrarán imposible acceder a la información del documento. Satisfacer este punto de verificación es unrequerimiento básico para que algunos grupos puedan utilizar los documentos Web. • Prioridad 2: El desarrollador debe satisfacer este punto de verificación. De otra forma, uno o más grupos encontrarán dificultades en el acceso a la información del documento. Satisfacer este punto de verificación eliminará importantes barreras de acceso a los documentos Web. • Prioridad 3: El desarrollador puede satisfacer este punto de verificación. De otra forma, uno o más grupos de usuarios encontrarán alguna dificultad para acceder a la información del documento. Satisfacer este punto de verificación mejorará la accesibilidad de los documentos Web. • Lógicamente estos puntos de prioridad pueden variar en determinadas condiciones, así un punto de prioridad 2 puede convertirse en prioridad 1 y viceversa. En dependencia del cumplimiento de estas especificaciones se concederán los niveles de adecuación del documento Web que se evalúe: • Adecuación de nivel A (A): se satisfacen todos los puntos de verificación de prioridad 1. • Adecuación de nivel Doble A (AA): se satisfacen todos los puntos de verificación de prioridad 1 y 2. • Adecuación de nivel Triple A (AAA): se satisfacen todos los puntos de verificación de prioridad 1, 2 y 3. Si utiliza tablas:     

Identifique los encabezamientos de fila y columna. Para las tablas de datos que tienen dos o más niveles lógicos de encabezamientos de fila o columna, utilice marcadores para asociar las celdas de encabezamiento y las celdas de datos. Si utiliza marcos (frames): Titule cada marco para facilitar su identificación y navegación. Si utiliza "applets" y "scripts": Asegúrese que los contenidos sean utilizables cuando se desconecten o no se soporten los scripts, applets u otros objetos programados. Si esto no es posible, proporcione información equivalente en una página alternativa accesible.

Si se utiliza multimedia:

Jesús Isidro González Espinoza. Programación de interfaces web. Resumen 3. 7mo Cuatrimestre. Profesor: Dr. Benito Franco Urrea. Ciudad Obregón, Sonora a 11 de noviembre de 2014.


 

Hasta que las aplicaciones de usuario puedan leer en voz alta automáticamente el texto equivalente de la banda visual, proporcione una descripción auditiva de la información importante en de la banda visual de una presentación multimedia. Para toda presentación multimedia tempo-dependiente -por ejemplo, una película o animación- sincronice alternativas equivalentes (por ejemplo, subtítulos o descripciones de la banda visual) con la presentación.

Si todo falla:  

Si después de los mayores esfuerzos, no puede crear una página accesible, proporcione un vínculo a una página alternativa que utilice tecnologías W3C, sea accesible, tenga información (o funcionalidad) equivalente y se actualice tan a menudo como la página (original) inaccesible.

Puntos de verificación de prioridad2 

        

Asegúrese de que las combinaciones de los colores de fondo y primer plano tengan el suficiente contraste para que sean percibidas por personas con deficiencias de percepción de color o en pantallas en blanco y negro [Prioridad 2 para las imágenes. Prioridad 3 para los textos]. Cuando exista un marcador apropiado, utilice marcadores en lugar de imágenes para transmitir la información. Cree documentos que estén validados por las gramáticas formales publicadas. Utilice hojas de estilo para controlar la maquetación y la presentación.

Utilice unidades relativas en lugar de absolutas al especificar los valores en los atributos de los marcadores de lenguaje y en los valores de las propiedades de las hojas de estilo. Utilice elementos de encabezado para transmitir la estructura lógica y utilícelos de acuerdo con la especificación. Marque correctamente las listas y los ítems de las listas. Marque las citas. No utilice el marcador de citas para efectos de formato como sangrías. Asegúrese de que los contenidos dinámicos son accesibles o proporcione una página o presentación alternativa. Hasta que las aplicaciones de usuario permitan controlarlo, evite el parpadeo del contenido -por ejemplo, cambio de presentación en periodos regulares, así como el encendido y apagado. Jesús Isidro González Espinoza. Programación de interfaces web. Resumen 3. 7mo Cuatrimestre. Profesor: Dr. Benito Franco Urrea. Ciudad Obregón, Sonora a 11 de noviembre de 2014.


    

      

Hasta que las aplicaciones de usuario proporcionen la posibilidad de detener las actualizaciones, no cree páginas que se actualicen automáticamente de forma periódica. Hasta que las aplicaciones de usuario proporcionen la posibilidad de detener el redireccionamiento automático, no utilice marcadores para redirigir las páginas automáticamente. En su lugar, configure el servidor para que ejecute esta posibilidad. Hasta que las aplicaciones de usuario permitan desconectar la apertura de nuevas ventanas, no provoque apariciones repentinas de nuevas ventanas y no cambie la ventana actual sin informar al usuario. Utilice tecnologías W3C cuando estén disponibles y sean apropiadas para la tarea y use las últimas versiones que sean soportadas. Evite características y elementos no aconsejados por las tecnologías W3C. (Un elemento o atributo no aconsejado es aquel que queda anticuado ante la aparición de nuevas construcciones. Los elementos no aconsejados quedarán obsoletos en futuras versiones de XHTML). Divida los bloques largos de información en grupos más manejables cuando sea natural y apropiado. Identifique claramente el objetivo de cada vínculo. Proporcione metadatos para añadir información semántica a las páginas y sitios. Proporcione información sobre la estructura general de un sitio (por ejemplo, mapa del sitio o tabla de contenidos). Utilice los mecanismos de navegación de forma coherente. Si utiliza tablas: No utilice tablas para maquetar, a menos que la tabla tenga sentido cuando se alinee. Por otro lado, si la tabla no tiene sentido, proporcione una alternativa equivalente (la cual debe ser una versión alineada). Si se utiliza una tabla para maquetar, no utilice marcadores estructurales para realizar un efecto visual de formato.

Si utiliza marcos (frames): 

Describa el propósito de los marcos y cómo estos se relacionan entre ellos, si no resulta obvio solamente con el título del marco.

Si utiliza formularios: 

Hasta que las aplicaciones de usuario soporten explícitamente la asociación entre el control de formulario y la etiqueta, para todos los controles de formularios con etiquetas asociadas implícitamente, asegúrese de que la etiqueta se colocó adecuadamente.

Asocie explícitamente las etiquetas con sus controles. Si utiliza applets y scripts: Jesús Isidro González Espinoza. Programación de interfaces web. Resumen 3. 7mo Cuatrimestre. Profesor: Dr. Benito Franco Urrea. Ciudad Obregón, Sonora a 11 de noviembre de 2014.


    

Asegúrese de que los manejadores de eventos sean independientes del dispositivo de entrada. Hasta que las aplicaciones de usuario permitan congelar el movimiento de los contenidos, evite los movimientos en las páginas. Haga estos elementos directamente accesibles o compatibles con las ayudas técnicas [Prioridad 1 si la funcionalidad es importante y no se presenta en otro lugar; de otra manera, Prioridad 2]. Asegúrese de que cualquier elemento que tiene su propia interfaz pueda manejarse de forma independiente del dispositivo. Para los "scripts", especifique manejadores de evento lógicos mejor que manejadores de eventos dependientes de dispositivos.

Puntos de verificación de prioridad3

Especifique la expansión de cada abreviatura o acrónimo cuando aparezcan por primera vez en el documento. Identifique el idioma principal de un documento. Cree un orden lógico para navegar con el tabulador a través de vínculos, controles de formulario y objetos. Proporcione atajos de teclado para los vínculos más importantes -incluidos los de los mapas de imagen de cliente-, los controles de formulario y los grupos de controles de formulario. Hasta que las aplicaciones de usuario (incluidas las ayudas técnicas) interpreten claramente los vínculos contiguos, incluya caracteres imprimibles (rodeados de espacios), que no sirvan como vínculo, entre los vínculos contiguos. Proporcione la información de modo que los usuarios puedan recibir los documentos según sus preferencias -por ejemplo, idioma, tipo de contenido, etcétera. Proporcione barras de navegación para destacar y dar acceso al mecanismo de navegación. Agrupe los vínculos relacionados, identifique el grupo (para las aplicaciones de usuario) y, hasta que las aplicaciones de usuario lo hagan, proporcione una manera de evitar el grupo. Si proporciona funciones de búsqueda, permita diferentes tipos de búsquedas para diversos niveles de habilidad y preferencias. Localice la información destacada al principio de los encabezamientos, párrafos, listas, etcétera. Proporcione información sobre las colecciones de documentos -por ejemplo, los documentos que comprendan múltiples páginas. Proporcione un medio para saltar sobre un ASCII art de varias líneas.

          

Jesús Isidro González Espinoza. Programación de interfaces web. Resumen 3. 7mo Cuatrimestre. Profesor: Dr. Benito Franco Urrea. Ciudad Obregón, Sonora a 11 de noviembre de 2014.


 

Complemente el texto con presentaciones gráficas o auditivas cuando ello facilite la comprensión de la página. Cree un estilo de presentación que sea coherente para todas las páginas

Si utiliza mapas de imágenes:

Hasta que las aplicaciones de usuario interpreten el texto equivalente para los vínculos de los mapas de imagen de cliente, proporcione vínculos de texto redundantes para cada zona activa del mapa de imagen de cliente.

Si utiliza tablas:

  

Proporcione resúmenes de las tablas. Proporcione abreviaturas para las etiquetas de encabezamiento. Hasta que las aplicaciones de usuario (incluidas las ayudas técnicas) interpreten correctamente los textos contiguos, proporcione un texto lineal alternativo (en la página actual o en alguna otra) para todas las tablas que maquetan texto en paralelo, en columnas de palabras.

Si utiliza formularios:

Hasta que las aplicaciones de usuario manejen correctamente los controles vacíos, incluya caracteres por defecto en los cuadros de edición y áreas de texto.

La discusión de cada pauta con sus múltiples puntos de revisión requerirían todo un documento como este para cada una de ellas, Además serían aspectos bastantes técnicos por lo cual caería fuera de los intereses de esta contribución.

CONSIDERACIONES FINALES.

En Cuba, se diseñan y se publican varios sitios Web diariamente, muchos de ellos se destacan por la calidad de sus contenidos, por la relevancia de la información que ofrecen e incluso algunos de ellos por su flexibilidad y novedad a la hora de programarlos. Jesús Isidro González Espinoza. Programación de interfaces web. Resumen 3. 7mo Cuatrimestre. Profesor: Dr. Benito Franco Urrea. Ciudad Obregón, Sonora a 11 de noviembre de 2014.


Cada vez, se impone más la necesidad de crear sitios accesibles, esto es una realidad, estos términos se integran bastante bien en la nueva concepción de Infomed 2.0 en nuestro país, porque las nuevas herramientas utilizadas como bloques de construcción (Blogs, Wikis, sistemas de manejo de contenidos- CMS) implementan con bastante rigurosidad las pautas de accesibilidad de la W 3C.

Jesús Isidro González Espinoza. Programación de interfaces web. Resumen 3. 7mo Cuatrimestre. Profesor: Dr. Benito Franco Urrea. Ciudad Obregón, Sonora a 11 de noviembre de 2014.


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.