Tema 2, parte II: CSS

Documentos relacionados
Guía (muy) básica de hojas de estilo (CSS) y de marcado semántico de páginas web (v1.)

CONCEPTO FLOAT CSS. NONE, LEFT, RIGHT Y CENTRAR?. COLOCAR TEXTO ALREDEDOR DE UNA IMAGEN. EJEMPLOS DE POSICIONAMIENTO FLOTANTE (CU01034D)

Arquitectura de Tecnologías Web Por César Bustamante Gutiérrez. Módulo II: Tecnologias del lado del Cliente Tema 1: HTML5.

1 DISEÑO WEB de ANCHO FIJO con 2 COLUMNAS FLOTANTES

Curso de Maquetación Web: HTML 5 y CSS

UNIDAD 1 GENERALIDADES HTML

Introducción al desarrollo web (idesweb)

Diseño y desarrollo Web con HTML 5, CSS y Dreamweaver CS 4

CONTENIDOS DEL CURSO ONLINE DE DISEÑO Y DESARROLLO WEB CON HTML5, CSS Y DREAMWEAVER CS4:

DREAMWEAVER CS4 Código: 3492

PROPIEDAD POSITION CSS: STATIC, RELATIVE, ABSOLUTE, FIXED. TOP, RIGHT, BOTTOM, LEFT. EJEMPLOS EJERCICIOS DE POSICIONAMIENTO RESUELTOS (CU01032D)

Introducción al desarrollo web (idesweb) - 3 a ed.

UTILIDAD DE CSS EN DESARROLLOS WEB JUNTO A HTML Y JAVASCRIPT. APLICAR ESTILOS. EJEMPLO SENCILLO. (CU00732B)

DISEÑO Y DESARROLLO WEB CON HTML 5, CSS DREAMWEAVER CS4

Wenceslao Zavala.

III. Hojas de estilo en cascada (CSS)

LÍNEAS SEPARADORAS. ETIQUETA <HR>. COMENTARIOS EN HTML. ATRIBUTOS SIZE, WIDTH, NOSHADE (DEPRECATED). EJEMPLOS (CU00716B)

ESTRUCTURA DEL CÓDIGO HTML5

Introducción. Qué es CSS? Historia de las CSS

MAQUETACIÓN CON CSS. Elementos principales. Diseño fijo, líquido, elástico

5.- Crear páginas web con Nvu

Hojas de estilo en cascada (CSS) Tecnologías Web

Diseño Web. Sitio Web Conjunto de páginas web relacionadas entre sí.

1. Temario Curso Web Design 2014

CSS. Cascading Style Sheets (Hojas de estilo en cascada)

Curso de Diseño web. Juan Carlos Hernández Pérez

HTML. para . Guía de Buenas prácticas. Less ys More Ludwig Mies van der Rohe

Hojas de Estilos - CSS. Desarrollo de Aplicaciones Web Departamento Informática y Sistemas Universidad de Murcia Curso 2014/15

MENÚS HORIZONTALES CSS Y MENÚS VERTICALES. CREAR MENÚS CON EFECTOS A PARTIR DE LISTAS CSS. CÓDIGO DE EJEMPLOS. (CU01049D)

Unidad III: Lenguaje de presentación

Laboratorio 8. Hojas de estilo, plantillas y bibliotecas en Dreamweaver

Mantenimiento de WordPress e Introducción a CSS

Tema 3. Conceptos Básicos de HTML. ETSI ICAI! Departamento de Sistemas Informáticos! Rafael Palacios Hielscher! Cristina Puente Águeda!

Tema: Estilos CSS. Combinadores. Posicionamiento.

1. Introducción a HTML

White Paper: Responsive Design para

IFCD0110 CONFECCIÓN Y PUBLICACIÓN DE PÁGINAS WEB. ETSI Minas y Energía - UPM TRANSICIONES. Bernardo Chenlo

Diseño de páginas web 2011

Guía para creación de temas para editor de EditandSend

Práctica 4: Edición de contenidos web

Creación y uso de Hojas de Estilo

CSS. Departamento de Lenguajes y Computación Universidad de Almería CSS. Contenidos

ACTIVIDADES DE HTML. <TITLE> ejemplo de código HTML</TITLE> Aquí va el contenido de la página

Kompozer: Crear una hoja de estilos

CURSO DESARROLLO WEB RESPONSIVO E INTERACTIVO CON HTML5, CSS3 Y JQUERY

PROGRAMA: Diseño y desarrollo Web con HTML 5,

Diseño y desarrollo Web con HTML 5, CSS y Dreamweaver CS 4

CAJA DE ESQUINAS REDONDEADAS Y ANCHO FIJO ver. 2

HTML-5 / DIVS + IFRAMES. Prof: Moisés Mañas Moimacar@esc.upv.es

Taller de Paginas Web

CAJA DE ESQUINAS REDONDEADAS Y ANCHO FIJO ver. 3

EJERCICIOS HTML BÁSICOS

ELABORADO POR: BRENDA PATRICIA GONZALEZ MANRIQUEZ

Capítulo 3 Estilo para un documento HTML: CSS

CREACIÓN DE PÁGINAS WEB CON NVU

PROGRAMA FORMATIVO. Diseño y desarrollo web con HTML 5, CSS y Dreamweaver CS4 - Obra completa - 2 volúmenes

HTML5 y CSS3 para sitios con diseño web responsive

Diseño y desarrollo Web con HTML 5, CSS y Dreamweaver CS4 - URJC

Ejercicio corto. Ejercicio corto. Ejercicio corto. Lección 1: Introducción a Word. Lección 2: Modificaciones de documentos

Diseño de Páginas Web 2011

Introducción a las aplicaciones WEB

Etiquetas Básicas (Estructura HTML) Etiquetas Atributos Valores Descripción. Formato de Presentación Etiquetas Atributos Valores Descripción

Unidad 2. Elementos de Word2007 (I)

IFCD0110 CONFECCIÓN Y PUBLICACIÓN DE PÁGINAS WEB. ETSI Minas y Energía - UPM RESPONSIVE DESIGN. Bernardo Chenlo

DISEÑO Y DESARROLLO WEB CON HTML 5, CSS Y DREAMWEAVER CS4 OBRA COMPLETA 2 VOLÚMENES

Creación de una página web accesible sencilla

HTML5, CSS3 + JQuery

8. Otros usos comunes

Lic. Mariano Pistone Front-end developer Mendoza Argentina

LENGUAJES JÓVENES PROGRAMADORES

Anexo: Manejo del editor HTML

PHP y MySQL. Aplicaciones Web: HTML II (tercera parte) Autor: Johnny Zulca Mamani

RESPONSIVE WEB DESIGN en. Drupal PRESENTE Y FUTURO

CSS Avanzado Audio, Video e Iframes

1 BARRA de NAVEGACIÓN VERTICAL con BOTONES rollovers

Introducción a Hojas de Estilo

Práctica de HTML (Curso )

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLOGICOS ESCUELA DE COMPUTACION

Tema: Estructura de HTML5 y optimización de imágenes.

TEMA 9 CREACIÓN DE PÁGINAS WEB

Actividad 3: Codificación básica de un texto en HTML

Aplicar colores y colores de fondo a tus sitios web. Examinaremos también métodos avanzados para posicionar y controlar imágenes de fondo.

Profesor: Víctor Cárdenas Schweiger

PROPIEDADES DE LOS CAMPOS. Cada campo de una tabla dispone de una serie de características que proporcionan un control

Antes de empezar... Crear una presentación

> Temario Curso de Diseño Web <

Tema: Maquetación Web y CSS

CSS1. manual de referencia. Autor: Jorge Sánchez ( año 2003

MANUAL TECNICO DE ING BIZBOX

1. PRIMEROS PASOS EN POWERPOINT... 3

Joomla! Joomla! Diseños de sitios Web y Comercio Electrónico

DISEÑO WEB (I y II) CONTENIDO TEMÁTICO

Aprenda los lenguajes HTML5, CSS3 y JavaScript para crear su primer sitio web

Índice. HTML HyperText Markup Language. Conceptos básicos. Qué es HTML? Diseño de servicios Web HTML 1

HTML/CSS( Mi(primera(página(

Primeros Pasos en la Plataforma de Formación

Transcripción:

Tema 2, parte II: CSS

2b.1 Introducción y sintaxis básica Las reglas CSS asocian fragmentos de HTML con propiedades de estilo

Hojas de estilo Separar la estructura del documento (etiquetas HTML) del estilo de presentación (hoja de estilo) Son un asunto más de diseñadores que de desarrolladores, pero hay que conocerlo, ya que de él dependen efectos Javascript como animaciones, etc Estándar del W3C: CSS (Cascade Style Sheets) Versión actual ( en producción ): CSS2. La versión 3 está en desarrollo desde hace años, (se ha dividido en módulos) Las versiones antiguas de Explorer tenían problemas serios con CSS2 (hasta la versión 6 inclusive) El soporte para CSS3 es todavía parcial en los navegadores. El que va más atrasado es Explorer

Regla de estilo Asocia una etiqueta HTML con su aspecto /* Selector { Propiedades }*/ h1 {color:blue; font-size:25px;} Para cada etiqueta HTML el navegador determina el aspecto a partir de la/s regla/s aplicable/s. Si no hay ninguna, se usa un estilo por defecto El aspecto se hereda (podemos ver el HTML como un árbol genealógico en el que si una etiqueta está dentro de otra es hija de esta). La herencia no se aplica a todas las propiedades, aunque sí a la mayoría. body {color:blue; font-size:25px;} p {font-size:15px;}

Reglas @ Son instrucciones o directivas para el parser CSS. Tienen usos variados, por ejemplo Importar otras hojas de estilo (como un #include) @import "mystyle.css"; @import print.css print; Fuentes descargables @font-face { font-family: "Bitstream Vera Serif Bold"; src: url("http://developer.mozilla.org/@api/deki/files/2934/=verasebd.ttf"); }

Dónde colocar las reglas de estilo? a) En un fichero aparte (por convenio extensión.css) Hay que vincular en el HTML el CSS asociado <head> <link href= estilo.css rel= stylesheet media= screen > </head> b) Incluir el código CSS en la cabecera <head> <style media= screen > h1 {color:red} </style> </head> c) En el atributo style de una etiqueta Recomendado únicamente si el estilo se usa una sola vez Solo se especifican las propiedades <h1 style= color:blue; font-size:25px > Hola, amigos <h1>

La cascada CSS Los efectos CSS se aplican en cascada, ya que podemos tener varias hojas de estilo distintas en la misma página El color puede tomarse de un estilo vinculado en un.css mientras que el tamaño puede venir de un estilo en la cabecera Si los estilos son contradictorios, se emplean varios criterios Quién ha definido el estilo: el usuario puede definir sus propios estilos y también el navegador tiene estilos por defecto. Especificidad: ganan los selectores más específicos Orden de definición: gana la última regla

Selectores: tipos (I) Combinaciones de etiquetas Poner varias etiquetas en la misma regla, para ahorrar repeticiones. Se ponen separadas por comas h1, h2 {background:blue} Que afecte a una etiqueta solo si está dentro de otra. Afecta a la de la derecha ( espacio A la que está inmediatamente dentro (separar por un A cualquier descendiente (símbolo > ) p em {color:red} /* Afecta a em inmediatamente dentro de p */ p > em {color:blue} /* Afecta a em dentro de p, inmediatamente o no*/ <p> <em> Yo soy rojo </em> </p> <em> pero yo no </em> <p> <code> <em>yo soy azul </em> </code></p>

Selectores: tipos (II) Cómo cambiar el estilo solo de cierto/s <p> (o la etiqueta que sea) y no de todos los que aparecen en la página? ( veces Clase (para utilizar varias Se definen con un nombre precedido de un punto, para que el navegador sepa que no es una nueva etiqueta, sino una clase.hortera {color:red; background:yellow;} En el HTML se usa el atributo class en la/s etiqueta/s que queramos <p class= hortera >rojo sobre amarillo</p> <h1 class= hortera >Y yo</h1> <p>pero yo no</p> ( vez Identificador (solo una /* margin:auto centra el elemento HTML */ #pie {margin:auto; font-size:8px; color:gray;} <div id= pie >Copyright DCCIA 2013</p> <p id= pie >En teoría cada id solo se debe usar una sola vez, por lo que la regla CSS no debería aplicarse aquí</p>

( III ) Selectores: tipos Pseudoclases: estados de etiquetas a:visited enlace ya visitado :hover - elemento por debajo del ratón a:hover {background:yellow} Pseudoelementos: partes de elementos :first-letter :first-line p:first-letter {font-size:3em} CSS3 introduce muchos más selectores input[type= text ] /* comprueba el valor de un atributo */ p:first-child /* el primer párrafo dentro de otro elemento */ tr:nth-child(2n) /* Las filas 2, 4, 6,... */...

CSS para etiquetas HTML5 En principio no debería haber diferencia. Aunque el navegador no entienda HTML5, se limitará a darle a cada etiqueta el estilo asociado... aside { border: 1px solid, background: yellow}... excepto Explorer 8, que no permite dar estilo a etiquetas desconocidas Hay un pequeño truco consistente en crear dinámicamente una instancia de cada etiqueta con Javascript, meterlas en el documento y luego borrarlas (!) para que IE a partir de ahí permita dar estilo a dichas etiquetas. Script que hace esto: http://remysharp.com/2009/01/07/html5-enabling-script

Tipos de propiedades Fuentes: tipos letra, tamaño, negrita, cursiva,... Color: de texto, de fondo, imagen de fondo,... Texto: justificación, espacio entre letras y/o palabras Caja: bordes a los 4 lados, bordes redondeados, sombras, gradientes Formato visual: posición en la página, mostrar o no... Tablas: similares a las tablas HTML pero no ensucian la página Listas, numeración automática: permiten controlar el aspecto de las listas con viñetas y numeradas, y también numerar automáticamente párrafos o cualquier otra etiqueta Transformaciones: desplazamiento, escalado, rotación 2D y 3D Transiciones: cambiar gradualmente una propiedad Animaciones

Unidades de medida Palabras clave: small, bolder Unidades absolutas: px (pixeles), cm, mm, in (pulgadas), pt (=1/72 ( pt in), pc (=12 Unidades relativas: em ( tamaño por defecto. Ej: 2em=2 veces el ( defecto tamaño por URLs: url(http://www.dccia.ua.es/logo.gif) (también vale con ( simples comillas dobles o ( rgb(100%,0%,0% Colores: yellow, #ff0000, rgb(255,0,0),

Mientras CSS3 se estabiliiza... Cada navegador usa un prefijo distinto en las propiedades Así aunque el estándar cambiara se nos asegura que la implementación propia de cada navegador no lo hará Pero eso nos fuerza a usar la sintaxis oficial más la de cada uno de los navegadores por separado p { background-color:white; } p:hover { background-color: yellow; -webkit-transition: background-color 2s; /* Chrome/safari */ -moz-transition: background-color 2s; /* Firefox */ -o-transition: background-color 2s; /* Opera */ transition: background-color 2s; /* estándar */ }

2b.2 El modelo de caja Cómo se organizan los elementos en la página

El modelo de caja Cada elemento HTML se supone encerrado en una caja rectangular Normalmente las cajas ocupan todo el ancho de la ventana y van una debajo (o justo al lado) de la otra, salvo que especifiquemos posiciones Hay etiquetas que fuerzan retorno de carro antes y después (elementos de bloque ). Otras no (elementos en línea o inline). Se puede cambiar el comportamiento por defecto con la propiedad display (valores posibles: block, inline, none) none indica que el elemento no se mostrará. Solo tiene sentido si se va a cambiar dinámicamente con Javascript /* los enlaces dentro de la sección con id= navegacion aparecerán uno debajo del otro */ #navegacion > a { display:block;}

Partes del Modelo de Caja #aviso { padding-left: 50%; padding-right: 20px; padding-top:3em; padding-bottom: 1em; background-color: #FFEFD5; border: 1px solid; } CSS HTML <div id= aviso > Esto es un ejemplo de cómo podría quedar una sección con el formato establecido por la regla anterior </div> Resultado 50% 3em 1em

Ancho y alto de la caja Especificar ancho y alto: propiedades width y height Gotcha : En el estándar la dimensión no incluye padding ni border Poco intuitivo Explorer hasta 7: width = contenido + padding + border Idem en estándar: usar box-sizing: border-box; 100px 100px #aviso2 { width:100px; background-color : yellow; padding: 50px 25px 50px 25px; border: 1px solid; margin: auto; /* para que quede centrado */ }

Elementos flotantes Propiedad float (valores: left, right, none-por defecto) El elemento se alinea al lado especificado y los siguientes elementos lo rodean dejando espacio para él Con la propiedad clear podemos hacer que un elemento no rodee a otro flotante por la izq, der o ambos lados <div id="flotante"> <h1>elemento flotante</h1> <p>esto debería flotar al lado derecho tralará tralará.</p> </div> <p>en un lugar de La Mancha de cuyo nombre no quiero acordarme... </p> <div id="pie">esto es un ejemplo simplón de elemento con clear...</div> #flotante { float:right; width: 200px; border: 1px solid; } #pie { } clear: both;

Formato visual. Posicionamiento Especificar tipo de posicionamiento: atributo position absolute: referente al elemento contenedor del posicionado. Se saca del flujo normal de la página fixed: referente a la ventana (no va en Explorer 6). Cuando se hace scroll, se queda quieto relative: referente a la posición que ocuparía normalmente. Deja un hueco en dicha posición. l Especificar posición Esquina superior izquierda (origen de coords): left: x, top: y Esquina inferior derecha: right: x, bottom: y (normalmente se especifica solo una de las dos esquinas, la otra vendría implícita por width y height del elemento) z-index: z (cuanto mayor, más cerca). Si dos elementos se solapan se ve por encima el más cercano CSS... #abs { position: absolute; left: 300px; top: 200px; z-index: 1; } <body> HTML <div id= abs > Posición absoluta </div> <div>esto no está posicionado </div> (0,0) Posición relativa #rel { position: relative; color: red; left: 30px; top: 30px; z-index: 2; }... <div id= rel >Posición relativa </div>... (300,200)

Layouts CSS Uniendo todo lo que hemos visto antes, podemos maquetar nuestra página (layout o colocar los elementos en la pantalla) Algunas referencias: Tutorial sobre modelo de caja, posicionamiento y layouts CSS http:// es.learnlayout.com/toc.html 1 y 2 columnas, líquido y fijo http://www.teaching-materials.org/htmlcss-1day/ lesson5/slides.html#slide27 http://csslayoutgenerator.com

2b.3 Responsive Web Design Adaptar el CSS a las características del dispositivo

Responsive Web Design Adaptar el diseño CSS al tamaño de la ventana del navegador Hay diseños que no funcionan bien con resoluciones bajas Se suele usar para adaptar el diseño a dispositivos móviles Principios básicos Usar unidades de medida relativas en lugar de absolutas Tamaños de caja en porcentaje, tamaños de fuente en em en lugar de usar px Usar reglas de estilo alternativas para distintas resoluciones de pantalla La resolución se puede detectar mediante media queries de CSS Imágenes con tamaño adaptativo img { max-width: 100%; }

CSS Media Queries Parte de CSS3, nos permite aplicar reglas CSS solo si se cumplen ciertas condiciones <!-- vincular con una u otra hoja de estilo dependiendo de la resolución horizontal --> <link type="text/css" rel="stylesheet" media="screen and (max-device-width:480px)" href="smartphone.css" /> <link type="text/css" rel="stylesheet" media="screen and (min-device-width:481px)" href="desktop.css" /> <!-- también se puede poner en el CSS empotrado en el HTML --> <style>! @media screen and (max-device-width:480px) {!! body {!!! background-color: red;!! }! } </style>

2b.4 Frameworks CSS Plantillas para no tener que comenzar desde cero y lenguajes sobre CSS

Rejillas CSS Plantillas configurables que solucionan algunos problemas comunes Proporcionan una rejilla a partir de la que construir la estructura de la página Incompatibilidades entre navegadores Ejemplos: 960.gs blueprint CSS YUI grids

Twitter Bootstrap Plantillas para Rejilla CSS Componentes HTML (etiquetas, botones, barras de navegación,...) Componentes Javascript (cuadros de diálogo, transiciones, carruseles de imágenes,...) Aunque estos componentes usan Javascript, todo lo que hay que hacer para usarlos es introducir etiquetas HTML http://twitter.github.com/bootstrap/index.html

Lenguajes sobre CSS Ejemplo: LESS lenguaje que añade variables, mixins ( componentes), funciones,... Genera CSS estándar

Referencias complementarias: libros Weyl, Lazaris, Goldstein, HTML5 & CSS3 for the real world. SitePoint http://proquestcombo.safaribooksonline.com/book/webdevelopment/9780980846904 D. Jacobs, The CSS Detective Guide: Tricks for solving tough CSS mysteries. New Riders http://proquestcombo.safaribooksonline.com/book/webdevelopment/css/9780321703392