Novinka
Contao 2.10: Na chyby prohlížeče můžete zapomenout

19.04.2011 18:31:48 počet komentářů: 0
Blížící se nová verze redakčního systému pro snadnou tvorbu webových stránek Contao 2.10 obsahuje velmi efektivní novou funkci, která vám umožní zapomenout na chyby CSS, podmíněné komentáře a také další formy rozpoznávání prohlížeče: k tagu body připojuje rozdílné třídy CSS, v závislosti na operačním systému a prohlížeči.
Vývojáři připouští, že tato myšlenka není zcela nová. Mnoho oblíbených modernizujících skriptů využívá CSS třídy ke zjišťování dostupnosti různých funkcí. Většina z nich však závisí na JavaScriptu a z toho důvodu není funkční v případě, že JavaScript nepracuje. V Contao je řešení ze 100 % založeno na PHP.
Stručný příklad
Předpokládejme, že používáte Internet Explorer 8 v systému Windows 7, pak bude váš tag body vypadat následovně:
<body class="win ie ie8">
V případě, že využíváte Firefox 4 v systému Mac OS X, podoba body tagu bude takováto:
<body class="mac firefox fx4">
Jestliže zobrazujete stránku na iPhone, body tag se ukáže takto:
<body class="iphone safari sf5 mobile">
První třída indikuje operační systém klienta (např. mac, win nebo unix) Druhá třída sestává z plného názvu prohlížeče (např. firefox, ie, chrome nebo safari), následovaného dvoupísmennou zkratkou s číslem verze (např. fx4, ie9, ch10 nebo sf5). Pokud klient používá mobilní prohlížeč, je doplněna ještě přídatná třída mobile.
Podporované operační systémy
Class | Mobile | |
Macintosh | mac | false |
Windows CE, Windows Phone | win-ce | true |
Windows | win | false |
iPad, iPhone, iPod Touch | ios | true |
Android | android | true |
Blackberry | blackberry | true |
Symbian | symbian | true |
WebOS | webos | true |
Linux, FreeBSD, OpenBSD, NetBSD | unix | false |
Podporované prohlížeče
Class | Shortcut | Example | |
Internet Explorer | ie | ie | ie9 |
Firefox | firefox | fx | fx4 |
Chrome | chrome | ch | ch10 |
OmniWeb | omniweb | ow | ow5 |
Safari | safari | sf | sf5 |
Opera Mini | opera-mini | oi | oi6 |
Opera Mobile | opera-mobile | om | om11 |
Opera | opera | op | op10 |
IEMobile | ie-mobile | im | im6 |
Camino | camino | cm | cm2 |
Konqueror | konqueror | ko | ko4 |
Novou funkci můžete samozřejmě využívat i v uživatelském rozšíření. Metoda byla dále přiřazena také ke třídě Environmental class jako $this->Environment->agent. Navrací objekt s následující informací:
$this->import('Environment');
$ua = $this->Environment->agent;
echo $ua->os; // Operating system
echo $ua->browser; // Browser name
echo $ua->shorty; // Browser shortcut
echo $ua->version; // Browser major version
echo $ua->mobile; // True if the client is a mobile browser
echo $ua->class; // The CSS classes string
Přidat komentář