CSS específics per a cada navegador

Fa temps, l’única forma que hi havia per poder fer dissenys web visibles per a tots els navegadors era mitjançant “hacks” en css. El problema era que navegadors antiquats com l’ie6 tractaven elements com els margins o paddings de forma diferent. Per exemple, duplicant les mides (10px de padding es podien convertir en 20px), no acceptant la propietat :hover excepte per les etiquetes d’enllaç <a>, o fins i tot tractant les mides amb la seva pròpia interpretació dels píxels.

La solució a aquest handicap era la d’utilitzar hacks (faltes d’ortografia) que només els navegadors d’Internet Explorer vells detectaven i acceptaven com a preferents. Així, si posàvem un asterisc (*) davant d’un element (ja fos un tag html o una id/classe creada per nosaltres) l’ie7 el detectava i aplicava, mentre que els altres navegadors el saltaven veient-lo com un error de codi. En canvi, si volíem especificar algun valor només per a l’ie6, utilitzàvem un guió baix (_). El problema d’aquestes faltes ortogràfiques és que no obtenen la validació del codi, pel que si el que busquem és una pàgina validable i un codi net, aquesta no és una bona opció. Clar que també servia realitzar fulles d’estils úniques per a aquests dos navegadors mitjançant <!--[if ...]> <![endif]-->, si bé resultava una tasca més laboriosa.

Fa cosa d’un mes, vaig caure en una solució a l’etern problema del maquetador i els navegadors que ja s’estava utilitzant en un gestor de continguts i que també podria ser aplicable per a una web estàtica i/o dinàmica. Per què no utilitzar un script que detectés el navegador visitant i que, alhora, el classifiqués amb una classe concreta inscrita a l’etiqueta <body>? Així, sempre es podria incidir sobre el comportament del navegador sense haver de recórrer a cap tipus de hack no validable. La resposta era un JQuery molt senzill i perfectament configurable.

Tot i que cada cop més s’està restringint més la validació per a l’ie6 d’ençà que Google i YouTube es van negar a continuar donant-li suport, aquesta solució no només pot estalviar hacks i canvis d’estructures, sinó que a més ens pot permetre la personalització de dissenys segons navegador i versió i, fins i tot, Sistemes Operatius.

// Observa quin navegador és i li afegeix la classe que li definim al body
$(document).ready(function(){
var userAgent = navigator.userAgent.toLowerCase();
$.browser.chrome = /chrome/.test(navigator.userAgent.toLowerCase());
// És una versió d'IE?
if($.browser.msie){
$('body').addClass('ie');
// Afegim el número de la versió
$('body').addClass('ie' + $.browser.version.substring(0,1));
}

// És una versió de Chrome?
if($.browser.chrome){
$('body').addClass('chrome');
// Afegim el número de la versió
userAgent = userAgent.substring(userAgent.indexOf('chrome/') +7);
userAgent = userAgent.substring(0,1);
$('body').addClass('chrome' + userAgent);
// Si és Chrome, JQuery pensa que és Safari, així que li hem de dir que no l'és
$.browser.safari = false;
}
// És una versió de Safari?
if($.browser.safari){
$('body').addClass('safari');
// Afegim el número de la versió
userAgent = userAgent.substring(userAgent.indexOf('version/') +8);
userAgent = userAgent.substring(0,1);
$('body').addClass('safari' + userAgent);
}
// És una versió de Mozilla?
if($.browser.mozilla){
// És Firefox?
if(navigator.userAgent.toLowerCase().indexOf('firefox') != -1){
$('body').addClass('firefox');
// Afegim el número de la versió
userAgent = userAgent.substring(userAgent.indexOf('firefox/') +8);
userAgent = userAgent.substring(0,1);
$('body').addClass('firefox' + userAgent);
}
// Si no, ha de ser una altra versió de Mozilla
else{
$('body').addClass('mozilla');
}
}
// És una versió d'Opera?
if($.browser.opera){
$('body').addClass('opera');
}
});

Amb això només caldrà que afegim el canvi que vulguem a la fulla d’estils i ens ho aplicarà de forma preferent pel navegador especificat. Per exemple:
.nom-de-la-classe { width:200px; }
.ie6 .nom-de-la-classe { width:250px; }

S’ha acabat duplicar fulles d’estils i escriure hacks!

  • Twitter
  • del.icio.us
  • Facebook
  • Technorati
  • LinkedIn

Rich Typography a la web

Independentment del que encara puguin pensar alguns nostàlgics, cada vegada hi ha un major control en el disseny i l’ús de la tipografia.

Al marge de les tipografies tradicionalment utilitzades en la composició de text de les pàgines web, l’ús de tipografia en pantalla s’ha vist limitat a la seva conversió en imatge -com JPG o GIF- o bé, com a molt, mantenint el seu format vectorial en animacions flash.

L’història de l’ús i disseny de la tipografia per pantalla va lligada a l’història de l’edició digital. Des de començaments d’aquest segle, hi ha un canvi d’inflexió respecte a l’ús de la tipografia en pantalla. Si bé fins a finals dels anys noranta les millores en la visualització de les fonts han tingut com a objectiu principal donar resposta a la necessitat de facilitar el treball de composició tipogràfica a la pantalla però per a finalitats que van lligades fonamentalment a l’edició en paper, amb el canvi de segle, gràcies als avenços tecnològics que han permès una major rapidesa en la transmissió de dades i gràcies, també, a la major resolució dels monitors, la tipografia troba a la pantalla un suport en igualtat de condicions al paper.

No serà fins a la introducció en llenguatge HTML de les especificacions que van facilitar la creació de fulls d’estil CSS que la tipografia va començar, encara que tímidament, a jugar un paper determinant en el disseny de l’edició electrònica.
Les anomenades «web-safe-fonts», és a dir, aquelles fonts que es troben disponibles en la majoria dels ordinadors i que han estat el pà de cada dia de qualsevol pàgina web, es convertiran ben aviat en un recurs del passat.

The potential of web typography
El «tag» @fontface permet utilitzar qualsevol font de repertori, encara que l’usuari no disposi en el seu ordinador d’aquesta font, però nomès ho soporten els navegadors moderns. Existeix una eina online que ens facilita la creació del codi.

Hi han altres solucions comercials com la proposta llançada fa aproximadament un any per la distribuïdora typekit.com o, més recentment, per typoteque.com no són més que solucions intermitges.
Totes dues ofereixen llicències d’ús mitjançant un sistema de subscripció pel qual les fonts no es descarreguen al servidor on s’allotja la pàgina web sinó que els fitxers font es troben en servidors propietat de la distribuïdora i, a través d’un enllaç, la tipogràfia es renderitza directament a la finestra del navegador.

El format WOFF (web open font format), de moment només funciona amb el navegador Mozilla Firefox 3.6, diuen que es el format del futur. WOFF és un format comprimit específicament dissenyat per a la web. Creat per dissenyadors de tipografia i programadors, està cridada a ser la solució més esperada dels últims 4 anys. A més ja s’està treballant en una versió del Firefox que permetrà poder treure el màxim profit de les especificacions de CSS3, obtenint un control molt més gran de la composició tipogràfica a la pantalla.

El futur definitiu de la tipografia en pantalla està molt a prop.

  • Twitter
  • del.icio.us
  • Facebook
  • Technorati
  • LinkedIn

Un CMS no és el remei definitiu

Fragment extret de l’e-book Professional web design:

Molts dels clients amb els quals treballem confien cegament en sistemes de gestió de continguts o content manager system (CMS). Aquells que no disposen d’un pensen que solucionarà els seus problemes de gestió web, i els que en tenen gemeguen perquè no ho fan!

És cert que un CMS pot aportar molts beneficis. Aquests inclouen:

  • reduir els obstacles tècnics d’afegir continguts,
  • permet a més persones per afegir i editar contingut,
  • facilita actualitzacions més ràpides,
  • i permet un major control.

No obstant això, molts CMS són menys flexibles del que als seus propietaris els agradaria. Aquestes no compleixen amb les exigències canviants dels llocs web perquè únicament són una plataforma. Administradors web també es queixen que els seus CMS són difícils d’utilitzar. En molts casos, això es deu al fet que els que l’utilitzen no han tingut la formació adequada o no l’estan utilitzant amb suficient regularitat.

Finalment, un CMS pot permetre la fàcil actualització del contingut, però no garantir que el contingut s’actualitzarà o fins i tot que la qualitat de contingut serà acceptable. Molts llocs web basats en CMS encara tenen el contingut antiquat o mal escrit. Això és degut a que no s’han destinat prou recursos per a l’administració del web.

Si busques un CMS per resoldre els teus problemes de manteniment del lloc web, et decebrà.

Aquest text ha estat escrit per i per a dissenyadors, però el que al final intenta explicar és que un CMS només és una eina que per si sola no fa res, i que mal utilitzada acabarà perjudicant al seu propietari. Cal un esforç per part del propietari per:

  • actualitzar els continguts amb regularitat,
  • actualitzar correctament els continguts (com per exemple, una correcta escriptura),
  • i fer servir el CMS adequat per a una determinada funció (com per exemple WordPress per a un bloc)

A més a més voldria afegir un punt important, la creativitat (usabilitat i disseny)

Usabilitat, disseny, i plataforma tecnològica (la programació pura i dura) avui dia tenen el mateix nivell d’importància ja que els continguts d’un web han de ser fàcilment llegibles i trobables, el web ha de ser atractiu, i tot ha de funcionar correctament. Si un d’aquests elements falla es crea un desnivell. Tenim un problema.

Mitjançant un CMS podem fer servir una plantilla de disseny (template o skin) preconcebuda, però el fet que centenars d’altres webs facin servir el mateix template farà que el nostre web perdi exclusivitat, excel·lència. I si volem modificar la usabilitat i el disseny per que l’estil sigui més personal, la creativitat sempre s’haurà de supeditar al CMS (en aquest cas, la plataforma tecnològica). Tornem a tenir un desnivell que, en aquest cas, no farà que funcioni pitjor, però sí que limitarà la usabilitat i el disseny. L’eficàcia comunicativa minvarà.

No voldria semblar que estic demonitzant els CMS. Com ja he dit abans, els CMS són molt útils en situacions i moments molt determinats, però haurem d’estudiar si realment són la solució definitiva al que realment necessitem, pensant tant en el moment actual com en el futur del nostre web.

  • Twitter
  • del.icio.us
  • Facebook
  • Technorati
  • LinkedIn

El poder ocult d’un regal

Fa alguns dies va aparèixer un article molt interessant al bloc de Seth Godin que parlava del valor afegit que té fer un regal. Lluny del tipus de transaccions a les que estem acostumats, en les quals tu em dones diners i jo et presto un servei, Godin ens parla del valor de regalar: quan regalem adequadament es produeix un desequilibri, i fruit d’aquest desequilibri es crea el moviment que empeny a un nou equilibri. Aquest moviment crea connexió.

Aquesta és sens dubte una de les claus del màrqueting actual, 2.0, digital o com li vulgueu dir. Oferir alguna cosa a canvi de res de vegades té efectes retroactius.

I a més a més, com diu en Godin: “…donar un regal fa sentir bé”
:)

  • Twitter
  • del.icio.us
  • Facebook
  • Technorati
  • LinkedIn

Primeres impressions

Uns investigadors de la Carlton University ens donen aquest consell: “Un web net, professional i que carregui ràpidament pot assegurar que la nostra primera impressió sigui bona“.

La primera impressió és vital, i més en el món web, on molts dels hàbits (bons i dolets) dels nostres interlocutors es veuen molt més accentuats que en d’altres canals. Només cal veure la taula per adonar-nos del temps de captació o primera impressió que dedicaran els usuaris finals del nostre web, cartell, tríptic, etc.

Mitjà Temps de captació
Web 1/20 segon
Cartell 1 a 2 segons
Embalatge 3 a 5 segons
Fulletó dues cares 8 a 10 segons
Tríptic 12 a 20 segons
Catàleg 8 pàgines 20 a 30 segons
Memòria anual 30 a 50 segons
Manual d’instruccions 40 a 100 segons

En el cas del web es radicalitza bastant, ja que només tindrem una oportunitat per convèncer als usuaris que es troben de pas per a que es quedin al nostre web durant més estona.

Naturalment hi entre en joc moltes variables, com per exemple la proporció entre text i imatges, l’interès de l’usuari pels continguts o l’atractiu visual. Com diu en Joan Costa, l’ull busca el plaer.

Fonts: Diseñar para los ojos / @loveday

  • Twitter
  • del.icio.us
  • Facebook
  • Technorati
  • LinkedIn

The Economist i les xarxes socials

La setmana passada el seminari The Economist publicava un Special Report sobre les xarxes socials que considero imprescindible. Fa un resum molt actualitzat de què són, com estan en aquests moments i quin és el seu potencial de cara a que les empreses que s’hi dediquen en treguin profit econòmic.  Interessants articles sobre Facebook, Twitter, com treure rendiment de les xarxes socials, l’ús de les xarxes per part dels treballadors en horari laboral, com utilitzar-les per contractar millor o sobre privacitat. Especialment interessants són els articles sobre com les empreses d’internet poden aprofitar-les per als seus negocis.

Els articles que componen l’informe són:

  • Global swap shops (why social networks have grown so fast – and how Facebook has become so dominant)
  • Twitter’s transmitters (the magic of 140 characters)
  • Profiting from friendship (social networks have a better chance of making money then their critics think)
  • A peach of an opportunity (small businesses are using networks to become biger)
  • Yammering away at the office (a distraction or a bonus)
  • Social contracts (the smart way to hire workers)
  • Privacy 2.0 (give a little, take a little)
  • Towards a socialised state (the joy of unlimited communication)

La revista permet comprar còpies separades de l’Special Report

Podeu veure una entrevista amb l’autor a veure vídeo:

  • Twitter
  • del.icio.us
  • Facebook
  • Technorati
  • LinkedIn

Fiasco Awards 2010: votacions obertes

A partir d’avui ja podem votar el fiasco de l’any. Aquest any la segona edició dels Fiasco Awards ha triat 8 candidatures finalistes, de les quals una serà la guanyadora. Els criteris generals de valoració de les candidatures segueixen sent les mateixes que a l’edició anterior: credibilitat, impacte, facilitat per extreure alguna conclusió útil, originalitat, simplicitat i vigència.

Un cop més els Fiasco Awards volen premiar el fiasco tecnològic de l’any tot fomentant una actitud positiva, ja que segons l’organització: “el camí cap a l’èxit està ple d’entrebancs”.

  • Twitter
  • del.icio.us
  • Facebook
  • Technorati
  • LinkedIn

Text enlloc d’un logo mitjançant el CSS text-indent

text-indent” estableix la tabulació de la primera línia de text d’un element. La tabulació es pot indicar mitjançant qualsevol de les unitats de mesura definides per CSS 2, incloent els percentatges.

Amb la propietat text-indent podem amagar el text, per exemple, d’una capa, i colocar-hi una imatge o logotip amb un link com a imatge de fons. Dit d’una altra manera: podem substituir un logotip per text pla, però el que visualitzarem serà únicament el logotip.

<style type="text/css">
h1 a {
   display: block;
   text-decoration: none;
   width: 128px;
   height: 128px;
   bottom: 0px;
   background: url(mozilla-icon.png) no-repeat left top;
   text-indent: -99999px;
}
</style>

<h1><a href="http://www.mozilla-europe.org/ca">Mozilla</a></h1>

La solució de text-indent és més enrevessada que la típica imatge amb etiquetes alt i title, però és millor de cara al SEO.

  • Twitter
  • del.icio.us
  • Facebook
  • Technorati
  • LinkedIn

Js emulador de CSS3 per a Internet Explorer 5, 6, 7 i 8

ie-css3.js permet a Internet Explorer identificar els selectors de CSS3. Només s’ha d’incloure la seqüència de comandaments a les pàgines HTML i començar a utilitzar els selectors CSS3 als fulls d’estil.


<script src="DOMAssistantCompressed-2.7.4.js" type="text/javascript">
</script> <script src="ie-css3.js" type="text/javascript"></script>

A la pàgina de Keith Clark tenim informació ampliada: coses a tenir en compte, explicacions sobre el funcionament, descàrrega del javascript…

Sens dubte és una molt bona eina per mirar endavant i començar a perdre la por al jou que representa IE6 pel que fa al disseny i desenvolupament web (i al nostre creixement interior com a dissenyadors i desenvolupadors web).

  • Twitter
  • del.icio.us
  • Facebook
  • Technorati
  • LinkedIn

Search Engine Optimization per a WordPress

El posicionament en cercadors o posicionament web és el resultat de la recuperació d’informació a la base de dades dels grans Motors de Cerca d’Internet per l’ús d’algorismes de cerca en el programari.

La tasca d’ajustar la informació de les pàgines que es pretenen fer aparèixer en primeres posicions dels resultats és coneguda com SEO, sigla en anglès de Search Engine Optimization, optimització per a motors de cerca. Consisteix a aplicar diverses tècniques per aconseguir que els cercadors d’Internet situïn determinada pàgina web en una posició i categoria alta (primeres posicions) dins de la seva pàgina de resultats per a determinats termes i frases clau de cerca.

Markus Walter ha creat un document el qual explica molt bé totes les passes per conseguir un bon SEO pel nostre WordPress. El document esta destinat a aquest CMS tan popular, encara que la mayoria de consells son aplicables a tots els webs.

  • Twitter
  • del.icio.us
  • Facebook
  • Technorati
  • LinkedIn