miercuri, mai 28, 2008

provocarea unei aplicatii

Recent am fost solicitat (si prin asta înteleg că mi s-a dat sarcina) realizării unei pagini web pentru o conferintă ce va avea loc la "Univ. 1 Decembrie" în noiembrie.

După îndelungi chinuinte, modificări si modificări la modificări (în functie, evident, de rangul solicitantului), a iesit ce puteti vedea în dreapta - disponibli si aici.

Pe parcurs am învătat câteva chestii, cum ar fi:

1. Internet Explorer sucks.
De fapt asta stiam. Dar nu stiam cât de tare. Imagine this: pagina perfectă în Firefox, în IE nu avea deloc coloana din stânga - cea cu meniul. Dacă totusi miscam mausul deasupra textului english | romana (fără să dau click), apărea (desi era miscată putin). Nu cred că există o explicatie logică pentru asta si ce am făcut a fost mai mult la ghici. Adică am refăcut mărimea coloanelor si am modificat putin solutia de modificare a lor, făcând încercări repetate până am ajuns la solutia dorită.
Concret, am stabilit pentru fiecare coloană o lătime procentuală, iar la coloana stânga i-am dat display:inline (nu stiu exact de ce!). O problemă interesantă a fost aici si faptul că desi în alte modele pozitia coloanelor în structura html nu era relevantă, în cazul meu a trebuit să le pun în ordine : left, content, right (altfel arătau total altfel).

2. E o reală proeblemă să stabilesti în CSS înăltimea egală pentru coloane.
CSS-ul întinde coloana pe verticală atât cât are nevoie. Adică în functie de continut. Cele 3 coloane pe care le am prezintă diferente foarte mari de dimensiune de la pagină la pagină si nici min-height (pe care oricum nu-l recunoaste IE) nu era o solutie. În final, solutia a venit din partea JavaScript (stiu, dacă are JS dezactivat arată nasol, dar 90% din useri au JS activ) si vă recomand în acest sens treaba de aici.

3. JavaScript doesn't suck at all!
Desi credeam altfel - mai ales pentru că prin manualele pe care le-am văzut JS era folosit să afiseze în pagină un ceas, un câine care se plimbă (!?) sau niste buline care fug după cursor (extrem de enervant) - mi-am schimbat părerea atât din cauza scriptului cu coloanele de mai sus cât si pentru că permite foarte usor să faci validarea formularelor prin care se transmit date.

3 comentarii:

Pavel M. spunea...

Salut Cipri,

Mai intru si eu din cand in cand sa vad ce mai scrii pe blog.

Nu se prea mai folosesc tabele pt design de site-uri ... in special din cauza problemelor amintite de tine. Cred ca iti era mai simplu sa faci niste div'uri aranjate cu css.

Tabele e bine sa folosesti in newslettere. Pastreaza mai bine structura pt un newsletter.

PS: Bafta in lupta SLG (software liber si gratis) :)

Cipri spunea...

Mersi de comment.
Nu stiu daca te-ai uitat prin site dar nu folosesc tabele (doar la form, care mi se pare mai simplu de aranjat asa).
Structura site-ului este FULL css - asta si spuneam in articol -> problemele pe care le-am avut in a face css-ul valid si pentru FireFox si pentru Internet Explorer.

Pavel M. spunea...

Da, am intentionat sa ma uit la sursa, dar am uitat ... fiind ora asa inaintata memoria de scurta durata functioneaza foarte prost :)

Am inteles gresit, my bad.