04.06.2018 Views

GEEKX

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Edicion 1 - Bolivia - Septiembre 2013 - Distribucion Gratuita<br />

www.geekx.bo<br />

Grandes disenos que<br />

inspiran al mundo<br />

GUÍA<br />

SELECTORES - ATRIBUTOS EN CSS3 - SELECTOR DE HERMANOS - PSEUDO ELEMENTOS<br />

25 TECNICAS QUE NECESITAS SABER<br />

WORD-WRAP - COLOR - COLORES RGBA - COLORES HSL Y HSLA - EFECTOS DE BORDE<br />

EFECTOS DE TEXTO Y TIPOGRAFÍA<br />

Somos un grupo<br />

de bolivianas y<br />

bolivianos que,<br />

cansados de las<br />

mas lentas y caras.


CONTROLANDO LOS PORCESOS DESDE 1985


index<br />

bienvenido<br />

Bienvenido a<br />

geekx<br />

Trabajos<br />

Informatico y Diseñador gráfico nacido en<br />

La Paz, Bolivia egresado de la EISPDM, con<br />

4 años de experiencia laboral en diseño de<br />

identidad corporativa, páginas web en html5/<br />

css3, javascript, responsive web design y<br />

publicaciones digitales.<br />

Soy una persona con experiencia en<br />

manejo de grupos, liderazgo, orientada<br />

a resultados, capacidad de análisis y<br />

rápido aprendizaje.<br />

i pusiéramos verticalmente y en<br />

fila piezas de dominó una atrás de<br />

la otra a una distancia suficiente,<br />

al empujar la primera caerían las<br />

demás en cascada. Eso mismo<br />

sucedió con el universo nerd/<br />

geek/freak para que alcanzara la<br />

popularidad que posee hoy en<br />

día .<br />

Comienza el editorial de Ivan Laime Sarsuri,<br />

principal responsable de <strong>GEEKX</strong>.<br />

Una revista geek<br />

El número cero de la revista, que salió en julio de<br />

2012 (el próximo número ya está casi listo), trae<br />

59 páginas con información selecta y presentada<br />

con un excelente diseño gráfico. Hay noticias,<br />

artículos sobre tecnología, review del comic<br />

de Justice League, la serie Game of Thrones<br />

2da. temporada, la peli Prometheus y previews<br />

de The Dark Knight Rises y The Amazing<br />

Spiderman, que aunque ya estrenadas valen la<br />

pena revisar. La revista se completa con notas<br />

sobre juegos de video, de cartas y un espacio<br />

literario.<br />

GUIQ, creemos aquí en [i], forma parte de esa<br />

futura masa de revistas que van a cambiar el<br />

panorama editorial de las pequeñas editoras,<br />

acosadas, como es de público conocimiento,<br />

por un sistema de distribución que no sólo es<br />

obsoleto sino además tan caro que nos pone<br />

a todos en situación de quiebre. En estos días<br />

en Facebook circularon comunicados de varias<br />

revistas independientes como Barcelona y<br />

THC, donde se denuncia el aumento de $2.30<br />

impuesto por los gremios de distribuidores, que<br />

viene a sumarse al 50% de comisión sobre el<br />

precio de tapa.<br />

El que se niega a pagar, simplemente no tiene<br />

cómo distribuir sus revistas y debe cerrar.<br />

La única posibilidad de seguir trabajando es,<br />

entonces, trasladar a los lectores el aumento, lo<br />

que a su vez es perjudicial para todos porque,<br />

como es lógico, se vende menos.<br />

Siguenos en Twitter para ver de todas nuestras noticfas @geekx<br />

Visita nuestro blog para tu opinion, critica y mas www.geekx.bo<br />

Jhonny Catacora<br />

Redación<br />

MArcelo Flores<br />

Diagramación<br />

Ruben Lovera<br />

Diseño Grafico<br />

Fernado Medrano<br />

Fotografia<br />

www.geekx.bo


Contenido<br />

Comenarios y criticas sobre estos temas en la web kodearti.com<br />

Puedes opinar sobre el tema desde hoy mismo, y si tienes un tema distinto, pero relacionado al area contactate con el equipo editorial<br />

equipoeditorial@geekx.bo geekxbo #geekxbo www.geekx.bo<br />

GUÍA<br />

25 TECNICAS QUE NECESITAS SABER<br />

WORD-WRAP EFECTOS SOMBRA Y BRILLO<br />

EFECTOS<br />

En ocasiones algunas palabras cuya CSS3 trae una serie de novedades en<br />

longitud e xced.<br />

el manejo de bordes.<br />

COLOR<br />

Tradicionalmente en CSS los valores<br />

de los colores se han expresado en<br />

valores RGB.<br />

NUEVAS<br />

Importante: A estas alturas supongo<br />

que sabéis lo que tengo que decir de la<br />

compatibilidad.<br />

16<br />

20 21 22<br />

21<br />

17<br />

18<br />

En este tema veremos el uso de<br />

box-shadow y text-shadow con los<br />

que podremos crear sombras y brillos.<br />

Además como regalo os dejo una<br />

aplicación práctica.<br />

SELECTORES<br />

En primer lugar encontramos 3 nuevos<br />

selectores de atributos.<br />

PSEUDO ELEMENTOS<br />

En este capítulo abordaremos los<br />

pseudoelementos del CSS3 y sus<br />

cambios respecto a CSS2.1.<br />

PSEUDOCLASES<br />

Uno de los puntos donde CSS3 hace<br />

grandes incorporaciones es en las<br />

clases<br />

EFECTOS<br />

En anteriores temas hemos visto<br />

selectores, pseudo-elementos y<br />

pseudo-clases. Además como regalo<br />

os dejo una aplicación práctica.<br />

CSS3 trae una serie de novedades en<br />

el manejo de bordes.<br />

NUEVAS<br />

Importante: A estas alturas supongo<br />

que sabéis lo que tengo que decir de la<br />

compatibilidad.<br />

Más y mejor INTERNET<br />

para BOLIVIA<br />

6<br />

7<br />

¿Quiénes Somos?<br />

Somos un grupo de bolivianas y bolivianos<br />

que, cansados de las mas lentas y caras<br />

conexiones del mundo,<br />

Linked in<br />

LinkedIn es un sitio web orientado a negocios,<br />

fue fundado en diciembre de 2002 lanzado en<br />

mayo de 2013<br />

8<br />

Drupal es una comunidad que lleva años sin<br />

sufrir un lavado de cara. Muchos años de<br />

antigüedad provocan que haya una deuda<br />

técnica ante las nuevas tecnologías. La<br />

parición de los tests así como Frameworks de<br />

Javascript obligaban en consecuencia a que<br />

Drupal también se oriente a estas nuevas,<br />

y eficientes, prácticas.<br />

6<br />

DESIGN<br />

AWARDS<br />

CSS DS<br />

CSS Design Awards es un archivo viviente<br />

de los mejores sitios web del mundo y un<br />

escaparate inspirado celebra el talento<br />

emergente.<br />

Cada versión de Drupal siempre se hizo<br />

pensando en la anterior, y se hizo pensando<br />

en que deberían tener una relación para que<br />

sea relativamente fácil para el usuario migrar<br />

su sitio a lo último. Pero esa herencia de<br />

versiones (Drupal soporta hasta PHP 4, algo<br />

inentendible) hace que se quede muy atrás<br />

técnicamente.


noticias<br />

Noticias<br />

Comentarios<br />

Criticas<br />

header<br />

Comenarios y criticas sobre estos temas en la web kodearti.com<br />

Puedes opinar sobre el tema desde hoy mismo, y si tienes un tema distinto, pero relacionado al area contactate con el equipo editorial<br />

equipoeditorial@kodearti.com<br />

kodearti<br />

#kodearti<br />

Más y mejor INTERNET<br />

para BOLIVIA<br />

¿Quiénes Somos?<br />

SoSomos un grupo de bolivianas y bolivianos que,<br />

cansados de las mas lentas y caras conexiones<br />

del mundo, reivindicamos el derecho a un servicio<br />

digno de Internet, por lo que nos proponemos<br />

como meta lograr un mínimo de 1 mbps de ancho<br />

de banda a un costo menor a Bs. 100.-<br />

(Sugerencia de Marisol Murillo y Luis Paez)<br />

Somos un grupo de bolivianas y bolivianos que,<br />

cansados de las lentas y caras conexiones de<br />

internet que brindan las empresas proveedoras<br />

de este servicio en nuestro país, exigimos el<br />

derecho a un servicio digno de internet con un<br />

mínimo de 1mbps de velocidad de conexión a un<br />

costo menor a 150 Bs.<br />

(Sugerencia de Kichi Chan)<br />

¿Que Buscamos?<br />

Buscamos el progreso de nuestro país a través<br />

de las tecnologías de información, con un<br />

acceso digno a Internet que permita educación,<br />

comunicación, emprendimientos y comercio<br />

en-línea, facilitando que las profesionales<br />

Bolivianas puedan ofrecer sus productos con un<br />

acceso digno a Internet que permita educación,<br />

comunicación, emprendimientos y comercio<br />

en-línea, facilitando que las profesionales<br />

Bolivianas puedan ofrecer sus productos con un<br />

acceso digno a Internet que permita educación,<br />

comunicación, emprendimientos y comercio enlínea,<br />

facilitando que las profesionales Bolivianas<br />

puedan ofrecer sus productos, servicios y<br />

conocimientos al mundo en igualdad de<br />

condiciones.<br />

(Sugerencia de Eric Arellano)<br />

¿Cómo participar?<br />

Te invitamos a participar en las redes sociales.<br />

Vota por esta iniciativa dándole “Me gusta” en<br />

Facebook<br />

Este sitio necesita de editores, asi que si quieres<br />

escribir sobre algún tema, recopilar información<br />

importante relacionada con el tema, etc, te<br />

invitamos a ser parte del sitio.<br />

Te invitamos a ser parte de la difusión de nuestra<br />

problemática.<br />

Comenta con tus amigos, por email, en redes<br />

sociales, en el aula, en donde te reúnas, sobre<br />

la problemática del internet en Bolivia. Además<br />

puedes insertar botones de apoyo en tu sitio<br />

web.<br />

Si tienes contactos con algún medio de prensa,<br />

haz llegar el reporte de que Bolivia tiene el<br />

internet mas lento y caro del mundo.<br />

Participa en las actividades<br />

Periódicamente organizamos reuniones con<br />

autoridades de gobierno, políticos y movimientos<br />

sociales, siempre es bueno, ir entre varias<br />

personas. Así que te invitamos a estar atento a<br />

las convocatorias.<br />

Ahora, si tienes algún contacto con poder de<br />

decisión, haz tu la reunión y envíanos un reporte<br />

de los resultados.<br />

3En el 2013, el 17 de Mayo tenemos un evento en<br />

la ciudad de Cochabamba y previo al 17 de mayo<br />

queremos organizar diferentes eventos en todas<br />

la ciudades del país si tienes alguna idea, gente,<br />

recursos o quieres apoyar en la organización<br />

de algún evento promocionando no solo las<br />

actividades sino un evento de tecnología y<br />

quieres el respaldo de la comunidad no dudes<br />

en contactare con nosotros y coordinaremos<br />

cualquier evento, mientras mas gente conozca la<br />

problemática del país, mejor!<br />

Todos pueden participar.<br />

6 Revista geek gratuita


Los temas mas actuales en el mundo del diseno web<br />

header<br />

noticias<br />

Adelántese, obtenga LinkedIn<br />

La mayor red profesional del mundo: Con más de 225 millones de miembros. Averigua cómo crear un<br />

buen perfil y darse a conocer.<br />

Conecta. Encuentra. Haz<br />

que te encuentren.<br />

Impulsa tu carrera.<br />

Infórmate y comparte.<br />

Construye tu identidad profesional en<br />

Internet y mantente en contacto con<br />

compañeros de clase y de trabajo.<br />

Descubre oportunidades profesionales,<br />

tratos de negocios y nuevas empresas.<br />

Obtén las últimas noticias, la inspiración<br />

y la información que necesitas para<br />

destacar en tu trabajo.<br />

LinkedIn es un sitio web orientado a negocios, fue fundado en diciembre de 2002 y lanzado en<br />

mayo de 20031 (comparable a un servicio de red social), principalmente para red profesion al. Fue<br />

fundada por Reid Hoffman, Allen Blue, Konstantin Guericke, Eric Ly y Jean-Luc Vaillant.<br />

En octubre de 2008, tenía más de 25 millones de usuarios registrados3 extendiéndose a 150 industrias.<br />

En marzo de 2013, dispone de más de 200 millones de usuarios registrados,4 de más de 200 países, que<br />

abarcan todas las empresas de la lista de la revista Fortune de las 500 mayores empresas estadounidenses.<br />

Es seguida en un lejano segundo lugar por Viadeo.<br />

Unete Ahora !!!<br />

www.geekx.bo


header<br />

noticias<br />

Drupal integracion con Symfony<br />

Drupal 8 integracion Symfony<br />

ace unas semanas tuve la gran suerte de poder ir al evento DeSymfony, la cual tuvo<br />

muchas ponencias bastante interesantes, sobre todo el segundo día. El primero fue<br />

bastante decepcionante, pero no me meteré a criticar a los que tienen el valor de exponer<br />

antes cientos de personas.<br />

Una de las ponencias fue sobre la integración de Symfony en Drupal en su nueva versión 8. Aparte<br />

de eso hay muchas novedades que les comentaré acontinuación.<br />

Drupal es una comunidad que lleva años sin sufrir un lavado de cara. Muchos años de antigüedad<br />

provocan que haya una deuda técnica ante las nuevas tecnologías. La aparición de los tests así como<br />

Frameworks de Javascript obligaban en consecuencia a que Drupal también se oriente a estas nuevas,<br />

y eficientes, prácticas.<br />

Cada versión de Drupal siempre se hizo pensando en la anterior, y se hizo pensando en que deberían<br />

tener una relación para que sea relativamente fácil para el usuario migrar su sitio a lo último. Pero esa<br />

herencia de versiones (Drupal soporta hasta PHP 4, algo inentendible) hace que se quede muy atrás<br />

técnicamente.<br />

Se ha tomado la decisión de cambiar todo drásticamente, asumiendo las consecuencias, y en esta<br />

versión 8 de Drupal se verá el comienzo de una transición hacia las buenas prácticas para el desarrollador.<br />

8 Revista geek gratuita


header<br />

noticias<br />

Cambios en el hook_menu<br />

Ahora las rutas las definiremos en el fichero routing.yml<br />

de nuestro módulo personalizado. Algo muy derivado de<br />

Symfony. En nuestro hook_menu solo quedará el título de<br />

la página que definamos.<br />

¿Pasará algo con los hooks?<br />

Evidentemende, los hooks han sido parte de nuestra vida<br />

en Drupal (para los que no solo lo usamos para instalar<br />

módulos), pero en Drupal 8 desaparecerán muchos de<br />

ellos, para que finalmente en Drupal 9 no existan más.<br />

Muy probablemente sea un cambio negativo para<br />

muchos, que ya están acostumbrados a desarrollar de<br />

una manera, pero las buenas prácticas las tenemos que<br />

seguir y los hooks, por lo tanto, deben desaparecer de<br />

nuestra mente.<br />

Si los hooks ya no existen, ¿Quiénes los<br />

reemplazarán?<br />

En Symfony existe el EventDispatcher, que son<br />

disparadores de eventos orientados a objetos, agrupables<br />

y, sobre todo, testeables. Un conjunto perfecto de buenas<br />

prácticas que Drupal necesitaba tener y que con los<br />

hooks no tenía.<br />

Como mencioné más arriba, el EventDispatcher convivirá<br />

con los hooks en Drupal 8, pero en Drupal 9 los hooks no<br />

estarán más.<br />

Dependency Injection (Inyección de<br />

dependencias)<br />

Para los que no sepan, la inyección de dependencias es<br />

un patrón de diseño orientado a objetos en la cual se<br />

suministran objetos a una clase en lugar de crearlas ella<br />

misma. Sonará muy confuso, pero crear un objeto dentro<br />

de una clase hace que la misma dependa de ese objeto,<br />

cosa que no es muy bueno a veces, sobre todo si se tiene<br />

que refactorizar el código.<br />

Los objetos siempre tienen que ser creados fuera de una<br />

clase, y a lo sumo inyectarlos en ella y que no haya ningún<br />

tipo de dependencia si se separan.<br />

Esta práctica la adquirirá Drupal 8, con la idea de que su<br />

código sea mucho más legible, escalable y testeable.<br />

Otros proyectos OS incorporados<br />

Esta es una lista de los proyectos OS que incorporará<br />

Drupal en su versión 8.<br />

Conclusiones<br />

jQuery<br />

CKEditor<br />

Backbone<br />

Modrnizr<br />

Farbtastic<br />

Grippie<br />

Normalize<br />

Composer<br />

PHPUnit<br />

Guzzle<br />

Zend Feed<br />

Drupal hará un cambio drástico en su Core para el<br />

uso de las buenas prácticas. Esto es muy positivo,<br />

pero muchos de nosotros nos pusimos a pensar: ¿Cuánta<br />

gente que usa Drupal usa buenas prácticas?. El ponente<br />

nos dijo que con este cambio el 50% de la comunidad<br />

Drupal se iría, con que nos ha respondido la pregunta<br />

antes de hacerla.<br />

Otros de los puntos a cubrir en las preguntas fue el tema<br />

de la migración, el mismo ponente nos dijo que si una<br />

persona tiene un site en Drupal 6 o 7 y le funciona bien<br />

económicamente, entonces no es necesario migrar<br />

a Drupal 8 de momento. No se si es la respuesta que<br />

esperaba pero realmente tiene sentido, ahora mismo<br />

migrar de versión es prácticamente imposible.<br />

Drupal 8 tiene previsto salir a la luz a comienzos del año<br />

que viene, ahora mismo es un 400% más lento que<br />

Drupal 7, pero ahora empieza la época de optimización,<br />

la cual espero que deje a nuestro CMS favorito en el top<br />

del ranking.<br />

Views va a pasar a ser parte del Core<br />

Al fin vamos a tener un módulo prácticamente<br />

indispensable en el Core de Drupal. Tendremos el<br />

punto negativo que de momento será muy difícil pasar<br />

vistas realizadas en Drupal 7, pero seremos optimistas<br />

y esperaremos a que haya alguna manera sencilla de<br />

hacerlo.<br />

www.geekx.bo


DESIGN<br />

AWARDS<br />

Grandes disenos que<br />

inspiran al mundo<br />

Proceso de selección<br />

Design Awards es un archivo viviente de los mejores sitios web del mundo<br />

y un escaparate inspirado celebra el talento emergente. El objetivo de CSS<br />

Design Awards es capturar cada paso en la rápida evolución del diseño web y<br />

de arrojar luz sobre los diseñadores que inspiran a todos nosotros.<br />

Todos los sitios web presentados se añadirán automáticamente a la lista de espera para su<br />

consideración. Los sitios web que cumplan con los criterios de presentación a continuación se<br />

añadirán a la galería de CSS.<br />

Sitios web considerados como pendientes por nuestros jueces serán añadidos a la galería Los<br />

nominados y estar en la carrera por el premio de diseño CSS. Los ganadores serán notificados y<br />

su trabajo aparecen en la página de inicio, así como añadir a la Galería de los Ganadores. Sitios<br />

ganadores también se publicarán a través de redes sociales.<br />

Nuestros Jueces<br />

Mientras votos de los usuarios son una consideración importante, existen agujeros de bucle<br />

tecnológicos que pueden eludir el seguimiento de los clics de usuarios que permiten votos para ser<br />

aumentadas artificialmente.<br />

Por lo tanto, de jurado final es por un panel de entre 4 y 8 diseñadores profesionales en función de su<br />

disponibilidad. Todos nuestros jueces son universitarios diseñadores calificados con entre 5 y 10 años<br />

de experiencia en diseño gráfico, diseño web y desarrollo web.<br />

Criterios de presentación<br />

http://www.cssdesignawards.com/<br />

Se invita a los diseñadores web, los equipos de diseño, agencias, propietarios de sitios web y los<br />

entusiastas de CSS para presentar sitios web para su consideración, sin embargo, toda la información<br />

solicitada en la página de presentación Web es necesaria para completar una entrada en los Premios<br />

de Diseño CSS.<br />

Websites presentados deben cumplir con los siguientes criterios:<br />

# 1 de Alto Nivel de la Creatividad Visual<br />

# 2 Profesionalmente codificado CSS<br />

# 3 Completamente Funcional<br />

# 4 Cumple W3C (recomendado pero no obligatorio)<br />

<br />

Parallax, empresa profesional de diseño<br />

y desarrollo web, ganador mes de<br />

Agosto 2013<br />

10 Revista geek gratuita


DESIGN<br />

AWARDS<br />

Me encanta la innovacion asi como la tecnologia, estoy muy convencido que<br />

apost ar en las nuevas tecnologias rinde muchos frutos, ya que te habre un campo<br />

interesante a nuevos horizontes, eso y por que tambien confío plenamente en mi<br />

equipo de trabajo.<br />

Juan Carlos Ramos Castañeta - CEO<br />

Ruben Lovera<br />

Programador Web<br />

Margoth Loayza<br />

Programadora PHP<br />

Ivan Cartagena<br />

Diseñador Web<br />

Hugo Miranda<br />

Social Media<br />

Ludwing Rubi<br />

Marketing<br />

www.geekx.bo


DESIGN<br />

AWARDS<br />

Freelancer a la vista!!!<br />

Hola, mi nombre es Rain, soy un diseñador de páginas web y<br />

desarrollador de aplicaciones para usuario, en la actualidad vivo y<br />

trabajo en Taipei, Taiwán.<br />

Mis principios de diseño son : El énfasis en la facilidad de uso,<br />

pluralista e interacción, se centran en el diseño de interacción por<br />

excelencia, la sencillez y la eficacia de la mezcla, y experiencias de<br />

usuario innovadores.<br />

12 Revista geek gratuita


DESIGN<br />

AWARDS<br />

Interfaz de usuario diseño web, front-end de desarrollo,<br />

experiencia de usuario y diseño de integración responde con HTML5<br />

y CSS3.<br />

www.geekx.bo


DESIGN<br />

AWARDS<br />

http://www.internshipdesign.com<br />

Internship Design tuvo la idea de realizar un Blog con un curioso diseño pero a<br />

la vez atractivo. Internship Design es una empresa de Diseño Grafico destinado a<br />

informar a su Clientela el trabajo que reaizan e incluso en lo que se estan abocando<br />

en ese instante, interesante forma de mostras sus actividades laborales, y de<br />

pronto una forma original de informar a su clientela lo que realizan.<br />

Jhonny Catacora<br />

CEO<br />

MArcelo Flores<br />

Programador PHP<br />

Ruben Lovera<br />

Programador Web<br />

Fernado Medrano<br />

Diseñador Web<br />

MArcelo Flores<br />

Programador PHP<br />

14 Revista geek gratuita


GUÍA<br />

25 TECNICAS QUE NECESITAS SABER<br />

GUÍA<br />

25 TECNICAS QUE NECESITAS SABER<br />

16 Revista geek gratuita


GUÍA<br />

25 TECNICAS QUE NECESITAS SABER<br />

ESTA GUIA TRATA SOBRE CSS3, LA ÚLTIMA VERSIÓN DEL CASCADE STYLE<br />

SHEET, CSS3 VINO PARA QUEDARSE.<br />

Para sacarle partido a esta guía necesitarás las siguientes herramientas:<br />

• Un editor de texto plano o editor de código para HTML y CSS. Yo uso Komodo, aunque<br />

reconozco Sublime Text o Notepad++ son excelentes opciones.<br />

• Las últimas versiones de un par de navegadores que sigan los estándares como Firefox<br />

o Chrome. A lo largo de todo este libro encontraréis avisos de lo poco compatible que es<br />

todo con Internet Explorer. Bueno, las versiones 9 y 10 parece que pretenden solucionar<br />

en gran medida esto.<br />

IMPORTANTE<br />

Dada la reducida compatibilidad actual de los navegadores con CSS3 es aconsejable añadir<br />

los prefijos -moz- y -webkit- en todos los ejemplos que realicemos. De manera opcional<br />

podéis probar con -o- y -ms-aunque no os puedo<br />

www.geekx.bo


GUÍA<br />

25 TECNICAS QUE NECESITAS SABER<br />

SELECTORES<br />

PSEUDOCLASES<br />

ATRIBUTOS EN CSS3<br />

En primer lugar encontramos 3 nuevos<br />

selectores de atributos:<br />

Código :<br />

elemento[atributoA=”valor”] Selecciona los<br />

elementos con ese atributo y que su valor<br />

comienza por la cadena de texto indicada en<br />

“valor”.<br />

Código :<br />

elemento[atributo$=”valor”] Selecciona los<br />

elementos con ese atributo y que su valor termina<br />

por la cadena de texto indicada en “valor”.<br />

Código :<br />

elemento[atributo*=”valor”] Selecciona los<br />

elementos con ese atributo y que su valor<br />

contiene la cadena de texto indicada en “valor”.<br />

/* Selecciona todos los enlaces que<br />

lleven a una página que contenga la<br />

palabra ejemplo*/ a [href*=”ejemplo”]<br />

{.. .}<br />

/^Selecciona todos los enlaces que<br />

apunten a una dirección de correo*/<br />

a[hrefA=”mailto:”]{...}<br />

En este capítulo abordaremos los pseudoelementos<br />

del CSS3 y sus cambios respecto a<br />

CSS2.1.<br />

En la versión 2.1 contábamos con 4 pseudoelementos:<br />

:first-line. Selecciona la primera línea.<br />

;//rsf-/efte/\Selecciona la primera letra.<br />

• :before. Nos posiciona al inicio del contenido de<br />

un elemento.<br />

:after. Nos posiciona al final del contenido de un<br />

elemento.<br />

La siguiente imagen muestra dónde apuntaría el<br />

Código :<br />

p::first-letter{ color:red;<br />

}<br />

p::first-line{ color:blue;<br />

}<br />

hl::after{<br />

content:”.”;<br />

}<br />

hl::before{<br />

content:”Ejemplo de “; }<br />

<br />

PSEUDO ELEMENTOS<br />

SELECTOR DE HERMANOS<br />

El selector general de hermanos tiene un<br />

funcionamiento similar al selector adyacente de<br />

CSS2.1.<br />

Mientras que en el adyacente la condición es que<br />

los elementos fuesen consecutivos en el código<br />

HTML, el selector general de hermanos tiene<br />

en consideración todos los elementos que sean<br />

consecutivos aunque no lo sean en el código<br />

HTML.<br />

Código :<br />

/^Selector adyacente en CSS2.1*/<br />

hl + h2{...}<br />

/^Selector general de hermanos de CSS3*/<br />

hl ~ h2{...}<br />

Titulo Subtitulo<br />

adyacente<br />

Titulo<br />

párrafo de separación<br />

Subtitulo con selector general de<br />

hermanos<br />

PSEUDO ELEMENTOS DE CSS3<br />

selector en cada uno de los casos:<br />

En la versión 2.1 contábamos con 4 pseudoelementos:<br />

:first-line. Selecciona la primera línea.<br />

;//rsf-/efte/\Selecciona la primera letra.<br />

• :before. Nos posiciona al inicio del contenido de<br />

un elemento.<br />

:after. Nos posiciona al final del contenido de un<br />

elemento.<br />

La siguiente imagen muestra dónde apuntaría el<br />

selector en cada uno de los casos:<br />

pseudo-elementos Esto es<br />

un ejemplo usando pseudo elementos<br />

en CSS3 donde pasamos coloreamos<br />

de rojo la primera letra con firstletter,<br />

coloreamos de azul la primera<br />

l&iacute;nea con first-line, e incluimos<br />

en el titulo el texto “Ejemplo de” y “.”<br />

con before y after respectivamente. <br />

Uno de los puntos donde CSS3 hace<br />

grandes incorporaciones es en las<br />

pseudo-clases. Gracias a las nuevas<br />

pseudo-clases tendremos un control<br />

mucho más ajustado de los elementos<br />

HTML.<br />

Consejo: Ya que Internet Explorer 6-8<br />

no soporta la mayoría de pseudo-clases<br />

se han desarrollado algunas librerías<br />

de javascript que realizan las mismas<br />

funciones para estos navegadores. La que<br />

mejores resultados me ha dado ha sido<br />

select[ivizr] que podréis descargar de su<br />

página oficial.<br />

Código :<br />

/^Selecciona los elementos impares<br />

de la<br />

clase .nthchild*/<br />

.nthchild:nth-child(odd){<br />

color:red; }<br />

clase .nthlastchild*/<br />

.nthlastchild:nth-last-child(2){<br />

color:blue; }<br />

clase .nthchild*/<br />

.nthchild:nth-child(odd){<br />

color:red; }<br />

clase .nthlastchild*/<br />

.nthlastchild:nth-last-child(2){<br />

color:blue; }<br />

clase .nthchild*/<br />

.nthchild:nth-child(odd){<br />

color:red; }<br />

clase .nthlastchild*/<br />

.nthlastchild:nth-last-child(2){<br />

color:blue; }<br />

clase .nthchild*/<br />

.nthchild:nth-child(odd){<br />

color:red; }<br />

clase .nthlastchild*/<br />

.nthlastchild:nth-last-child(2){<br />

color:blue; }<br />

clase .nthchild*/<br />

.nthchild:nth-child(odd){<br />

color:red; }<br />

clase .nthlastchild*/<br />

.nthlastchild:nth-last-child(2){<br />

color:blue; }<br />

clase .nthchild*/<br />

.nthchild:nth-child(odd){<br />

color:red; }<br />

clase .nthlastchild*/<br />

.nthlastchild:nth-last-child(2){<br />

color:blue; }<br />

clase .nthchild*/<br />

.nthchild:nth-child(odd){<br />

color:red; }<br />

clase .nthlastchild*/<br />

.nthlastchild:nth-last-child(2){<br />

color:blue; }<br />

18 Revista geek gratuita


EFECTOS DE TEXTO Y TIPOGRAFÍA<br />

En anteriores temas hemos visto selectores, pseudo-elementos y pseudo-clases que son<br />

herramientas fundamentales para lograr un código más depurado y limpio. Estoy seguro que más de<br />

un diseñador habrá encontrado este comienzo muy pesado y aburrido. A partir de ahora veremos<br />

características de CSS más visuales con la que podrás explotar tu creatividad.<br />

Los diseñadores web se han encontrado durante bastante tiempo con enormes limitaciones en<br />

cuanto a texto se refiere. CSS3 nos da un ápice de libertad en este sentido ya que por fin se asienta<br />

como estándar la implementación de font-face, nos permite editar textos en varias columnas y<br />

soluciona algunos problemas de visualización con word-warp.<br />

Código :<br />

@font-face{<br />

font-family:;/*E1 nombre con el que nos referiremos a la fuente*/<br />

src: [,]*;/*La ruta de donde cargamos el archivo del tipo*/<br />

[font-weight:];/*Peso de la fuente*/<br />

[font-style:];/*Estilo*/ }<br />

Veamos un ejemplo:<br />

Código :<br />

@font-face{<br />

font-family:”Deliciosa”;<br />

src:url(‘fonts/Delicious-Roman. otf’);<br />

}<br />

#ejemplo{<br />

font-family:”Deliciosa”; }<br />

COLUMNAS EN CSS3<br />

GUÍA<br />

25 TECNICAS QUE NECESITAS SABER<br />

Si queremos crear una estructura de varias<br />

columnas contamos con cuatro nuevos atributos.<br />

Al día que se escribe este curso estos atributos<br />

están únicamente incorporados de manera<br />

experimental en navegadores derivados de<br />

Mozilla (Firefox) y Webkit (Chrome y Safari), por<br />

lo que hay que añadir el prefijo -moz- o -webkitsegún<br />

el caso. Os describo los atributos:<br />

Por ejemplo:<br />

Código:<br />

.ejemplo{<br />

-moz-column-count: 3;<br />

-webkit-column-count: 3;<br />

-moz-column-width: lOOpx;<br />

-moz-column-gap: 20px;<br />

-webkit-column-width: lOOpx;<br />

-webkit-column-gap: 20px; /*column-rule<br />

se centra en el espacio dedicado al<br />

gap*/<br />

-webkit-column-rule: lpx solid<br />

#ccc;/^Observad que indicamos, ancho,<br />

estilo y color.<br />

-moz-column-rule: lpx solid #ccc;<br />

}<br />

En ocasiones algunas palabras cuya longitud<br />

excede el ancho de de la capa que lo contiene,<br />

por lo que ignorando toda media, la muy hija de<br />

un diccionario se sale arruinando el diseño.<br />

El atributo word-warp soluciona esto “rompiendo”<br />

la palabra y situando el resto en las filas inferiores.<br />

Personalmente me parece una solución a medias,<br />

ya que lo correcto sería la inclusión de un guión<br />

en la ruptura de la palabra, al igual que cuando<br />

escribimos en un editor de textos.<br />

Código:<br />

word-wrap:break-word; /*Rompe las<br />

palabras*/<br />

word-wrap:normal; /*Se porta de la<br />

forma<br />

habitual*/<br />

Existe el riesgo de que un navegador determinado no interprete correctamente algunos formatos de<br />

fuentes. Para asegurarse habría que importar todos los formatos:<br />

Código :<br />

src: url(‘Delicious-Roman.eot’) ;<br />

src: local(‘?’), url(‘Delicious-Roman .woff’) format(‘woff’), url(‘Delicious-Roman.<br />

ttf’ )<br />

format(‘truetype’) , url(‘Delicious-Roman. svg#webfont57ztNrX6’)<br />

format(‘svg’) ;<br />

Consejo:<br />

Existen aplicaciones que permiten exportarlas tipografías de un formato a otro.<br />

www.geekx.bo


GUÍA<br />

25 TECNICAS QUE NECESITAS SABER<br />

WORD-WRAP<br />

En ocasiones algunas palabras cuya longitud<br />

excede el ancho de de la capa que lo contiene,<br />

por lo que ignorando toda media, la muy hija de<br />

un diccionario se sale arruinando el diseño.<br />

El atributo word-warp soluciona esto “rompiendo”<br />

la palabra y situando el resto en las filas inferiores.<br />

Personalmente me parece una solución a medias,<br />

ya que lo correcto sería la inclusión de un guión<br />

en la ruptura de la palabra, al igual que cuando<br />

escribimos en un editor de textos.<br />

word-wrap:break-word; /*Rompe las<br />

palabras*/<br />

word-wrap:normal; /*Se porta de la forma<br />

habitual*/<br />

Aunque a la fecha de la edición de este tema<br />

ninguno de los atributos aquí descritos tiene<br />

una implementación fiable en el 100% de los<br />

navegadores, es cierto que se ha notado un<br />

cambio de tendencias en el diseño web, con<br />

páginas que empiezan a basar su diseño en el<br />

atractivo de las tipografías.<br />

Tradicionalmente en CSS los valores de los colores se han expresado en valores RGB. CSS3 da una<br />

vuelta de tuerca a este sistema y añade por un lado el canal alfa, y por el otro los sistemas HSL y HSLA.<br />

CSS3 nos permite añadir un canal alfa (de transparencia) al sistema de color RGB.<br />

Esta nueva notación a la que llamaremos rgba permite gracias a su cuarto canal la posibilidad de<br />

indicar la opacidad en tantos por 1, es decir, tomando 0 como la máxima transparencia y 1 como la<br />

máxima opacidad.<br />

Actualmente cuando queremos crear alguna capa<br />

con transparencia creamos una imagen png con la<br />

opacidad que deseemos y guardamos conservando<br />

el canal alfa. Después en el css definimos esa<br />

imagen de fondo y eventualmente le damos el valor<br />

transparent.<br />

background:transparent url(“fondo.png”)<br />

repeat; modelo RGBA. Su uso es el mismo<br />

c\uergb(r,g,b); pero añadiendo el cuarto<br />

valor:<br />

Código:<br />

body{<br />

background-color:rgba(100,20,40,0.5);<br />

}<br />

COLOR<br />

COLORES RGBA<br />

Además este tipo de color actúa sobre cualquier elemento susceptible de atribución de color, como<br />

los textos.<br />

Para no perder las costumbres, Internet Explorer 8 no da soporte a este modelo por lo que para verlo<br />

tendremos que usar una versión 9 o superior del programa de Microsoft.<br />

COLORES HSL Y HSLA<br />

CSS3 añade además un nuevo modelo de color<br />

conocido como HSL. Estas siglas provienen del<br />

inglés Hue, Saturation, Ligthness o lo que es lo<br />

mismo, tono, saturación y brillo.<br />

Código :<br />

/^atributo:<br />

hsl (tono,saturación,brillo) ; */<br />

background-color: hsl(360,100%,20%);<br />

Nótese que el valor tono puede tomar valores del 0 al 360 donde:<br />

0, sería el rojo.<br />

120, sería el verde.<br />

240, sería el azul.<br />

360, volvería a ser rojo.<br />

Además, como en el caso del modelo RGB, al HSL se le puede añadir un canal alpha para definir<br />

la transparencia del color. El resultado en código sería el siguiente, dando resultados análogos a<br />

RGBA:<br />

hsla(30 0,13 0%,65%,10%);<br />

20 Revista geek gratuita


CSS3 trae una serie de novedades en el manejo de bordes de elementos. Tareas tan complicadas<br />

hasta ahora como crear una esquina redondeada o usar imágenes en los bordes serán ahora<br />

asombrosamente sencillos.<br />

Hasta ahora era un auténtico quebradero de cabeza y una pérdida de tiempo crear un borde<br />

redondeado teniendo que utilizar imágenes de fondo o recurriendo a hacks. El atributo border-radius<br />

simplifica su implementación como vemos a continuación:<br />

Código:<br />

border-radius:15px;<br />

Como resultado tendríamos una capa con todas las esquinas redondeadas.<br />

Consejo: Como siempre, para optimizar la compatibilidad con los navegadores es conveniente usar los<br />

prefijos -webkit- y -moz-.<br />

Si quisiéramos usar diferentes radios en cada esquina la sintaxis shorthand sería:<br />

Código:<br />

border-radius:15px Opx 25px Opx;<br />

Importante: Los valores dados al atributo border-radlus se empiezan a aplicar desde la esquina<br />

superior izquierda en sentido horario<br />

/*border-y-x-radius: valor;*/<br />

border-top-left-radius: 15px;<br />

/^Equivale a:*/<br />

border-radius: 15px Opx Opx Opx;<br />

El atributo border-image nos habilita para usar imágenes de fondo para los bordes de nuestros<br />

elementos.<br />

Para entender el funcionamiento de este atributo, empezaremos por crear una imagen de prueba, en mi<br />

caso es esta:<br />

Observad como las guías la dividen en una malla de 9 secciones, cada una de 12 x 12 px. No es<br />

obligatorio pero nos servirá para entender mejor el concepto. La sintaxis a usar es la siguiente:<br />

Con la primera medida indicaríamos a que distancia estaría la guía horizontal superior, con la segunda<br />

la guía vertical derecha, con la tercera la guía horizontal inferior y con la cuarta la guía vertical izquierda.<br />

Como dicen que una imagen vale más que mil palabras:<br />

Lógicamente si sólo diésemos una medida, esta se aplicaría a todas las distancias y para las mismas<br />

podemos indicar cantidades porcentuales.<br />

Los modificadores indican como actuar en caso de que el borde sea mayor que las medidas de la<br />

imagen.<br />

/*border-y-x-radius: valor;*/<br />

border-top-left-radius: 15px;<br />

/^Equivale a:*/<br />

border-radius: 15px Opx Opx Opx;<br />

EFECTOS DE BORDE<br />

BORDES REDONDEADOS CON BORDER-RADIUS<br />

BORDES CON IMÁGENES<br />

Código:<br />

border-image: url(“borde.png”) 12 12 12 12 repeat repeat;<br />

NUEVAS<br />

PROPIEDADES<br />

GUÍA<br />

25 TECNICAS QUE NECESITAS SABER<br />

BACKGROUND-ORIGIN<br />

Importante: A estas alturas supongo que sabéis<br />

lo que tengo que decir de la compatibilidad de<br />

Internet Explorer 8 con este atributo. Por si las<br />

dudas lo confirmo: no es compatible.<br />

Podríamos decir que el atributo background-origin<br />

es una versión mejorada de background-position<br />

que nos permite definir el origen de coordenadas<br />

desde el cual posicionamos la imagen. Podemos<br />

darle tres valores:<br />

border-box. Toma como origen de coordenadas el<br />

borde del elemento.<br />

padding-box. Toma como origen de coordenadas<br />

el padding del elemento.<br />

BACKGROUND-CLIP<br />

En ocasiones tendremos bordes con<br />

ransparencias bajo los cuales no queremos<br />

que se muestre el fondo, aunque la propiedad<br />

background-origin tenga el valor border-box.<br />

Para estos casos contamos con el atributo<br />

background-clip que “enmascara” nuestro fondo<br />

tomando como referencia el borde, el padding o<br />

el contenido. Lo valores pueden ser:<br />

border. Es el valor por defecto. La imagen no<br />

sufre cambios.<br />

padding. Empieza a enmascarar a partir del inicio<br />

padding, por lo que no se mostrará fondo bajo<br />

nuestro borde.<br />

contení. Enmascara a partir del contenido, por<br />

padding.<br />

MÚLTIPLES FONDOS<br />

Hasta ahora en CSS2 el uso de varios fondos<br />

era algo complejo que pasaba por superponer<br />

varias capas aplicando a cada una de ellas un<br />

fondo distinto. CSS3 permite asignar a un mismo<br />

elemento varios fondos mediante el atributo<br />

background-image por lo que este trabajo se<br />

facilita enormemente.<br />

La sintaxis para asignar varios fondos es la<br />

siguiente:<br />

Código:<br />

background-image:url(“imagen” ) ,<br />

url(“imagen”) ;<br />

Código:<br />

background-image:url(“bg2.png”<br />

url(“bgl.png”) ;<br />

www.geekx.bo


GUÍA<br />

25 TECNICAS QUE NECESITAS SABER<br />

EFECTOS DE SOMBRA Y BRILLO<br />

En este tema veremos el uso de box-shadow y text-shadow con los que podremos crear<br />

sombras y brillos. Además como regalo os dejo una aplicación práctica: Textos 3D.<br />

BOX-SHADOW<br />

Hasta ahora aplicar un efecto de sombra a cualquier elemento de nuestro html era un<br />

proceso entretenido donde teníamos que cargar imágenes creadas previamente en nuestro<br />

programa de edición de imágenes favorito, recortarlas, ajustarías, etc.<br />

Con el atributo box-shadow podemos aplicar sombras a nuestras capas con pasmosa<br />

facilidad. La sintaxis de box-shadow es la siguiente:<br />

Código:<br />

box-shadow: distanciaX distanciaY difuminado<br />

color;<br />

Código:<br />

box-shadow: 5px lOpx 7px rgba(0,0,0,0 . 5) ;<br />

TEXTOS EN 3D<br />

CON TEXT-SHADOW<br />

Utilice múltiples Texto sombras para crear texto en<br />

3D en cualquier elemento HTML.<br />

No HTML extra, sin dolores de cabeza adicionales,<br />

simplemente awesomesauce.<br />

h1 {<br />

text-shadow: 0 1px 0 # ccc,<br />

0 2px 0 # c9c9c9,<br />

0 3px 0 # bbb,<br />

0 4px 0 # b9b9b9,<br />

0 5px 0 # aaa,<br />

0 6px rgba 1px (0,0,0, 0,1),<br />

0 0 5px rgba (0,0,0, 0,1),<br />

0 1px 3px rgba (0,0,0, 0,3),<br />

0 3px 5px rgba (0,0,0, 0,2),<br />

0 5px 10px rgba (0,0,0, 0,25),<br />

0 10px 10px rgba (0,0,0, 0,2),<br />

0 20px 20px rgba (0,0,0, 0,15);<br />

}<br />

Si quisiéramos añadir varias sombras, sólo tendríamos que añadir un nuevo valor al atributo<br />

usando una coma como separador:<br />

Código:<br />

box-shadow: 5px lOpx 7px rgba(0,0,0,0.5), -5px -lOpx 7px rgba(0,0,0,0.5);<br />

Eso ya tiene algo más de aspecto 3D, pero aun le<br />

podemos dar un aspecto más realista. Aplicaremos<br />

una nueva sombra siguiendo el método anterior,<br />

con la diferencia que esta vez le daremos color<br />

negro. Por último añadimos una sombra mayor<br />

que todas las demás, de color gris claro y con<br />

difuminado:<br />

El atributo text-shadow se incluyó inicialmente en el CSS2 pero fué eliminado en CSS2.1. Por<br />

suerte para todos CSS3 vuelve a incluirlo. Seguro que te preguntas en qué se diferencia<br />

debox-shadow. Mientras que box-shadow crea sombras a en forma de caja, text-shadow<br />

realiza una sombra ajustada a los propios caracteres de un texto. En la siguiente imagen<br />

podéis ver la diferencia de los atributos aplicados a textos:<br />

Código:<br />

text-shadow: distanciaX distanciaY<br />

difuminado color;<br />

Para asignar varias sombras usamos la coma<br />

como separador. Por ejemplo:<br />

Código:<br />

text-shadow: 5px lOpx 7px<br />

rgba(0,0,0,0.5), -5px -lOpx 7px<br />

rgba(0,0,0,0.5);<br />

BRILLO<br />

Código:<br />

text-shadow: Opx Opx 20px<br />

rgba(0,255,0, 1) ;<br />

text-shadow:<br />

Opx Opx 20px<br />

rgba(0,255,0,1),<br />

Opx Opx 20px<br />

rgba(0,255,0,1),<br />

Opx Opx 20px<br />

rgba(0,255,O,1);<br />

Código:<br />

text-shadow:<br />

lpx lpx Opx rgba(230,230,230,1),<br />

2px 2px Opx rgba(200,200,200,1),<br />

3px 3px Opx rgba(180,180,180,1),<br />

4px 4px Opx rgba(160,160,160,1),<br />

/^Añadimos*/<br />

5px 5px Opx rgba(0,0,0,1),<br />

8px 8px 2Opx rgba(0,0,0,0.5);<br />

Código:<br />

text-shadow:<br />

lpx lpx Opx rgba(230,230,230,1),<br />

2px 2px Opx rgba(200,200,200,1),<br />

3px 3px Opx rgba(180,180,180,1),<br />

4px 4px Opx rgba(160,160,160,1),<br />

/^Añadimos*/<br />

5px 5px Opx rgba(0,0,0,1),<br />

8px 8px 2Opx rgba(0,0,0,0.5);<br />

22 Revista geek gratuita


TRANSFORMACIONES<br />

GUÍA<br />

25 TECNICAS QUE NECESITAS SABER<br />

Una de las aportaciones de CSS3 que en mi opinión añaden más dinamismo al diseño son las transformaciones. A partir de ahora podremos modificar la<br />

rotación, inclinación o escala de nuestros elementos.<br />

TRANSFORM EN CSS3<br />

El atributo transform nos permite, como su propio<br />

nombre indica, transformar un elemento. Su sintaxis<br />

es la siguiente:<br />

Importante: He notado que las transformaciones aplicadas a textos no funcionan bien con -webkit-.<br />

Como solución podemos aplicarlas a las capas contenedoras. En -moz- sí se puede aplicar directamente<br />

sobre el texto sin problemas.<br />

Código :<br />

transform: tipo(cantidad);<br />

El valor tipo puede tomar cuatro valores, y cada uno<br />

de ellos realiza una función diferente:<br />

• rotate. Nos permite girar los elementos un<br />

número de grados. La sintaxis es:<br />

Código :<br />

transform: rotate(25deg) ;<br />

Se pueden aplicar diferentes transformaciones a un<br />

mismo elemento simplemente escribiéndolas de<br />

manera consecutiva:<br />

Código:<br />

transform: scale(1.6) skew(lOdeg)<br />

transíate(5px) rotate(12deg);<br />

• skew. Podemos inclinar un elemento tanto en<br />

coordenadas X como V. El valor se expresa en<br />

grados y la sintaxis es la siguiente:<br />

Código :<br />

/*transform: skew(gradosX, gradosY);*/<br />

transform: skew(15deg, 3deg);<br />

• scale. Con este tipo podremos escalar nuestro<br />

elemento tanto en X como en V en una cantidad<br />

expresada en tantos por uno:<br />

Código:<br />

/*transform: scale(escalaX,escalaY);*/<br />

transform: scale(1.5,0.6);*/<br />

• transíate. Podemos desplazar el elemento tanto<br />

en X como en V.<br />

Código:<br />

/*transform: transíate(desplazamientoX,<br />

desplazamientoY);*/<br />

transform:transíate(12px, 19px);<br />

TRANSICIONES<br />

Actualmente CSS3 permite la posibilidad de cambiar el estilo de un elemento mediante una<br />

transición animada. Este es tal vez el aspecto que me ha resultado más atractivo de todo CSS3 y<br />

es curioso que cuando redacté este mismo curso en Cristalab no escribí nada acerca de ellas. Sin<br />

embargo es una de las características con mayor potencial y más efectista de cuantas hayamos<br />

revisado hasta ahora.<br />

Existen 4 propiedades base para crear transiciones:<br />

• transition-property: Define la propiedad que vamos a animar mediante la transición.<br />

• transition-duration: La duración en segundos de la animación.<br />

• transition-timing-function: La función matemática aplicada a la animación. Puede<br />

tomar 5 valores predefinidos (linear, ease, ease-in, ease-out o ease-in-ouf) o cubic-bezier(v, v, v, v)<br />

para definir tus propias funciones. Su valor por defecto es ease.<br />

• transition-delay: Indica el retardo en segundos. El valor por defecto es 0.<br />

También se puede aplicar el método shorthand:<br />

Independientemente del orden:<br />

transition: [propiedad] [duración] [función] [retardo]<br />

Código:<br />

div{<br />

width: lOOpx;<br />

transition: width ls ease-in 0.2s;<br />

-o-transition: width ls ease-in 0 . 2 s;<br />

-moz-transition: width ls ease-in 0 . 2 s;<br />

-webkit-transition: width ls ease-in 0.2s; }<br />

div:hover{<br />

width: 500px;<br />

transition: width ls ease-in 0.2s;<br />

-o-transition: width ls ease-in 0 . 2 s;<br />

-moz-transition: width ls ease-in 0 . 2 s;<br />

-webkit-transition: width ls ease-in 0.2s; }<br />

En este ejemplo modificamos el ancho de una capa durante un segundo empezando 0.2 segundos<br />

después de hacer hover sobre el div.<br />

El caso es que podemos aplicar transiciones a varias propiedades a la vez, simplemente separando las<br />

sentencias por comas:<br />

www.geekx.bo


GUÍA<br />

25 TECNICAS QUE NECESITAS SABER<br />

ANIMACIONES CSS<br />

Tradicionalmente cuando queríamos incluir cualquier tipo de animación en nuestras<br />

páginas webs teníamos que recurrir a tecnologías como Flash o JavaScript. Si bien<br />

la potencia de los dos citados es descomunal en comparación, las nuevas funciones<br />

de animación de CSS3 abren una nueva puerta a nuestra imaginación, sin tener que<br />

depender de tecnologías extras.<br />

Importante: En la fecha en la que se realiza este curso, la compatibilidad de las<br />

animaciones se limita a los navegadores basados en webkit como Chrome o Safari.<br />

Fotogramas<br />

Para aquellos que son flasheros el concepto de fotograma clave no necesita<br />

explicación. Si no te encuentras entre los adeptos del programa de Adobe, es<br />

importante que entiendas bien este concepto antes de continuar.<br />

Un fotograma clave no es más que un punto destacado en el tiempo de nuestra<br />

animación. Cualquier animación consta al menos de dos fotogramas claves: el<br />

punto inicial y el punto final.<br />

@KEYFRAMES<br />

FOTOGRAMAS CLAVES DE LAS<br />

ANIMACIONES EN CSS3<br />

En CSS3 creamos animaciones completas mediante @keyframes, que son un<br />

conjunto de fotogramas clave. Su sintaxis es la siguiente:<br />

Código:<br />

/*@keyframe nombreAnimacion{<br />

puntoDelKeyframe{<br />

atributosIniciales;<br />

}<br />

puntoDelKeyframe{<br />

nuevosAtributos; }<br />

puntoDelKeyframe{<br />

últimosAtributos;<br />

}*/<br />

}<br />

Código:<br />

@keyframe animacionCochef<br />

/^Indicamos que salimos de la<br />

posición 0*/ f rom{<br />

left:Opx;<br />

}<br />

/^Indicamos que al final la<br />

posición debe ser 350*/<br />

to{<br />

left:350px;<br />

} }<br />

Un poco extraño ¿verdad? Tranquilo, es más fácil de lo que parece. Veamos que<br />

tendríamos que hacer para desplazar nuestro coche a la derecha:<br />

NO TE OLVIDES DE<br />

ORDENAR TU CODIGO CSS<br />

POR ORDEN ALFABETIDO, LA<br />

WC3 TOMA MUY ENCUENTA<br />

EL ORDEN DE TU CODIGO,<br />

SEAMOS ORDENADOS<br />

24 Revista geek gratuita

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!