Cosa cambia con il rilascio della versione 3.6 di Firefox
Pochi giorni fa è stata rilasciata la nuova versione di Firefox e la prima cosa che ovviamente ho fatto è stata andare a controllare cosa è cambiato nel supporto al CSS3 e all’HTML5 rispetto all’ultimo articolo in cui ne ho parlato.
Anche stavolta ho utilizzato l’affidabilissimo FindMeByIp utilizzato anche la scorsa volta ma i risultati purtroppo non sono stati quelli aspettati.
Purtroppo i cambiamenti per noi web designer sono pressochè nulli. L’unica novità apportata riguarda il CSS3 e, precisamente, Continua a leggere »
Piccola riflessione su IE 6
In questo periodo, oltre ai tremila impegni tra lavoro e università, sto lavorando alla nuova veste grafica di questo sito. Al momento sono ancora in alto mare e il poco tempo a disposizione non mi è di aiuto. Mentre mi destreggiavo tra i livelli di Photoshop però mi sono soffermato a pensare ad un particolare.
Una volta che il layout sarà completo dovrò passarlo in XHTML / CSS e fin qui nulla di strano. Pensando però alla compatibilità cross-browser ovviamente avrò anche a che fare anche con Internet Explorer 6, browser che finora non ho mai tralasciato nei progetti realizzati (anzi mi devo ricordare di aggiornare il portfolio che ancora è obsoleto). Finora nei lavori da me realizzati ho sempre garantito una compatibilità al 100% di tale software però in questo caso per un pò ho preferito seguire un’altra via di pensiero.
Queste sono le statistiche complessive di visita del mio sito web:
- Firefox 60.45%
- Internet Explorer 27.78%
- Safari 8.83%
- Opera 1.31%
e già questo risultato mi fa ben sperare. Senza nulla togliere a Safari e Opera ma vedere che Internet Explorer è stato più che doppiato da Firefox è già un grande risultato. Suddividendo quel 27.78% tra le versioni di IE ho notato che:
- Internet Explorer 7 18.27%
- Internet Explorer 6 5.9%
- Internet Explorer 8 3.41%
- Versioni antecedenti 0.2 %
La versione 6 dunque occupa il 6% dei visitatori complessivi del mio blog. Ovviamente quest risultati non possono valere come valore statistico generale essendo il mio un blog di “settore” e quindi di conseguenza visitato da persone che odiano tale browser!
Queste statistiche però mi hanno fatto pensare ad una cosa. In questo caso specifico sto parlando del mio blog, quindi un caso particolare, ma pensando in generale: statistiche alla mano, sapendo che il sito web commissionatoci da un nostro cliente ha un target molto basso di visitatori che al momento usano Internet Explorer 6, quanto vale la pena ammattirsi con fogli di stile e script che portino la compatibilità del progetto con questo browser vicina al 100%?
Ovviamente non mi riferisco ad un sito che ha un target di utenza molto variegata e che quindi riceve visite anche da utenti “ignoranti” (in senso buono) sulla materia. Parlo invece di siti più specifici dove sappiamo a priori che è bassa la percentuale di tali utenti. Premetto che sono contrario di principio all’ignorare completamente un browser perchè comunque quel povero utente che lo possiede, ha il sacrosanto diritto di leggersi la sua pagina web in santa pace senza doversi ammattire. Mi riferisco però ad effetti grafici e script “particolari” che sono più di abbellimento e di miglioramento del sito web ma che, senza di loro, il sito risulta comunque ben navigabile e accessibile. Vale davvero la pena di spendere altri giorni di lavoro se solo 6 visitatori su 100 useranno quello script?
Mi piacerebbe sapere cosa ne pensate voi.
Buon weekend
Scrivere test case per i browser
Quella che segue è una guida per la creazione di test case per browser web, per esempio per creare test case che mostrino bug in HTML, CSS, SVG, DOM o JS.
Ci sono sempre eccezioni a tutte le regole quando si creano test case. La cosa più importante è mostrare il bug senza travisamenti. Questo non è qualcosa che si può fare semplicemente seguendo alcuni passi. Dovete essere consapevoli di quello che state facendo.
Ridurre i test case esistenti
FASE UNO: TROVARE UN BUG
La prima fase nella costruzione di un test case è trovare in primo luogo un bug. Ci sono quattro modi per farlo:
- Farlo fare a qualcun altro. La maggior parte delle volte i test case che scrivete andranno a coprire quei bug che altre persone hanno analizzato. In questo caso avrete di solito una pagina web dalla resa scorretta, un demo, o un effettivo sito web. Tuttavia è anche possibile che la descrizione del bug non abbia una pagina correlata, ma solo una descrizione del problema.
- Altrimenti potete trovare un bug voi stessi mentre navigate il web. In questo caso avrete un sito web dalla resa scorretta.
- Potreste inoltre trovare un bug se uno dei test case esistenti fallisce. In questo caso avrete una pagina web dalla resa scorretta.
- Da ultimo il bug può essere ipotetico. Potreste scrivere una suite di test su una caratteristica senza sapere se la caratteristica ha un bug o meno, allo scopo di trovare bug nella sua implementazione. In questo caso non avete una pagina web, ma solo un’idea sul probabile problema.
Se avete una pagina web che mostra un problema, andate alla fase successiva. Altrimenti dovrete creare un test case iniziale da voi. Questo aspetto viene trattato nella sezione “Creare test case da zero” più avanti.
FASE DUE: RIMUOVERE LE DIPENDENZE
Avete una pagina dalla resa scorretta.
Fate una copia della pagina e di tutti i file in essa usati, e aggiornate i collegamenti in modo da farli puntare tutti alle vostre copie dei file. Assicuratevi che la resa continui ad essere scorretta, ed in caso contrario scoprite il perché. Create una copia dei file originali il più fedele possibile all’ambiente originale, in modo da riprodurre il bug. Per esempio, invece di caricare i file in locale, metteteli sul server e fate le vostre verifiche da li. Assicuratevi che i tipi MIME siano quelli giusti, ecc.
Una volta che avete approntato la vostra pagina con tutte le sue dipendenze, mostrando al contempo lo stesso problema, incorporate le dipendenze una ad una.
Per esempio, cambiate questa marcatura:
<link rel="stylesheet" href="foo.css">
… in questa:
<style type="text/css"> /* contenuto di foo.css */ </style>
Ogni volta che fate questo, verificate di non aver interrotto alcun URI relativo e che la pagina mostri ancora il problema. Se la pagina cessa di mostrare il problema, o avete fatto un errore nell’inserimento dei file esterni oppure avete trovato un bug correlato al modo in cui era collegato un determinato file. Passate al file successivo.
FASE TRE: RIDURRE IL FILE DI TEST
Una volta che avete inserito quante più dipendenze possibili nel file di test, cominciate a ridurre il file.
Andate a metà del file. Cancellate tutto dalla metà fino alla fine ( senza preoccuparvi se il file è ancora valido o no). Verificate che l’errore ricorra ancora. Se l’errore non ricorre più, isolate la parte e rimuovete la metà superiore o una parte più piccola.
Continuate in questo modo finché non avrete rimosso quasi tutto il file e non siano rimaste 20 righe (o meno) di marcatura, o almeno la parte più piccola necessaria a riprodurre il problema.
Ora, cominciate a pensare. Guardate il file. Rimuovete quelle parti che non hanno chiaramente effetti sul bug. Per esempio se il bug consiste nel fatto che il testo “gli investimenti sono buoni” è rosso ma dovrebbe essere verde, sostituite il testo con la sola parola “test” e verificate che sia ancora del colore sbagliato.
Rimuovete tutti gli script. Se c’è bisogno degli script, provate a simulare quello che fanno gli script e quindi rimuoveteli. Per esempio, sostituite questo:
<script>document.write('<p>test<\/p>')</script>;
..con:
<p>test</p>
…e verificate che il bug sia ancora presente.
Unite insieme tutti i blocchi <style>.
Cambiate la marcatura presentazionale con i CSS. Per esempio, cambiate questo:
<font color="red">
…in:
span { color: red; } /* nel foglio di stile */
<span> <!-- nella marcatura -->
Fate lo stesso con gli attributi style="" (rimuovete gli attributi, ed inserite il codice in un blocco <style>).
Rimuovete tutte le classi, ed usate invece i nomi di elemento. Per esempio:
.a { color: red; }
.b { color: green; }
<div class="a"><p class="b">This should be green.</p></div>
…diventa:
div { color: red; }
p { color: green; }
<div><p>This should be green.</p></div>
Fate lo stesso con gli ID. Assicuratevi di usare un DOCTYPE strict:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
Rimuovete tutti gli elementi <meta>. Rimuovete tutti gli attributi lang e qualsiasi altra cosa non necessaria a mostrare il bug.
Se avete immagini, sostituitele con immagini molto semplici, ad esempio:
http://hixie.ch/resources/images/sample
Se uno script è necesssario, rimuovete quante più funzioni potete, unite insieme le funzioni e mettete il codice inline invece che nelle funzioni.
FASE QUATTRO: DARE AL TEST UN OVVIA CONDIZIONE DI SUPERAMENTO
La fase finale è garantire che il test possa essere usato rapidamente. Deve essere possibile osservare il test e determinare se è stato superato o no in circa 2 secondi.
Ci sono molti trucchi per farlo, che vengono trattati in altri documenti come le CSS2.1 Test Case Authoring Guidelines:
http://www.w3.org/Style/CSS/Test/guidelines.html
Assicuratevi che il vostro test mostri il fallimento anche se non è in esecuzione alcuno script. Assicuratevi che il test non appaia vuoto se fallisce.
Creare test case da zero
FASE UNO: TROVARE QUALCOSA DA TESTARE
- Leggete le specifiche.
- Leggetele di nuovo.
- Leggetele ancora, assicurandovi di averle lette fino all’ultimo atomo di lettura.
- Leggetele ancora una volta, questa volta verificando tutti i riferimenti incrociati.
- Leggete le specifiche in ordine casuale, assicurandovi di averne capito ogni singola parte.
- Ora trovate una parte che pensate sia stata implementata in modo errato.
- Trovate un modo di creare una pagina in modo che se il browser la visualizza corrrettamente la pagina appaia come se il test fosse stato superato, e se il browser la visualizza in modo errato, come se il test non fosse stato superato.
- Scrivete la pagina.
- Ora tornate alla fase quattro di cui sopra.
Articolo originale: http://hixie.ch/advocacy/writing-test-cases-for-web-browsers
Autore: Ian Hickson
Traduzione: Gabriele Romanato (3 gennaio 2008)
Ripulire il codice dei CSS con Dust-Me Selectors
Dust-Me Selectors è un’estensione di Firefox (dalla versione 1.5 in poi) che consente di ripulire il codice dei nostri CSS eliminando tutte le classi o gli attributi che non vengono utilizzati. Molte volte infatti quando realizziamo un nuovo progetto durante il suo sviluppo per svariati motivi ci troviamo ad avere un css che contiene classi che magari non sono mai state utilizzate oppure sono state cancellate, e questo con il passare del tempo e l’aggiunta di nuove implementazioni non fa altro che aumentare il peso e la complessità del css senza poi riuscire a capire nulla.
Proprio per ovviare a questo problema ci viene incontro questo plug-in che analizzando il foglio di stile della pagina web o dell’intero sito che si sta navigando segnalandoci le classi che non vengono utilizzare. I risultati di questa analisi vengono poi scritti su di un file CSV e possono essere incrociati con i risultati di altre pagine.
Via | KillerDesigner

























Back to top








Cellulare: (+39) 340-8652066
Mail:
WLM:
XHTML: Commenti Condizionali
marzo 2nd, 2009 by Simone D'Amico in: Mozilla Firefox, XHTML, browser, internet explorer | 4 Comments »
I commenti condizionali sono quei commenti utilizzati all’interno del codice per eseguirne porzioni in base al tipo di browser che si sta utilizzando. Questa tecnica è stata introdotta proprio per risolvere uno dei problemi che fin dagli arbori attanaglia tutti coloro che hanno a che fare con il web designing e quindi con il cross-browsing dei siti web.
Sul web si trovano migliaia di tecniche per riconoscere il browser con cui l’utente sta navigando; circa il 70% utilizzano script Javascript e quindi lo rendono inutilizzabile se l’utente naviga con Javascript disabilitato. Altre tecniche sono server-based e quindi è sufficiente far controllare al server il tipo di browser e regolarsi di conseguenza.
Continua a leggere »