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í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